【发布时间】:2019-03-14 16:38:12
【问题描述】:
在 python 的 sklearn 中的 RandomForestClassifier 中包含 oob_Score =True 和不包含 oob_score 有什么区别。袋外 (OOB) 误差是使用不包含在它们各自的引导样本正确的树的预测计算的每个计算的平均误差,因此包含参数 oob_score= True 对平均误差的计算有何影响。
【问题讨论】:
标签: scikit-learn random-forest
在 python 的 sklearn 中的 RandomForestClassifier 中包含 oob_Score =True 和不包含 oob_score 有什么区别。袋外 (OOB) 误差是使用不包含在它们各自的引导样本正确的树的预测计算的每个计算的平均误差,因此包含参数 oob_score= True 对平均误差的计算有何影响。
【问题讨论】:
标签: scikit-learn random-forest
对于每棵树,只选择一部分数据来构建树,即训练。其余样本是袋外样本。这些袋外样本可以在训练期间直接用于计算测试准确度。如果您激活该选项,将计算“oob_score_”和“oob_prediction_”。
无论您是否激活该选项,训练模型都不会改变。显然,由于 RF 的随机性,如果你应用两次,模型将不会完全相同,但它与“oob_score”选项无关。 不幸的是,scikit-learn 选项不允许您设置 OOB 比率,即用于构建树的样本百分比。在其他库中就是这种情况(例如 C++ Shark http://image.diku.dk/shark/sphinx_pages/build/html/rest_sources/tutorials/algorithms/rf.html)。
【讨论】: