随机森林和极端随机树之间的区别


38

我了解到,随机森林树和极随机树在意义上是不同的,即随机森林中的树的分割是确定性的,而对于极随机树则它们是随机的(更准确地说,下一个分割是最佳分割在当前树的所选变量中的随机均匀拆分中)。但是我不完全理解这种不同拆分在各种情况下的影响。

  • 他们如何比较偏差/方差?
  • 如果存在不相关的变量,它们如何比较?
  • 在存在相关变量的情况下如何比较?

2
(a)ERT有时会因最佳分割次数较少而更加有偏见/ ERT有时会由于树的进一步去相关而减少方差;(b)我猜也是一样,不确定;(c)我猜也是一样,不确定。另外:由于随机变量采样,我不会将RF确定性拆分称为“确定性拆分”,并且由于自举,树当然也不是。
Soren Havelund Welling

什么是uniform split
octavian

Answers:


27

额外(随机化)树(ET)文章包含偏差方差分析。在第16页上,您可以看到多种方法的比较,包括六项测试(树分类和三项回归)的RF。

两种方法大致相同,但当有大量的噪波特征(在高维数据集中)时,ET会更差一些。

就是说,只要(也许是手动的)特征选择接近最佳,性能就差不多,但是,ET的计算速度会更快。

从文章本身来看:

对算法的分析以及对多个测试问题变体的K最优值的确定表明,该值原则上取决于问题的具体情况,尤其是无关属性的比例。偏差/方差分析表明,额外树通过减小方差而同时 增加偏差来工作。当随机化程度增加到最佳水平以上时,方差会略有减少,而偏差通常会明显增加。

一如既往,没有银弹。


Pierre Geurts,Damien Ernst,Louis Wehenke。“非常随机的树”


2
当存在大量噪声特征时,关于ET的任何参考文献(无论是经验还是理论)都会变得更糟?还是基于经验?
ramhiser

1
以我的经验,事实恰恰相反:Extra-Trees在许多嘈杂的功能上做得更好。需要注意的是,您必须拥有一个大森林(许多估计器,sklearn中的n_estimators个),并调整每次拆分时考虑的要素数量(sklearn中的max_features),此功能才能起作用。单个Extra-Tree会比单个随机林树过度拟合,但如果您有许多Extra-Tree,则它们往往会以不同的方式过度拟合而不是过度拟合。最多可以估算3000个估算值。
丹森

3

答案是,这取决于。我建议您在问题上同时尝试随机森林和多余的树木。尝试大型森林(1000-3000棵树/估计量,sklearn中的n_estimators个)并调整每个分割处考虑的特征数量(sklearn中的max_features)以及每个分割的最小样本数(sklearn中的min_samples_split)和最大树深度( sklearn中的max_depth)。也就是说,您应该记住,过度调整可能是过度拟合的一种形式。

这是我亲自处理的两个问题,在这些情况下,多余的树在非常嘈杂的数据中被证明是有用的:

大型噪声海底特征集的机器学习分类决策森林

使用粘贴的样本进行有效的分布式蛋白质异常预测


2

非常感谢您的回答!当我仍然有疑问时,我进行了一些数值模拟,以对这两种方法的行为有更多的了解。

  • 在存在嘈杂功能的情况下,多余的树似乎可以保持较高的性能。

下图显示了将与目标无关的随机列添加到数据集时的性能(通过交叉验证进行评估)。目标只是前三列的线性组合。 存在不相关变量的随机森林与多余树木

  • 当所有变量都相关时,两种方法似乎都能达到相同的性能,

  • 多余的树似乎比随机森林快三倍(至少在scikit学习实现中)

资料来源

链接至全文:随机森林与多余树木

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.