提升树与梯度提升树 Boosting Tree & Gradient Boosting Decision Tree(GBDT)

简介: 提升树与梯度提升树 Boosting Tree & Gradient Boosting Decision Tree(GBDT)

正文


提升树(Boosting Tree)


以决策树为基函数的提升方法称为提升树。提升树对分类问题,提升树是二叉分类树,对回归问题提升树是二叉回归树。

提升树方法实际采用的是加法模型(即基函数的线性组合)与前向分步算法,因此提升树模型可以表示为决策树的加法模型:


1.png


提升树算法过程:


假设有数据集T={(x1,y1),(x2,y2),...,(xN,yN)}

其中 xi∈X⊆Rn,yi∈Y⊆R

输出提升树: fK(x)


1、初始化f0(x)=0

2、对k=1,2,...,K依次进行循环迭代:

  1. 计算后一颗树对前一颗树的残差:

2.png

2、拟合残差学习一个回归树,得到T(x,θk)

更新3.png

3、通过迭代最终得到回归提升树

4.png


GBDT


提升树利用加法模型与前向分布算法实现学习的优化过程在损失函数式平方损失和指数损失时,每一步优化是很简单的。

但对一般损失函数而言,往往每一步优化并不那么容易。

Freidman提出了梯度提升算法,其关键是利用损失函数的负梯度在当前模型的值:

5.png


其中 L(y,f(xi))是自定义的损失函数, y是残差,f(x)是迭代而成的决策树。

作为回归问题提升树算法中残差的近似值来拟合一颗回归树。

相关文章
|
3月前
|
机器学习/深度学习 算法
梯度提升树GBDT系列算法
在Boosting集成算法当中,我们逐一建立多个弱评估器(基本是决策树),并且下一个弱评估器的建立方式依赖于上一个弱评估器的评估结果,最终综合多个弱评估器的结果进行输出。
|
3月前
|
机器学习/深度学习 存储 人工智能
【机器学习】GBDT (Gradient Boosting Decision Tree) 深入解析
GBDT,全称为Gradient Boosting Decision Tree,即梯度提升决策树,是机器学习领域中一种高效且强大的集成学习方法。它通过迭代地添加决策树以逐步降低预测误差,从而在各种任务中,尤其是回归和分类问题上表现出色。本文将深入浅出地介绍GBDT的基本原理、算法流程、关键参数调整策略以及其在实际应用中的表现与优化技巧。
748 1
|
4月前
|
机器学习/深度学习 数据可视化 决策智能
Python中使用Gradient Boosting Decision Trees (GBDT)进行特征重要性分析
Python中使用Gradient Boosting Decision Trees (GBDT)进行特征重要性分析
147 0
|
机器学习/深度学习 算法 数据建模
决策树(Decision Tree)算法详解及python实现
决策树(Decision Tree)算法详解及python实现
1592 0
决策树(Decision Tree)算法详解及python实现
|
机器学习/深度学习 人工智能 算法
决策树 Decision Tree
决策树 Decision Tree
|
机器学习/深度学习 数据可视化 算法
机器学习算法之——决策树模型(Decision Tree Model)
简单说明一下上面的图像, 每一个叶子节点中有class, 表示按照上面的规则, 会被分到哪一个类别中. 同时, 每一个节点中有values, 表示到这一个节点中每一个类别的样本有多少个, 如上面的例子中一共有3类样本, 所以values中有三个数字, 分别是三个类别的样本的个数.
机器学习算法之——决策树模型(Decision Tree Model)
|
机器学习/深度学习 存储 搜索推荐
【树模型与集成学习】(task6)梯度提升树GBDT+LR
协同过滤和矩阵分解存在的劣势就是仅利用了用户与物品相互行为信息进行推荐, 忽视了用户自身特征, 物品自身特征以及上下文信息等,导致生成的结果往往会比较片面。
367 0
【树模型与集成学习】(task6)梯度提升树GBDT+LR
|
机器学习/深度学习 算法 数据可视化
Machine Learning | (7) Scikit-learn的分类器算法-决策树(Decision Tree)
Machine Learning | (7) Scikit-learn的分类器算法-决策树(Decision Tree)
130 0
|
机器学习/深度学习 算法 关系型数据库
决策树算法之分类回归树 CART(Classification and Regression Trees)【1】
分类回归树 CART 是决策树家族中的基础算法,它非常直觉(intuitive),但看网上的文章,很少能把它讲的通俗易懂(也许是我理解能力不够),幸运的是,我在 Youtube 上看到了[这个视频](http://1t.click/aMGq),可以让你在没有任何机器学习基础的情况下掌握 CART 的原理,下面我尝试着把它写出来,以加深印象. ## 决策树的结构 下图是一个简单的决策树示