机器学习

聊一聊提升树这个概念

2018-04-16  本文已影响12人  只为此心无垠

一、概览

首先强调一点,先有提升树模型(总体概念),然后针对不同情况和不同损失函数,提出各自提升树,包含残差提升树,梯度提升树等


这两种树的差别,一是残差和梯度,二是节点分裂根据不一样,残差提升树是根据gini指数,梯度提升树是根据目标函数衍化的

二、提升树概念

提升树(Boosting Decision Tree) = Boosting + Decision Tree。
提升方法实际采用加法模型(即基函数的线性组合)和前向分布算法。
以基函数的提升方法称为提升树。
对分类问题决策树是二叉分类树,对回归问题决策树是二叉回归树

提升树公式


提升树公式

三、基于平方误差的回归提升树(基于残差的提升树)

最原始,最开始提出的提升树,就是基于平方误差的回归提升树,也可以叫基于残差的提升树



image.png

四、梯度提升(基于梯度的提升树)

当损失函数是平方损失和指数损失函数时,每一步优化很自然简单。但对一般损失函数而言,往往每一步优化并不如意。针对这个问题,又提出了梯度提升算法。

他的步骤是:

核心就是利用损失函数的负梯度在当前模型的值作为回归问题提升树的残差近似值。


image.png

五、残差 vs 梯度

截图来源于A Gentle Introduction to Gradient Boosting

六、题外话:LR与GBDT

LR是利用梯度更新参数
GBDT是利用梯度更新函数值


截图来源于GBDT算法原理与系统设计简介

参考
1.《统计学习方法》
2、A Gentle Introduction to Gradient Boosting
3、GBDT算法原理与系统设计简介

上一篇下一篇

猜你喜欢

热点阅读