【算法梳理Task2】GBDT算法梳理

GBDT是一种基于Boosting的集成学习方法,使用CART回归树作为基模型。每轮迭代中,GBDT通过拟合负梯度来寻找最优的决策树,以最小化损失函数。它可以处理连续和离散数据,对异常值有较强鲁棒性,并广泛应用于CTR预测和搜索排序等领域。在sklearn中,GBDT的关键参数包括损失函数、弱学习器数量、学习率、子采样比例等。
摘要由CSDN通过智能技术生成

1.GBDT思想

GBDT是集成学习Boosting家族的成员。弱学习器限定了只能使用CART回归树模型,迭代是思路是:在本轮迭代中找到一个CART回归树模型的弱学习器使得本轮的损失函数最小。即拟合误差。(Adaboost是利用前一轮迭代弱学习器的误差率来更新训练集的权重,这样一轮轮的迭代下去。)

GBDT的思想使其具有天然优势可以发现多种有区分性的特征以及特征组合

  • 回归树(Regression Decision Tree)

回归树生成算法:(CART)

  • 提升树(Boosting Decision Tree)

提升方法采用加法模型和前向分布算法。以决策树为基函数的提升方法称为提升树。

提升树是迭代多棵回归树来共同决策。当采用平方误差损失函数时,每一棵回归树学习的是之前所有树的结论和残差,拟合得到一个当前的残差回归树,残差的意义如公式:残差 = 真实值 - 预测值 。提升树即是整个迭代过程生成的回归树的累加。

回归问题的提升树算法流程:

  • 梯度提升决策树

对于一般的损失函数,往往每一步优化没那么容易,如绝对值损失函数和Huber损失函数。针对这一问题,Freidman提出了梯度提升算法:利用最速下降的近似方法,即利用损失函数的负梯度在当前模型的值,作为回归问题中提升树算法的残差的近似值,拟合一个回归树。

算法流程:

2.负梯度拟合

针对各种各样损失函数如何让进行通用性拟合的问题,Freidman提出了用损失函数的负梯度来拟合本轮损失的近似值,进而拟合一个CART回归树。

第t轮的第i个样本的损失函数的负梯度表示为:

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

得到本轮的决策树拟合函数:

从而得到本轮的强学习器如下:

3.损失函数

  • 对于分类算法

  • 指数损失函数

  • 对数损失函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值