Gradient Boosting Machine,梯度提升机
GBM 是一整类算法的框架,核心是面向函数的梯度下降,我的理解是对残差的梯度下降。
GBM 框架下的算法:
思想
- 迭代,用相同的算法和数据,经过多轮迭代 M,最终让模型收敛在最优化的位置
- 累积模型:一个数学归纳法思想。初始化一个基础模型,在每一轮对基础模型做迭代修正。
- 残差:每一轮的迭代生成一个残差。
- 弱学习器:对每一轮生成的残差做一个梯度下降的拟合,使得残差变得更小。
- 最终结果:累积模型=初始化的基础模型+各个迭代的弱学习器,累积模型拟合训练数据。
公式表示
source: 【机器学习】梯度提升机GBM详解 - 知乎
累积模型:
- 表示 k 轮迭代的累积模型
- 表示弱学习器对训练数据的输出值
- 表示每一轮迭代对残差的拟合
负梯度方向的梯度下降求导:
最终获得的结果:
- 表示学习率
- F(x) 最终训练得到的模型,是基础模型+弱学习器的整合
算法过程
- 初始条件:计算初始的最小化损失函数参数
- 算法过程:计算负梯度 ,然后计算积累模型。
- 目标是损失函数最小化:这里用的是 平方损失,成为 L2Boosting