GBDT-沿着梯度提升的决策树
2016-11-01 11:17
232 查看
注:本文中所有公式和思路来自于李航博士的《统计学习方法》一书,我只是为了加深记忆和理解写的本文。
在上一篇文章中,介绍了基于残差的提升树,采用加法模型和前向分布算法,损失函数为平方损失,优化过程比较容易,但对于一般的损失函数,可能不会这么容易,因此提出了梯度提升的算法。利用的是最速下降法的近似方法,其关键是利用损失函数的负梯度在当前模型的值
作为回归提升树中的残差近似值,拟合一棵决策树。
具体算法如下:
其中需要解释几个与提升树的不同之处,在第一步中,我们本来应该是y与预测值y~的差值,这里设f(0)为常数,y~=c*f(0),所以统一划归为c中(其实f(0)可以通过求导消掉,我们姑且理解为划归入c中)。在第(2)(a)步中,损失函数对f(x)求偏导计算出损失函数的负梯度在当前模型的值,将它作为残差的近似(伪残差),第(2)(b)步中,估计回归树叶节点区域,用来拟合残差的近似值,第(2)(c)步用线性搜索方式估计叶节点区域的值,使得损失函数极小化,最后一步(d)更新回归提升树。
[b]基于残差的提升树
[/b]
在上一篇文章中,介绍了基于残差的提升树,采用加法模型和前向分布算法,损失函数为平方损失,优化过程比较容易,但对于一般的损失函数,可能不会这么容易,因此提出了梯度提升的算法。利用的是最速下降法的近似方法,其关键是利用损失函数的负梯度在当前模型的值
作为回归提升树中的残差近似值,拟合一棵决策树。
具体算法如下:
其中需要解释几个与提升树的不同之处,在第一步中,我们本来应该是y与预测值y~的差值,这里设f(0)为常数,y~=c*f(0),所以统一划归为c中(其实f(0)可以通过求导消掉,我们姑且理解为划归入c中)。在第(2)(a)步中,损失函数对f(x)求偏导计算出损失函数的负梯度在当前模型的值,将它作为残差的近似(伪残差),第(2)(b)步中,估计回归树叶节点区域,用来拟合残差的近似值,第(2)(c)步用线性搜索方式估计叶节点区域的值,使得损失函数极小化,最后一步(d)更新回归提升树。
[b]基于残差的提升树
[/b]
相关文章推荐
- 机器学习方法篇(9)------梯度提升决策树GBDT
- GBDT:梯度提升决策树
- GBDT:梯度提升决策树
- 机器学习总结(四)——随机森林与GBDT(梯度提升决策树)
- GBDT(梯度提升决策树)
- GBDT 梯度提升决策树笔记
- GBDT 梯度提升决策树
- GBDT:梯度提升决策树
- GBDT(梯度提升决策树)剖析
- GBDT(梯度提升决策树)算法(详细版)
- Gradient Boosting Decision Tree(GBDT)-梯度提升决策树
- GBDT:梯度提升决策树
- Spark2.0机器学习系列之5:GBDT(梯度提升决策树)、GBDT与随机森林差异、参数调试及Scikit代码分析
- 【ML笔记】梯度提升决策树(GBDT)和随机森林(RF)的异同
- GBDT:梯度提升决策树
- Spark2.0机器学习系列之6:GBDT(梯度提升决策树)、GBDT与随机森林差异、参数调试及Scikit代码分析
- GBDT--梯度提升决策树
- GBDT 梯度提升决策树的简单推导
- GBDT:梯度提升决策树
- GBDT-梯度提升决策树