博客
关于我
GBDT和随机森林的区别
阅读量:646 次
发布时间:2019-03-15

本文共 868 字,大约阅读时间需要 2 分钟。

随机森林与GBDT的对比及其工作原理

随机森林是一种集成学习方法,它的核心概念来源于袋装法(Bagging)。与传统的袋装法不同,随机森林在抽样属性时引入了随机性,形成了一种更为强大的模型组合方法。具体来说,假设输入数据的属性总数为d,随机森林会独立地从这些属性中选择k个进行模型训练。这一点在k等于所有属性数d时,效果与单独使用全部属性相当。而当k=1时,随机森林会只针对单个属性进行训练,这种方法通常在k=log2(d)时表现最佳。

随机森林的基学习器通常采用决策树算法或神经网络等模型。作为一种改进版的袋装法,随机森林通过多次训练不同的模型,利用不同模型之间的差异性来提升泛化能力。这种差异性使得最终的预测结果具有较强的泛化性能。

与随机森林形成对比的是梯度提升树(Gradient Boosting Decision Trees,GBDT)。GBDT属于另一种著名的集成学习方法,属于集成的另一种形式-Boosting算法。其工作原理如下:首先从训练集上训练一个基学习器(Base Learner),然后根据基学习器的表现,对训练样本的权重进行调整。错误的样本(基学习器预测值与实际值不符的样本)获得更高的权重,从而在后续迭代中被赋予更多的训练资源。随着迭代次数的增加,最终目标是训练出T个基学习器,将它们以一定的权重结合,得到最终的预测结果。

与传统的Boosting算法相比,GBDT的每次迭代并非简单地对权重加以调整,而是针对每一步模型预测中残差(Loss)的梯度方向进行改进。新的模型被设计为能更有效地减少之前模型的残差,这与最小二乘法中通过梯度下降来最小化损失函数的思想相似。在实际应用中,GBDT通过不断地修正预测模型的残差,逐步提升模型性能。

GBDT的优势在于其强大的模型组合能力。尽管其理论复杂度较高,但在实际应用中表现出的泛化能力和预测精度往往能够较之随机森林更好地适应数据的复杂性。不过,随机森林由于其采用有放回的抽样方法,模型更加简单,每个基模型的训练也相对快捷,这使得其在某些场景下同样具有有优势地位。

转载地址:http://mbxlz.baihongyu.com/

你可能感兴趣的文章
Python Panda TIME 系列重新采样
查看>>
python pandas TimeStamps到夏令时的本地时间字符串
查看>>
Python pandas 数据清洗与数据绘图实战
查看>>
Python输出信息
查看>>
Python Pandas 用顶行替换标题
查看>>
Python pandas 通过 dt 访问器有效地将日期时间转换为时间戳
查看>>
Python Pandas-从DataFrame按类别绘制多个条形图
查看>>
Python Pandas:每月或每周拆分 TimeSerie
查看>>
python pandas中融化的对面
查看>>
python pandas从时间序列中提取唯一日期
查看>>
python pandas库详解_Pandas 库的详解和使用补充
查看>>
Python Pandas滚动聚合一列列表
查看>>
python pandas相关知识点(练习)
查看>>
Python Pandas,从.groupby().Apply()中的GROUP中分割行
查看>>
Python pathlib模块详解:优雅处理文件路径
查看>>
python Path模块的使用 glob iglob name
查看>>
python pickle 模块的使用
查看>>
Python PIL/Pillow-Pad图像至所需大小(例如,A4)
查看>>
python PIL模框使用
查看>>
Python ping 模块
查看>>