前面的博文中我们一起看了提升树,这一篇中我们正式来理解GBDT。理解GBDT算法关键是GB,也就是梯度提升(Gradient Boosting),那么这个和我们之前的提升树又有什么不一样呢?
梯度提升
之前介绍的提升树是用加法模型和向前分步算法实现学习的优化过程,其中误差函数也就是损失函数一般是平方损失和指数损失函数的时候,每一步优化比较简单,但是对于一般的损失函数来说,每一步优化就并不是那么容易。针对这个问题,梯度提升算法横空出世,其关键就是利用损失函数的负梯度在当前模型中的值:

首先之前讲的提升树和这里的GBDT其实是没有很大区别,GBDT也是加法模型也是向前分步的优化过程,如何加入下一棵树,都是建立在最小化误差的基础,GBDT不过是在最小化误差的的时候换了一个损失函数,它不是计算当前模型拟合训练样本的误差,而是计算这个误差函数的负梯度。比如在回归任务中,我们一般使用平方误差作为损失函数:,这个时候我们对
求导数,得到:

本文深入探讨GBDT(梯度提升决策树)算法,重点在于其与提升树的区别和梯度提升的概念。通过负梯度最小化误差,GBDT在回归任务中使用平方误差损失函数,并通过迭代构建回归树来逐步优化模型。文章介绍了GBDT的详细步骤,包括初始化、计算残差、拟合回归树和更新模型。尽管GBDT与传统提升树在计算残差上有差异,但整体思路相似。
最低0.47元/天 解锁文章
364

被折叠的 条评论
为什么被折叠?



