相较于AdaBoost的经典算法模型而言,目前主流的是GBDT系列模型,与AdaBoost(其组合可以是任意单模型)不同的是,提升树(boosting tree)的弱分类器只能是决策树模型。
利用损失函数的负梯度求解(为什么会采用这种方式进行求解呢?因为在损失函数为平方或者对数形式时,前向分布算法的求解比较容易,但是损失函数如果是一般的形式,那么其向前分布算法的求解迭代过程是不容易的,故此时可以采用负梯度求解的方式解决)提升树前向分布迭代过程的方法是梯度提升树(gradient boosting tree)
GBDT(梯度提升决策树,gradient boosting decision tree ),其组成的模型为CART决策树 。针对分类问题进行解决的,其分类的基本模型为二叉分类树 ,其对应的梯度提升决策树称为GBDT;针对回归问题进行解决的,其回归的基本模型为二叉回归树 ,其对应的梯度提升回归树称为GBRT(gradient boosting regression tree)
其实GBDT和GBRT很好理解,就是对决策树进行组合,一个决策树解决了一个任务80%,下一个决策树解决剩余损失的20%中70%,最终不断的进行决策树的迭代,得到最优的决策结果,这其中决策树组合就是提升决策树。使用梯度下降法对提升决策树进行优化的过程就是梯度提升树模型GBDT的实现流程(其整体的构建过程总结为:点-》一个树-》多个树):树结点-》CART(分类树/回归树)-》GBDT(基本超参数-》拟合方法-》预测方法)-》损失函数(交叉熵损失-》均方损失-》一阶导数)-》辅助函数(数据标准化-》数据划分方法-》数据打乱方法)
其适用场景在对于一个数据集需要对其进行分类(GBDT需要对标签进行编码 )或者回归预测(GBRT)的任务。GBDT和GBRT在sklearn中都封装好了,到时候直接进行调用即可快速实操
机器学习——GBDT、GBRT
爱吃泡芙的小白白2025-03-29 11:28
相关推荐
Gyoku Mint5 小时前
机器学习×第二卷:概念下篇——她不再只是模仿,而是开始决定怎么靠近你猛犸MAMMOTH6 小时前
Python打卡第46天小wanga7 小时前
【递归、搜索与回溯】专题三 穷举vs暴搜vs回溯vs剪枝deephub8 小时前
提升模型泛化能力:PyTorch的L1、L2、ElasticNet正则化技术深度解析与代码实现小于不是小鱼呀9 小时前
手撕 K-Meansm0_740154679 小时前
K-Means颜色变卦和渐变色fydw_7159 小时前
Celery 核心概念详解及示例coderCatIce10 小时前
刘二大人第5讲-pytorch实现线性回归-有代码Xyz_Overlord12 小时前
机器学习——聚类算法且慢.58913 小时前
Python——day46通道注意力(SE注意力)