scikit中的RandomForestClassifier与ExtraTreesClassifier学习


94

谁能解释scikit learning中RandomForestClassifier和ExtraTreesClassifier之间的区别。我花了很多时间阅读本文:

P. Geurts,D。Ernst。和L. Wehenkel,“极随机树”,Machine Learning,63(1),3-42,2006

看来这些是ET的区别:

1)在拆分时选择变量时,将从整个训练集中抽取样本,而不是从训练集中的引导样本中抽取样本。

2)每次从样本中的值范围中完全随机选择分割。

这两件事的结果是更多的“叶子”。


6
我对extratreeclassifier如此感兴趣的原因是,在特定问题上,使用ET可以获得更好的结果。我的特征向量大于200个大变量,并且这些变量非常嘈杂。标准RDF分类器的结果糟透了,但ET的F1分数> 90%。班级不平衡,有相对较少的阳性班级样本和许多阴性项目。
denson 2014年

Answers:


56

是的,尽管scikit-learn中的Random Forest实现使启用或禁用引导程序重采样成为可能,但两个结论都是正确的。

实际上,RF通常比ET更紧凑。从计算的角度来看,ET通常较便宜,但会变得更大。ET有时可以比RF更好地进行泛化,但是如果不先尝试(和调整n_estimatorsmax_features以及min_samples_split通过交叉验证的网格搜索),很难猜测是什么情况。


21

ExtraTrees分类器始终测试部分特征的随机分割(与RandomForest相反,后者测试部分特征的所有可能分割)


13
我很高兴这个评论从字面上是对Coursera测验问题的逐字回答
鲍勃

是的,@ Bob。我觉得这个答案非常有用,这就是我在这里发布的原因,它有助于其他人理解额外树和随机森林之间的区别。
穆罕默德·乌马尔·阿马纳特

3
也来自同一课程。这个答案很有帮助!
killezio

是的@ skeller88,这是很棒的课程。您还应该查看此coursera.org/learn/competitive-data-science?specialization=aml
Muhammad Umar Amanat

0

随机森林和多余树木(通常称为极端随机森林)之间的主要区别在于,对于所考虑的每个特征,不是选择计算局部最优特征/分割组合(针对随机森林),而是为所考虑的每个特征选择一个随机值用于拆分(用于额外的树)。这是一个很好的资源,可以更详细地了解它们之间的差异。随机森林与多余树。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.