最全机器学习算法二:详解Boosting系列算法二GBM_gbm算法,2024年最新掌握这些知识点再也不怕面试通不过

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

f(x)=∑m=1MαmT(x;Θm)

f

(

x

)

=

m

=

1

M

α

m

T

(

x

;

Θ

m

)

f(x)=\sum\limits_{m = 1}^M {{\alpha _m}} T(x;{\Theta _m})

αm

α

m

\alpha _m是每个基学习器的权系数,

T(x;Θm)

T

(

x

;

Θ

m

)

T(x;{\Theta _m)}代表学习得到的第m个基学习器,

m

m

m为学习器个数,ΘmΘm\Theta _m为学习器分类的参数,一般这里指分类树或者回归树模型参数。

在给定训练数据和损失函数形式后,boosting学习模型可以定义为一个损失函数极小化的问题,
优化的目标函数为:

argminf∑i=1NL(yi,f(xi))

arg

min

f

i

=

1

N

L

(

y

i

,

f

(

x

i

)

)

\mathop {\arg \min }\limits_f \sum\limits_{i = 1}^N {L({y_i},f({x_i}))}

L

L

L为损失函数,NNN为样本个数。从这两个定义我们就可以知道boosting类算法的模型和优化目标函数是什么。接下来理解boosted tree 就容易了。

boosted tree

提升树是以分类树和回归树为基学习器的提升算法,就是将
T(x;Θm)

T

(

x

;

Θ

m

)

T(x;{\Theta _m)}学习器定义为了决策树。提升树被认为是统计学性能最好的方法之一。为了方便大家理解,这里就不再另外定义模型了(参考前文),提升树模型如下

f(x)=∑m=1MαmT(x;Θm)

f

(

x

)

=

m

=

1

M

α

m

T

(

x

;

Θ

m

)

f(x)=\sum\limits_{m = 1}^M {{\alpha _m}} T(x;{\Theta _m})对于二分类问题,提升树可以看做采用二分类树的adaboost算法,所以这里不再详细解释。因此这里的

T(x;Θm)

T

(

x

;

Θ

m

)

T(x;{\Theta _m})为回归树。回归提升树使用的前向分布计算法:

f0(x)=0

f

0

(

x

)

=

0

f_0(x)=0

fm(x)=fm−1(x)+T(x;Θm)

f

m

(

x

)

=

f

m

1

(

x

)

T

(

x

;

Θ

m

)

f_m(x)=f_{m-1}(x)+T(x;\Theta _m)

fM(x)=∑m=1MT(x;Θm)

f

M

(

x

)

=

m

=

1

M

T

(

x

;

Θ

m

)

f_M(x)=\sum\limits_{m = 1}^M {} T(x;{\Theta _m)}前向计算到低

m

m

m步时,需要求解目标函数Θ′m=argminΘ∑i=1NL(yi,fm−1(xi)+T(x−i;Θm))Θm′=arg⁡minΘ⁡∑i=1NL(yi,fm−1(xi)+T(x−i;Θm))\Theta_m’=\mathop {\arg \min }\limits_{\Theta} \sum\limits_{i = 1}^N {L({y_i},f_{m-1}({x_i})+T(x-_i;\Theta_m))}

Θ′m

Θ

m

\Theta_m’为根据损失函数更新的第m颗树的参数。假设这里的损失函数我们定义为平方误差函数

L=(y−f(x))2

L

=

(

y

f

(

x

)

)

2

L=(y-f(x))^2损失就变为了

L=[y−fm−1(xi)−T(x−i;Θm)]2

L

=

[

y

f

m

1

(

x

i

)

T

(

x

i

;

Θ

m

)

]

2

L=[y-f_{m-1}({x_i})-T(x-_i;\Theta_m)]^2这就是基于平方误差函数的提升树模型。

算法步骤可以总结如下:

1.输入训练数据

(xi,yi)

x

i

,

y

i

(x_i,y_i);

2.构建提升树模型

fM(x)

f

M

(

x

)

f_M(x)

3.初始化

f0(x)=0

f

0

(

x

)

=

0

f_0(x)=0

对于第m步,首先计算残差

rmi=yi−fm−1(xi)

r

m

i

=

y

i

f

m

1

(

x

i

)

r_{mi}=y_i-f_{m-1}({x_i})然后根据残差求取误差函数最小化的分类器,得到树模型

Θ′m=argminΘ∑i=1NL(rmi,fm−1(xi)+T(x−i;Θm))

Θ

m

=

arg

min

Θ

i

=

1

N

L

(

r

m

i

,

f

m

1

(

x

i

)

T

(

x

i

;

Θ

m

)

)

\Theta_m’=\mathop {\arg \min }\limits_{\Theta} \sum\limits_{i = 1}^N {L({r_{mi}},f_{m-1}({x_i})+T(x-_i;\Theta_m))}

  1. 更新提升树模型

fm(x)=fm−1(x)+T(x;Θm)

f

m

(

x

)

=

f

m

1

(

x

)

T

(

x

;

Θ

m

)

f_m(x)=f_{m-1}(x)+T(x;\Theta _m)

详细的例子可以参考这篇博文:
https://blog.csdn.net/sb19931201/article/details/52506157中的算法实例,即李航统计学习P149例 8.2

GBM梯度提升树

了解了adaboost和提升树算法后,就很容易理解GBM算法了。GBM(提升器)算法,又名GBDT,是基于梯度下降算法得到提升树模型。它与提升树的关键不同之处,就在于残差更新的方式,下面来看看GBM的的计算步骤;
1.输入训练数据
(xi,yi)

x

i

,

y

i

(x_i,y_i);
2.构建提升树模型
fM(x)

f

M

(

x

)

f_M(x)
3.初始化
f0(x)=arg minΘ∑i=1NL(yi;Θ)

f

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

更新提升树模型

fm(x)=fm−1(x)+T(x;Θm)

f

m

(

x

)

=

f

m

1

(

x

)

T

(

x

;

Θ

m

)

f_m(x)=f_{m-1}(x)+T(x;\Theta _m)

详细的例子可以参考这篇博文:
https://blog.csdn.net/sb19931201/article/details/52506157中的算法实例,即李航统计学习P149例 8.2

GBM梯度提升树

了解了adaboost和提升树算法后,就很容易理解GBM算法了。GBM(提升器)算法,又名GBDT,是基于梯度下降算法得到提升树模型。它与提升树的关键不同之处,就在于残差更新的方式,下面来看看GBM的的计算步骤;
1.输入训练数据
(xi,yi)

x

i

,

y

i

(x_i,y_i);
2.构建提升树模型
fM(x)

f

M

(

x

)

f_M(x)
3.初始化
f0(x)=arg minΘ∑i=1NL(yi;Θ)

f

[外链图片转存中…(img-qBSQzRv0-1715102005969)]
[外链图片转存中…(img-YGXao5x5-1715102005969)]
[外链图片转存中…(img-sZZlNsCp-1715102005969)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值