相较于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
相关推荐
机器学习之心4 小时前
回归预测 | Matlab实现NRBO-Transformer-BiLSTM多输入单输出回归预测西瓜撞月球7 小时前
二分类与多分类罗西的思考7 小时前
探秘Transformer系列之(21)--- MoE啥都鼓捣的小yao8 小时前
Python使用SVC算法解决乳腺癌数据集分类问题——寻找最佳核函数Blossom.1188 小时前
量子计算:未来计算技术的革命性突破Shockang9 小时前
机器学习的一百个概念(4)下采样Shockang9 小时前
机器学习的一百个概念(3)上采样HR Zhou9 小时前
群体智能优化算法-鹈鹕优化算法(Pelican Optimization Algorithm, POA,含Matlab源代码)智源社区10 小时前
PyTorch Day 首次登陆 2025 智源大会!论文征集开启神经星星11 小时前
入选CVPR 2025!深圳大学团队等提出EchoONE,可精准分割多切面超声心动图