GBDT算法总结

GBDT算法基于负梯度拟合损失函数,适用于回归和分类问题。通过损失函数的不同选择,如指数、对数损失,解决不同类型问题。正则化方法包括学习率调整、子采样和树的剪枝。GBDT在处理各种数据类型、异常值以及在不需要大量调参的情况下,仍能保持高预测准确率,但并行训练受限。scikit-learn中的参数如n_estimators、learning_rate和subsample可调整模型性能。
摘要由CSDN通过智能技术生成

 

前向分布算法

 

负梯度拟合

在上一节中,我们介绍了GBDT的基本思路,但是没有解决损失函数拟合方法的问题。针对这个问题,大牛Freidman提出了用损失函数的负梯度来拟合本轮损失的近似值,进而拟合一个CART回归树。第t轮的第i个样本的损失函数的负梯度表示为

                                      

    利用(xi,rti)(i=1,2,..m)(xi,rti)(i=1,2,..m),我们可以拟合一颗CART回归树,得到了第t颗回归树,其对应的叶节点区域Rtj,j=1,2,...,JRtj,j=1,2,...,J。其中J为叶子节点的个数。

    针对每一个叶子节点里的样本,我们求出使损失函数最小,也就是拟合叶子节点最好的的输出值ctjctj如下:

                                      

    这样我们就得到了本轮的决策树拟合函数如下:

                                              

    从而本轮最终得到的强学习器的表达式如下:

                                          

    通过损失函数的负梯度来拟合,我们找到了一种通用的拟合损失误差的办法,这样无轮是分类问题还是回归问题,我们通过其损失函数的负梯度的拟合,就可以用GBDT来解决我们的分类回归问题。区别仅仅在于损失函数不同导致的负梯度不同而已。

 

损失函数

 

在GBDT算法中,损失函数的选择十分重要。针对不同的问题,损失函数有不同的选择。

1.对于分类算法,其损失函数一般由对数损失函数和指数损失函数两种。

(1)指数损失函数表达式:

L(y,f(x))=e^{(-yf(x))}

(2)对数损失函数可分为二分类和多分类两种。

2.对于回归算法,常用损失函数有如下4种。

(1)平方损失函数

L(y,f(x))=(y-f(x))^{2}

(2)绝对损失函数

L(y,f(x))=|y-f(x)|

对应负梯度误差为:

sign(y_{i}-f(x_{i}))

(3)Huber损失<

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值