xgboost、extratreeclassifier 和 randomforrestclasiffier 有啥区别?

Posted

技术标签:

【中文标题】xgboost、extratreeclassifier 和 randomforrestclasiffier 有啥区别?【英文标题】:What is the difference between xgboost, extratreeclassifier, and randomforrestclasiffier?xgboost、extratreeclassifier 和 randomforrestclasiffier 有什么区别? 【发布时间】:2016-05-16 04:35:32 【问题描述】:

我对所有这些方法都是新手,我正在尝试对此进行简单的回答,或者也许有人可以指导我在网络上的某个地方进行高级解释。我的谷歌搜索只返回了 kaggle 示例代码。

extratree 和 randomforrest 本质上是一样的吗? xgboost 在为任何特定树选择特征时使用提升,即对特征进行采样。但是那么其他两种算法是如何选择特征的呢?

谢谢!

【问题讨论】:

【参考方案1】:

额外树(ET)又名。 极其随机的树随机森林(RF)非常相似。这两种方法都是聚合一些完全生长的决策树的 bagging 方法。 RF 只会尝试拆分,例如三分之一的功能,但评估这些功能中任何可能的断点并选择最好的。但是,ET 只会评估随机的几个断点并从中挑选出最好的断点。 ET 可以将样本引导到每棵树或使用所有样本。 RF 必须使用引导程序才能正常工作。

xgboost 是梯度提升的一种实现,可以与决策树(典型的较小树)一起使用。训练每棵树以纠正先前训练的树的残差。梯度提升可能更难训练,但可以实现比 RF 更低的模型偏差。对于嘈杂的数据,装袋可能是最有前途的。对于低噪声和复杂的数据结构,提升可能是最有希望的。

【讨论】:

以上是关于xgboost、extratreeclassifier 和 randomforrestclasiffier 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

04-09 XgBoost算法

R语言构建xgboost模型:使用GPU加速xgboost模型构建

XGBoost原理

xgboost需不需要特征挑选

R语言构建xgboost模型:使用xgboost构建泊松回归(poisson regression)模型

XgBoost的总结