AdaBoost算法思想及算法过程

一.算法思想

\quad\quad AdaBoost是一种特殊的Boosting族算法,它与众多的Boosting一族的算法的工作机制一致:先从初始训练样本中训练一个基学习器(也称弱学习器),再根据基学习器的表现对训练样本的分布进行调整,使得先前基学习器分类错误的样本在后续中受到更多的关注(即加大权重),然后基于调整后的样本分布来训练下一个基学习器,如此重复进行,直至基学习器的数量达到事先指定的值T,最终将这T个基学习器进行加权结合。

二.算法过程

给定训练集 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) } D=\{(x_1,y_1),(x_2,y_2),...,(x_m,y_m)\} D={(x1,y1),(x2,y2),...,(xm,ym)}
其中 x i ∈ X , y i ∈ { − 1 , + 1 } x_i\in{X},y_i\in{\{-1,+1\}} xiX,yi{1,+1}
初始化训练样本权重 D 1 ( i ) = 1 m ( i = 1 , 2 , . . . , m ) D_1(i)=\frac{1}{m}(i=1,2,...,m) D1(i)=m1(i=1,2,...,m)
for t = 1,2,…,T:
\quad 训练弱分类器 h t = ζ ( D , D t ) h_t=\zeta(D,D_t) ht=ζ(D,Dt)
\quad 计算错误率 ϵ t = P r i ∼ D t ( h t ( x i ) ≠ y i ) \epsilon_t=P_{r_i\sim{D_t}}(h_t(x_i)\neq{y_i}) ϵt=PriDt(ht(xi)=yi)
\quad 计算弱分类器的权重 α t = 1 2 l n ( 1 − ϵ t ϵ t ) \alpha_t=\frac{1}{2}ln(\frac{1-\epsilon_t}{\epsilon_t}) αt=21ln(ϵt1ϵt)
\quad 更新训练样本的权重:
D t + 1 = D t ( i ) Z t × { e − α t , h t ( x i ) = y i e α t , h t ( x i ) ≠ y i = D t ( i ) Z t e − α t y i h t ( x i ) D_{t+1}=\frac{D_t(i)}{Z_t}\times\left\{ \begin{aligned} e^{-\alpha t},\quad h_t(x_i)=y_i\\ e^{\alpha t},\quad h_t(x_i)\neq{y_i} \end{aligned} \quad =\frac{D_t(i)}{Z_t}e^{-\alpha t y_i h_t(x_i)} \right. Dt+1=ZtDt(i)×{eαt,ht(xi)=yieαt,ht(xi)=yi=ZtDt(i)eαtyiht(xi)
输出结果 H f i n a l ( x i ) = s i g n ( ∑ t = 1 T α t h t ( x i ) ) H_{final}(x_i)=sign(\sum_{t=1}^{T}\alpha_th_t(x_i)) Hfinal(xi)=sign(t=1Tαtht(xi))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值