随机森林 VS 梯度提升机——模型融合之我见

简介: 本文节选自Quora社区上“When would one use Random Forests over Gradient Boosted Machines (GBMs)?”问题的回答,几位博主就随机森林(Random Forests)与梯度提升机(Gradient Boosted Machines, GBMs)的适合场景以及优缺点展开了讨论。

更多深度文章,请关注:https://yq.aliyun.com/cloud


博主信息:Xavier Amatriain, 前机器学习领域研究员,如今就职于Quora。

随机森林相比于梯度提升决策树,主要有以下两个优点:

  1. 随机森林比梯度提升机更容易训练
  2. 随机森林比梯度提升机更难过拟合

对于第一点来说,随机森林通常只需要设置一个超参数即可:每个节点上随机选取的特征数量。在大多数情况下,将该参数设置为特征总数的平方根,模型足以取得不错的效果。而梯度提升机的超参数则包括提升树的数量和深度、学习率等等。

对于第二点,尽管我们称随机森林不会过拟合是不准确的,但是,随机森林的抗干扰性强,更不容易出现过拟合的情况。

在某种意义上讲,随机森林是一棵比梯度提升机更加灵活的集成树。但在一般情况下,经过良好训练的梯度提升机的性能往往优于随机森林。

此外,正如陈天奇(第二位博主)所提到的,随机森林往往更容易并行化。但是考虑到借助于一些高效方法,梯度提升机同样也能实现并行化训练,这算不上是随机森林的一个优势。

参考资料:

《Influence of Hyperparameters on Random Forest Accuracy》
随机森林——分类描述


博主信息:Tianqi Chen, 大规模机器学习领域博士

实际上,如果你一定要在两种方法中做出选择,参数经过精心调整的提升树的效果通常优于随机森林。主要原因在于训练目标的不同,提升树通过引入新的决策树来完善当前模型。我们往往可以使用较少的决策树就能够取得较高的准确率。

话虽如此,随机森林中二次取样和Bagging的思路同样也很重要。我们可以把这些思想纳入提升树的训练阶段,这有助于模型性能的进一步提升。

之前提到随机森林时,人们都会说随机森林更容易并行化,但是并行化的实现方法对提升树同样适用。提升树完全可以以分布式的形式高效地实现。我们在dmlc/xgboost中做到了这一点,XGBoost的性能非常优秀。

提升树的另一个优势在于模型本身,由于提升树是在最优化目标函数的过程中导出的,从本质上讲,它可以用于解决几乎所有能够求导的优化目标。这包括排名、泊松回归等等,在这一方面,随机森林则很难实现。我们有一个教程讨论了这一观点:提升树导论


博主信息:Waleed Kadous,机器学习与人工智能博士

不同的机器学习场景具有各自不同的特点。Boosting算法对噪声异常敏感,从偏差与方差间的权衡来看,如果数据是嘈杂的,Boosting算法可能会呈现出较高的模型方差。然而在其他情况下,Boosting算法往往能够取得较好的效果。

在另一方面,考虑到随机森林采用的模型融合方法与GBM不同,并不基于模型残差来构建集成模型,随机森林往往能够取得非常低的模型方差。

简而言之,你对两类算法的选择取决于你的应用场景,当你希望降低模型方差时,随机森林会是不错的选择;当你希望降低模型偏差时,GBM是不二之选。


博主信息:Eren Golge,AI研究员

二者的区别主要在于两个方面:算法上的区别以及实际应用时的效果差异。

在算法层面,随机森林通过对数据集进行随机采样来构建训练样本(在有些场景下,甚至还会对数据特征进行随机选择,仅使用部分特征进行训练),其认为随机化有利于模型在测试集上取得更好的泛化性能。

对于梯度提升树来说,假设最终模型是单棵决策树预测值的加权和,梯度提升树算法还会根据训练数据寻找所有决策树最优的线性组合。这种额外的调整或许可以理解为两类算法的差异。但需要注意的是,这些算法都有许多变种算法,在具体设计上可能存在一些相似的地方。

在应用层面,考虑到梯度提升树会根据观测值,对预测结果进行调整,其更容易受到噪声点的影响,进而导致梯度提升树更可能出现过拟合的情况。与此相反,随机森林对过拟合现象则具有更强的抗性。

因此,对这两类算法的选择取决于你当前的应用场景。


博主信息:Tong Zh,统计学博士

这两类算法间存在一个本质的区别,可能会迫使你放弃GBM,转而选择随机森林:由于各棵决策树的训练互不影响,随机森林能够轻松地部署在分布式环境中,而梯度提升树只能以序列化的方式训练。 因此,如果实验资源受数据规模或实验次数的限制,你可能不得不使用随机森林。

如果实验资源不受限,我个人更倾向使用GBM。我的观点和增强学习的思想不谋而合,这就好比你准备考试,完成一门测试之后,你肯定会花一些时间检查自己犯下的错误,而不是匆忙地准备下一场考试。

话虽如此,在真实环境下,我们还是经常会受到数据规模的限制,同样是训练2000棵决策树,随机森林要比GBM容易训练得多。


本文由北邮@爱可可-爱生活老师推荐,@阿里云云栖社区组织翻译。

文章原标题《When would one use Random Forests over Gradient Boosted Machines (GBMs)?》,译者:6816816151,审阅:

文章为简译,更为详细的内容,请查看原文,附件为原文完整截图

相关文章
|
2月前
|
算法 计算机视觉
YOLOv8改进 | 损失函数篇 | 最新ShapeIoU、InnerShapeIoU损失助力细节涨点
YOLOv8改进 | 损失函数篇 | 最新ShapeIoU、InnerShapeIoU损失助力细节涨点
89 2
|
2月前
|
机器学习/深度学习 计算机视觉
YOLOv8改进 | 损失函数篇 | SlideLoss、FocalLoss分类损失函数助力细节涨点(全网最全)
YOLOv8改进 | 损失函数篇 | SlideLoss、FocalLoss分类损失函数助力细节涨点(全网最全)
144 0
|
2月前
|
机器学习/深度学习 计算机视觉
YOLOv5改进 | 损失函数篇 | SlideLoss、VFLoss分类损失函数助力细节涨点(全网最全)
YOLOv5改进 | 损失函数篇 | SlideLoss、VFLoss分类损失函数助力细节涨点(全网最全)
127 0
|
4月前
|
机器学习/深度学习
RBF神经网络案例——客户流失率预测(二)
RBF神经网络案例——客户流失率预测
|
4月前
|
机器学习/深度学习
RBF神经网络案例——客户流失率预测(一)
RBF神经网络案例——客户流失率预测
|
9月前
|
机器学习/深度学习 数据可视化 索引
斯坦福训练Transformer替代模型:1.7亿参数,能除偏、可控可解释性强
斯坦福训练Transformer替代模型:1.7亿参数,能除偏、可控可解释性强
112 2
|
11月前
|
机器学习/深度学习 算法
瞎聊机器学习——朴素贝叶斯以及拉普拉斯平滑
瞎聊机器学习——朴素贝叶斯以及拉普拉斯平滑
|
11月前
|
机器学习/深度学习 人工智能
做时间序列预测有必要用深度学习吗?事实证明,梯度提升回归树媲美甚至超越多个DNN模型
做时间序列预测有必要用深度学习吗?事实证明,梯度提升回归树媲美甚至超越多个DNN模型
188 0
|
11月前
|
机器学习/深度学习 人工智能 算法
Focal Loss 后继之秀 | LMFLOSS:用于解决不平衡医学图像分类的新型混合损失函数
Focal Loss 后继之秀 | LMFLOSS:用于解决不平衡医学图像分类的新型混合损失函数
223 0
|
机器学习/深度学习 算法 测试技术
机器学习实战︱基于多层感知机模型和随机森林模型的某地房价预测
在现实生活中,除了分类问题外,也存在很多需要预测出具体值的回归问题,例如年龄预测、房价预测、股价预测等。相比分类问题而言,回归问题输出类型为一个连续值,如下表所示为两者的区别。在本文中,将完成房价预测这一回归问题。
361 0
机器学习实战︱基于多层感知机模型和随机森林模型的某地房价预测