1

在检查我的模型的统计数据时,看起来 中的数字与 in 中的数字confusion matrix不一致。 OOB error raterandomForest

如何从混淆矩阵中推导出 OOB 错误率?他们之间是什么关系?

在下面的示例中,我打印了两个模型的输出,一个适合分层抽样(使用 中的样本子集sampsize),另一个不适合(即使用默认抽样方案,我认为它使用所有样本) .

                        在此处输入图像描述

我没有公开数据,但这里是函数调用:

sumY = summary(Y)
sampsize <- c(sumY["Y0"]/10, sumY["Y1"])

# First model in the image above
strat.rf.model <- randomForest(x=X,y=Y,sampsize=sampsize, strata=Y)

# Second model in the image above    
rf.model <- randomForest(x=X,y=Y)
4

1 回答 1

11

这不是不一致的,它只是算术:

> 180 / (1699 + 180)
[1] 0.09579564
> 63 / (63 + 58)
[1] 0.5206612
> (180 + 63) / (1699 + 180 + 63 + 58)
[1] 0.1215

每个类中的错误率定义为该类中错误分类的观察值的比例,而总体错误分类率是整个数据集的错误分类观察值的比例。

每个类的错误率很少与整体错误率完全匹配。如果你停下来想一想,这是完全有道理的:有些类将比其他类更难识别,然后总体错误率是某种“平均”。

于 2013-02-13T23:46:53.970 回答