任何人都可以解释scikit中的RandomForestClassifier和ExtraTreesClassifier之间的区别。我花了很多时间阅读论文:
P上。 Geurts,D.Ernst。和L. Wehenkel,“极度随机树”,机器学习,63(1),3-42,2006
看来这些是ET的区别:
1)在拆分中选择变量时,将从整个训练集中抽取样本,而不是训练集的自举样本。
2)从每个分裂的样品中的值范围中完全随机选择分裂。
这两件事的结果是更多的“叶子”。
答案 0 :(得分:53)
是的,两个结论都是正确的,尽管scikit-learn中的Random Forest实现可以启用或禁用引导程序重采样。
在实践中,RF通常比ET更紧凑。从计算的角度来看,ET通常更便宜,但可以变得更大。 ET有时可以比RF更好地推广,但是如果没有先尝试两者(并且通过交叉调整n_estimators
,max_features
和min_samples_split
,很难猜测它是什么情况 - 经过验证的网格搜索)。
答案 1 :(得分:12)
ExtraTrees分类器总是测试特征部分的随机分割(与RandomForest相比,后者测试所有可能的特征分裂)
答案 2 :(得分:0)
随机森林与多余树木(通常称为极度随机森林)之间的主要区别在于,对于所考虑的每个要素,不是随机计算局部最优特征/分割组合(针对随机森林),而是随机为拆分选择值(对于多余的树)。这是一个很好的资源,可以更详细地了解它们的区别。随机森林与多余树。