GBDT通俗版

1. GBDT 简介

GBDT全称为Gradient Boost Decision Tree,提升决策树,其实本质上和AdaBoost模型没有太大的区别,仅仅是在提升对象方面略有差别。AdaBoost模型是通过调整错误样本的权重达到提升的目的,而GBDT则是通过调整整体样本的残差达到提升的目的。

GBDT理论推导版本


2. GBDT在回归的应用

2.1 基础流程

假设数据集为:
在这里插入图片描述
图中,数据集包括4个特征值:Height, Favorite Color, Gender, WeightHeight, Weight为连续变量,Favorite Color, Gender为离散变量。Weight是我们需要预测的变量,Height, Favorite Color, Gender是已知变量。

1. 初始化参数

计算目标的均值,作为所有样本的初始预测值。
88 + 76 + 56 + 73 + 77 + 57 6 = 71.2 \frac{88+76+56+73+77+57}{6}=71.2 688+76+56+73+77+57=71.2,该值代表,如果此时模型停止,则预测所有的Weight=71.2

与AdaBoost模型的对比

  1. AdaBoost模型第一个若学习器为一个决策树桩,而GBDT的第一个弱学习器为一个叶子节点。
  2. 通常情况下,GBDT的剩下的弱学习器设定为具有指定叶结点数量的决策树,叶结点数量通常为8~32。(本例中限制为4个)
2. 计算误差

在这里插入图片描述
利用输入数据和Residual构造决策树:
在这里插入图片描述
对于同一叶结点的数据,取其均值,有:
( − 14.2 − 15.2 ) / 2 = − 14.7 (-14.2-15.2)/2 = -14.7 (14.215.2)/2=14.7 ( 1.8 + 5.8 ) / 2 = 3.8 (1.8+5.8)/2 = 3.8 (1.8+5.8)/2=3.8
在这里插入图片描述

3. 更新估计值

新的估计值=原估计值+学习率*当前模型输出值
假定学习率为0.1,以第一个样本数据为例:
在这里插入图片描述
以此类推,更新Residual的值:
在这里插入图片描述

4 重复步骤3

假设生成的第3个弱学习器为:
在这里插入图片描述
则模型的输出为:
在这里插入图片描述
直到精度不再提升或达到指定迭代次数。


3. GBDT在分类的应用

使用GBDT做分类,其实是相当于计算数据属于各个标签的概率值。

3.1 具体案例

假设有数据集:Likes Pocorn、Age、Favorite Color是特征数据,Loves Troll2是标签数据
在这里插入图片描述

1. 初始化参数

计算为yes的概率
在这里插入图片描述

2. 计算伪残差

如果是yes: 1 − 0.69311 1-0.69311 10.69311
如果是no: 0 − 0.69311 0-0.69311 00.69311
在这里插入图片描述

3. 训练拟合残差的弱学习器

在这里插入图片描述

2. 找一个合适该弱学习器的权重

∑ R e s i d u a l i ∑ [ P r e v i o u s P r o b i ∗ ( 1 − P r e v i o u s P r o b i ) ] \frac{\sum Residual_i}{\sum[Previous Prob_i*(1-Previous Prob_i)]} [PreviousProbi(1PreviousProbi)]Residuali
以第3个叶节点为例:
在这里插入图片描述
0.3 + 0.3 + 0.3 ( 0.6667 ∗ ( 1 − 0.6667 ) + ( 0.6667 ∗ ( 1 − 0.6667 ) + ( 0.6667 ∗ ( 1 − 0.6667 ) ) = 1.4 \frac{0.3+0.3+0.3}{(0.6667*(1-0.6667)+(0.6667*(1-0.6667)+(0.6667*(1-0.6667))}=1.4 (0.6667(10.6667)+(0.6667(10.6667)+(0.6667(10.6667))0.3+0.3+0.3=1.4

5. 更新模型

在这里插入图片描述
此时第一条数据的概率更新为:
在这里插入图片描述
以此类推,计算每个数据新的误差
在这里插入图片描述

5. 重复上述过程

在这里插入图片描述
更新概率为:
0.1 + 0.1 + 0.1 + 0.1 0.9 ∗ ( 1 − 0.9 ) + 0.1 ∗ ( 1 − 0. ) + 0.9 ∗ ( 1 − 0.9 ) + 0.9 ∗ ( 1 − 0.9 ) \frac{0.1+0.1+0.1+0.1}{0.9*(1-0.9)+0.1*(1-0.)+0.9*(1-0.9)+0.9*(1-0.9)} 0.9(10.9)+0.1(10.)+0.9(10.9)+0.9(10.9)0.1+0.1+0.1+0.1

4. 参考文献

《StatQuest》

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值