当检查我的模型的统计,它看起来像数字在confusion matrix不与那些一致OOB error rate的randomForest.
如何从混淆矩阵中推导出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)
Run Code Online (Sandbox Code Playgroud)
jor*_*ran 11
这不是不一致的,只是算术:
> 180 / (1699 + 180)
[1] 0.09579564
> 63 / (63 + 58)
[1] 0.5206612
> (180 + 63) / (1699 + 180 + 63 + 58)
[1] 0.1215
Run Code Online (Sandbox Code Playgroud)
每个类别中的错误率被定义为该类别中错误分类的观察的比例,而整体错误分类率是整个数据集的错误分类观察的比例.
每个类的错误率很少与整体错误率完全匹配.如果你停下来思考它一秒钟,这是完全合理的:有些类比其他类更难识别,然后整体错误率就像是"平均".