提升方法AdaBoost

提升方法AdaBoost通过改变训练样本权重,将弱学习器提升为强学习器。该算法在每轮中增加错误分类样本的权重,用加权多数表决组合弱分类器,降低分类误差。本文详细介绍了AdaBoost的训练误差分析、算法步骤和前向分步算法。
摘要由CSDN通过智能技术生成

这里写图片描述
提升(boosting)方法是一种可以将弱学习器提升为强学习器的算法。在分类问题中,它通过改变训练样本的权重,使得先前学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器,并将这些分类器进行过线性组合,提高分类的性能。

提升方法AdaBoost算法

  1. 在每一轮如何改变训练数据的权值或概率分布
    AdaBoost 提高那些被前一轮弱分类器错误分类的样本的权值,而降低那些被正确分类样本的权值。
  2. 如何将弱分类器组合成一个强分类器
    AdaBoost采取加权多数表决的方法。加大分类误差率小的弱分类器的权值,减小分类误差率大的弱分类器的权值。

AdaBoost算法

算法AdaBoost
输入:训练数据集T, y(1,1) ;弱学习算法
输出:最终分类器 G(x)
1. 初始化训练数据的权值分布
D1=(w11,...,w1N),w1i=1N,i=1,...,N
2. 对m=1,2,…,M

(a)使用具有权值分布 Dm 的训练数据学习,得到基本分类器
Gm(x):x(1,1)
(b)计算 Gm(x) 在训练集上的分类误差率
em=i=1NP(Gm(xi)yi)=i=1NwmiI(Gm(xi)yi)
(c)计算 Gm(x) 的系数
am=12log1emem(8.2)
这里的对数是自然对数
(d)更新训练集的权值分布

Dm+1=(wm+1,1,...,wm+1,N)wm+1,1=wmiZmexp(amyiGm(xi)),i=1,...,N(8.4)

这里, Zm 是规范化因子
Zm=i=1Nwmiexp(amyiGm(xi))(8.5)
它使 Dm+1 成为一个概率分布
3. 构建基分类器的线性组合
f(x)=m=1NamGm(x)
得到最终分类器
G(x)=sign(f(x))=sign(m=1NamGm(x))

算法说明

Gm(x) 在加权的训练数据集上的分类误差率是被 Gm(x) 误分类样本的权值之和,由此可以看出数据权值分布 Dm 与基本分类器 Gm(x) 的分类误差率的关系。
由式(8.2)知,当 em12 时, am0 ,并且 am 随着 em 的减小而增大,所以分类误差率越小的基本分类器在最终分类器中的作用越大。
式(8.4)可以写成:

wm+1,i={wmiZmeam,Gm(xi)=yiwmiZmeam,Gm(xi)yi

由此可知,被基分类器误分类样本的权值得以扩大,而被正确分类样本的权值却得以缩小。两相比较,误分类样本的权值被放大 e2am=1emem 倍。误分类样本在下一轮学习中起更大的作用。
不改变训练数据,不断改变训练数据权值的分布,使得训练数据在基本分类器的学习中起不同的作用,这是AdaBoost的一个特点。
最后线性组合 f(x) 实现了M个基分类器的加权表决。系数 am 之和并不为1。 f(x) 的符号决定实例x的类, f(x) 的绝对值表示分类的确信度。
利用基本分类器的线性组合构建最终分类器是AdaBoost的另一特点。

AdaBoost算法的训练误差分析

这里写图片描述
定理8.1后半部分推导过程中第2个等号后出现的 w1i 是因为在第一轮训练时,各个样本的权重均为 1N
上述定理说明,可以在每一轮选取适当的 Gm 使得 Zm 最小,从而使得训练误差下降最快。对二类分类问题,有如下结果。
这里写图片描述
最后一个不等式使用了 1xex
Zm=(14γ2m)12(e4γ2m)12=e2γ2m
所以
Mm=1Zme2Mm=1γ2m

AdaBoost算法的解释

AdaBoost算法是模型为加法模型,损失函数为指数函数,学习算法为前向分布算法时的二类分类学习算法。

前向分步算法

考虑加法模型(additive model)
f(x)=m=1Mβmb(x;γm)
在给定训练数据和损失函数 L(y,f(x)) 的条件下,学习加法模型 f(x) 成为经验风险最小化及损失函数最小化问题:
minβm,γmi=1NL(yi,m=1Mβmb(xi;γm))
前向分步算法(forward stagewise algorithm)求解这一优化问题的想法是:因为学习是加法模型,如果能够从前向后,每一步只学习一个 基函数及其系数,逐步逼近优化目标函数式(8.14)那么就可以简化优化的复杂度。具体地,每步只需优化如下损失函数:
minβ,γi=1NL(yi,βb(xi;γ))
这里写图片描述

前向分步算法与AdaBoost

参考资料

《统计学习方法》第8章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值