GBDT 梯度提升树(一)基本原理

GBDT 由一个初始策略 + 多个决策树组成,每个决策树叫做弱决策树或者弱学习器,整体叫做强学习器。

1. 预测过程

  • 初始输出:给出一个固定常数作为预测起点(训练后确定)
  • 修正输出:使用训练好的每棵树得到对应的预测修正值(每个输出需要乘以学习率)
  • 累加输出:将初始输出与所有树的输出累加得到最终预测

如果没有学习率,单棵树的输出可能过大,一旦这棵树受到噪声影响,其错误也会影响到到最终预测,导致整体结果偏差很大。加入学习率后,可以控制每棵树对最终结果的影响,即使当前树有偏差,也不会让最终预测产生过大的错误。

学习率让削弱了单棵树的纠错力度,却显著提升了模型的稳定性与鲁棒性。虽然需要更多的树(例如原本 10 棵树能完成的任务,学习率为 0.1 时可能需要 100 棵树),但这种以稳取准的策略能有效抵抗噪声和异常样本的干扰。

2. 训练过程

模型先由初始预测(基准值)开始,之后每棵树依次拟合前一阶段的预测差距,逐步修正已有模型的偏差,直到达到预设的树数量或模型性能不再提升时停止训练。

假设:两个样本,真实值分别是 86 和 98,学习率 0.1,我们模拟下训练过程:


模型训练的起点是初始预测(基准值),该值并非随机设定,而是由选定的损失函数推导得出。其核心目的是为后续迭代优化提供一个基础参照,尽可能降低初始偏差。例如在平方损失函数场景下,初始预测值会直接取所有样本标签的均值 , 这一选择本质是最小化平方损失的最优解,能让模型从一个相对合理的基准状态启动训练。


每一棵新树训练时拟合的残差,并不是简单真实值和预测值的差值,而是损失函数对预测值的负梯度,数学上表示损失函数最小化的优化方向。

比如:第一棵树拟合的 -11、11 就是损失函数对初始预测的负梯度

  • -11 表示第一个样本需要向着负方向再减少11,才能达到目标值
  • 11 表示第一个样本需要向着正方向再增加11,才能达到目标值

我们总结几点:

  1. 训练模式:模型以串行方式训练多棵决策树,即只有当前一棵树训练完成后,下一棵树才能开始训练
  2. 拟合目标:每棵新树都不是直接去拟合真实值,而是拟合前序模型的负梯度。
  3. 核心逻辑:模型通过逐棵树不断修正预测误差,使整体预测逐步逼近真实目标。
  4. 需要注意:随着树的增多,模型会越来越贴合训练数据,可能会导致过拟合。

注意:无论 GBDT 用于回归还是分类,由于拟合目标都是负梯度(连续值),所以弱学习器都是回归决策树。