【发布时间】:2015-04-24 07:42:24
【问题描述】:
我用我的数据创建了一个random forest:
fit=randomForest(churn~., data=data_churn[3:17], ntree=1,
importance=TRUE, proximity=TRUE)
我可以很容易地看到我的confusion matrix:
conf <- fit$confusion
> conf
No Yes class.error
No 945 80 0.07804878
Yes 84 101 0.45405405
现在我需要知道随机森林的准确性。我四处搜索并意识到caret 库有一个confusionMatrix 方法,它获取混淆矩阵并返回准确性(以及许多其他值)。但是,该方法需要另一个名为"reference" 的参数。我的问题是如何为获得随机森林准确性的方法提供参考?
而且......这是获得随机森林准确性的正确方法吗?
【问题讨论】:
-
如果您只是在命令提示符下键入
fit,则会打印出混淆矩阵和袋外 (OOB) 错误。 OOB 误差是总体分类误差。您还可以根据混淆矩阵计算 OOB 误差。在您的情况下,它是 164/1210(错误分类的观察次数与观察总数的比值)。然而,如果你真的想知道你的模型有多好,你应该有单独的训练数据来创建模型和测试数据(在模型构建过程中没有使用)来检查模型的性能。 -
@eipi10 谢谢!所以我假设准确度是 1-OOB 错误。我说的对吗?
-
是的。没错。
-
仅供参考 你知道选择
ntree=1只会得到一棵rpart 树,而不是森林吗? -
@smci 是的。谢谢你的评论。我会改变正在执行的树的数量。
标签: r random-forest confusion-matrix