树模型-Adaboost

树模型

1、决策树 ID3,C4.5,CART
2、随机森林RF
3、Adaboost
4、GBDT
5、XGboost
6、孤立森林(异常检测)

三、Adaboost

一、Adaboost的Boosting理解

Adaboost是集成学习中Boosting方式的代表。多个基学习器其串行执行,下一个学习器基于上一个学习器的经验,通过调整样本的权重,使得上一个错分的样本在下一个分类器更受重视而达到不断提升的效果。Adaboost集成多个学习器的关键在两点:

​ 1)设置基学习器的权重 am=12log1emem a m = 1 2 l o g 1 − e m e m

​ 2)调整样本的权重 wm+1,i=wm,iZmexp(amyiGm(xi)) w m + 1 , i = w m , i Z m e x p ( − a m y i G m ( x i ) )

相对随机森林的Bootstrap Sampling重采样技术,可以看出Adaboost的权重调整是有目的性,是基于上一个学习器的经验,这也导致Adaboost在基学习器层是串行的。另外值得探讨的是权重为何如此设置?

Adaboost算法采用的基学习器是二值函数(二叉树)模型(当然Adaboost的核心是采用Boosting的思想),下面先来看Adaboost算法的整个流程,后面分析Adaboost在设计上巧妙之处

输入: 训练集 D={ (x1y1),(x2,y2),,(xN,yN)} D = { ( x 1 y 1 ) , ( x 2 , y 2 ) , … , ( x N , y N ) } ,其中 xiRn x i ∈ R n yi{ +1,1} y i ∈ { + 1 , − 1 }

输出:强学习器 G(x) G ( x )

1)初始化权值 : D1=w11,w12,,w1N D 1 = w 11 , w 12 , … , w 1 N w1i=1N,i=1,2,,N w 1 i = 1 N , i = 1 , 2 , … , N

2)训练M个基学习器,对 m=1,2...M m = 1 , 2... M

​ a)使用权值分布 Dm D m 与相应的基学习器算法得到第 m m 个基学习器 G m ( x ) x i y i

​ b)计算基学习器 Gm(x) G m ( x ) 的训练误差:

em=P(Gm(xi)yi)=NiwmiI(Gm(xi)yi)/Niwmi e m = P ( G m ( x i ) ≠ y i ) = ∑ i N w m i I ( G m ( x i ) ≠ y i ) / ∑ i N w m i

​ c)计算基学习器的权重

​ 如果 em>12 e m > 1 2 am=0 a m = 0 ,舍弃基学习器,样本权重更新与不更新一致

​ 否则: am=12log1emem a m = 1 2 log ⁡ 1 − e m e m

​ d)更新样本的权重:

Dm+1=(wm+1,1,....,wm+1,i,,wm+1,N) D m + 1 = ( w m + 1 , 1 , . . . . , w m + 1 , i , … , w m + 1 , N )

​ 其中, wm+1,i=wmiZmexp(amyiGm(xi)) w m + 1 , i = w m i Z m exp ⁡ ( − a m y i G m ( x i ) )

​ 这里 Zm Z m 是归一化因子: Z

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值