GBDT (Gradient Boosting Decision Tree)

本文介绍了梯度提升树(GBDT)的基本概念,它是决策树的改进,利用平方损失下负梯度作为残差近似。文章详细阐述了GBDT的初始化过程、第一棵树的学习策略,以及如何通过迭代生成更多树来提升预测精度。最后,通过几个链接提供深入学习资源。
背景

GBDT是BT的一种改进算法。然后,Friedman提出了梯度提升树算法,关键是利用损失函数的负梯度作为提升树残差的近似值。 当使用平方损失时,负梯度就是残差。

算法模型

树模GBDT初始化ccc为所有标签的均值,即f0(x)f_0(x)f0(x)
学习完第一棵树:
Υj1=arg⁡min⁡⏟Υ∑xi∈Rj1L(yi,f0(xi)+Υ) \Upsilon_{j 1}=\underbrace{\arg \min }_{\Upsilon} \sum_{x_{i} \in R_{j 1}} L\left(y_{i}, f_{0}\left(x_{i}\right)+\Upsilon\right) Υj1=ΥargminxiRj1L(yi,f0(xi)+Υ)
Υj1\Upsilon_{j 1}Υj1中的111表示第一颗树。GBDT已知Υ\UpsilonΥ, 然后最小化这个值求树的划分。使损失最小的树的划分。
学习完所有树:
f(x)=fM(x)=f0(x)+lr∗∑m=1M∑j=1JΥjmI(x∈Rjm) f(x)=f_{M}(x)=f_{0}(x)+lr*\sum_{m=1}^{M} \sum_{j=1}^{J} \Upsilon_{j m} I\left(x \in R_{j m}\right) f(x)=fM(x)=f0(x)+lrm=1Mj=1JΥjmI(xRjm)
使用lrlrlr可以防止过拟合。Υjm\Upsilon_{j m}Υjm是叶子节点的值,III表示预测值是否属于这个节点,属于为1,不属于为0。f0(x)f_0(x)f0(x)是一个基(标签的均值),后续学的都是残差。1和0的计算需要将样本带入树中计算得到。叶子节点的数值表示残差值。树的数量是通过不断迭代产生的。

参考资料

https://blog.youkuaiyun.com/zpalyq110/article/details/79527653(GBDT案例介绍)
https://www.cnblogs.com/always-fight/p/9400346.html
https://www.cnblogs.com/ModifyRong/p/7744987.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值