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 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章
R语言构建xgboost模型:使用GPU加速xgboost模型构建