博客
关于我
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/

你可能感兴趣的文章
npm安装教程
查看>>
npm报错Cannot find module ‘webpack‘ Require stack
查看>>
npm报错Failed at the node-sass@4.14.1 postinstall script
查看>>
npm报错File to import not found or unreadable: @/assets/styles/global.scss.
查看>>
npm报错unable to access ‘https://github.com/sohee-lee7/Squire.git/‘
查看>>
npm版本过高问题
查看>>
npm的“--force“和“--legacy-peer-deps“参数
查看>>
npm的安装和更新---npm工作笔记002
查看>>
npm的常用配置项---npm工作笔记004
查看>>
npm的问题:config global `--global`, `--local` are deprecated. Use `--location=global` instead 的解决办法
查看>>
npm编译报错You may need an additional loader to handle the result of these loaders
查看>>
npm设置淘宝镜像、升级等
查看>>
npm设置源地址,npm官方地址
查看>>
npm配置安装最新淘宝镜像,旧镜像会errror
查看>>
NPM酷库052:sax,按流解析XML
查看>>
npm错误 gyp错误 vs版本不对 msvs_version不兼容
查看>>
npm错误Error: Cannot find module ‘postcss-loader‘
查看>>
npm,yarn,cnpm 的区别
查看>>
NPOI之Excel——合并单元格、设置样式、输入公式
查看>>
NPOI初级教程
查看>>