GBDT 是一种 Boosting算法,Boosting是集成算法的一种。
首先我们需要知道什么是集成学习?
集成学习是通过训练弱干个弱学习器,并通过一定的结合策略,从而形成一个强学习器。
整个过程有两个难点:
- 如何得到若干个个体学习器
- 如何选择一种结合策略
先来看第一个问题如何获取个体学习器,在选择上有两个:
- 同质学习器,例如随机森林都使用cart树
- 异质学习器,例如使用不同的分类器,最终采取投票的方式
其中用的比较多的是同质学习器。同质学习器按照个体学习器之间是否存在依赖关系可以分为两类:
- 第一个是个体学习器之间存在强依赖关系,一系列个体学习器基本都需要串行生成,代表算法是boosting系列算法;
- 第二个是个体学习器之间不存在强依赖关系,一系列个体学习器可以并行生成,代表算法是bagging和随机森林(Random Forest)系列算法。
简单来说,Boosting就是通过集成一系列有强依赖关系的弱学习器从而形成强学习器的方法。
DT-Decision Tree决策树,GB是Gradient Boosting,是一种学习策略,GBDT的含义就是用Gradient Boosting的策略训练出来的DT模型。模型的结果是一组回归分类树组合(CART Tree Ensemble):。其中
学习的是之前
棵树预测结果的残差,通过学习残差由弱学习器集成强学习器。
GBDT原理及实现(XGBoost+LightGBM)
GBDT的原理和应用

gbdt的残差为什么用负梯度代替? - 奥奥奥奥噢利的回答 - 知乎
https://www.zhihu.com/question/63560633/answer/581670747


无论损失函数是什么形式,决策树拟合的都是负梯度,不是用负梯度代替残差。只是当损失函数是均方误差时,负梯度刚好是残差。
Boosting
boosting 3大算法总结
第06章:深入浅出ML之Boosting家族
机器学习:集成学习算法Bagging,Boosting
网友评论