在 R 中使用随机森林预测的不同结果
Posted
技术标签:
【中文标题】在 R 中使用随机森林预测的不同结果【英文标题】:Different results using Random Forest prediction in R 【发布时间】:2017-06-09 07:58:02 【问题描述】:当我在我的测试数据上运行随机森林模型时,对于相同的数据集 + 模型,我会得到不同的结果。
以下是您可以看到第一列差异的结果:
> table((predict(rfModelsL[[1]],newdata = a)) ,a$earlyR)
FALSE TRUE
FALSE 14 7
TRUE 13 66
> table((predict(rfModelsL[[1]],newdata = a)) ,a$earlyR)
FALSE TRUE
FALSE 15 7
TRUE 12 66
虽然差异非常小,但我试图了解造成这种情况的原因。我猜predict
有“灵活”的分类阈值,尽管我在文档中找不到;我对吗?
提前谢谢你
【问题讨论】:
请仔细阅读软件包randomForest
的文档。它完美地解释了为什么这是记录在案的行为。您的 randomForest 是一组树,每次运行模型时,您都会得到一组略有不同的树。这与预测函数无关,这只是随机森林的工作方式。其次,关于统计技术的问题属于 stats.stackexchange.com,而不是 ***。
【参考方案1】:
我假设您没有在此处重新调整模型,但产生这些结果的只是 predict
调用。答案大概是这样的,来自?predict.randomForest
:
任何关系都是随机断开的,因此如果不希望出现这种情况,请通过以下方式避免它 在 randomForest() 中使用奇数 ntree
【讨论】:
以上是关于在 R 中使用随机森林预测的不同结果的主要内容,如果未能解决你的问题,请参考以下文章