【提升(Boosting)方法】

本文介绍了AdaBoost算法的工作原理,包括如何调整训练数据的权值分布以及如何组合弱分类器形成强分类器。通过逐步解析算法流程,展示了如何利用加权投票机制提升分类效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

提升方法需要回答两个问题

  • 一是在每一轮如何改变训练数据的权值和概率分布
  • 二是如何将弱分类器组合成一个强分类器。

先对上述问题做简单的回答:

  • 提高那些被前一轮弱分类器错误分类样本的权值(因为它们的数量少。需要在下一轮训练的时候给予他们更大的关注)。
  • 加权多数表决,误差率小的分类器权值比较大。

Adaboost

输入: 训练集T=(x1,y1),(x2,y2),(x3,y3),...,(xN,yN)T=(x1,y1),(x2,y2),(x3,y3),...,(xN,yN), 其中xXRn,yiY={+1,1}x∈XRn,yi∈Y={+1,−1} ; 弱学习算法
输出:最终分类器G(x)

  1. 初始化权值分布D1=(w1,1,...,w1,i,...,w1,N)D1=(w1,1,...,w1,i,...,w1,N)
  2. 对 m = 1, … , M

    1) 训练弱分类器GiGi
    2) 计算当前弱学习器的误差率emem:

    em=P(Gm(xi)yi)=Gm(xiyi)wmiem=P(Gm(xi)≠yi)=∑Gm(xi≠yi)wmi
    emem的本质是被Gm(x)Gm(x)误分类样本分类器的G_i(x).
    3) 计算权值αmαm,
    αm=12log1ememαm=12log1−emem
    可以看出,emem越大,则αmαm越小(误差大的权重小)。
    4) 更新数据集的权值分布
    Dm+1=(wm+1,1,...,wm+1,i,...,wm+1,N)Dm+1=(wm+1,1,...,wm+1,i,...,wm+1,N)
    wm+1,i=wmiZmexp(αmyiGm(xi)),i=1,2,3,...Nwm+1,i=wmiZmexp(−αmyiGm(xi)),i=1,2,3,...N
    Zm=j=1Nwmjexp(αmyjGm(xj))Zm=∑j=1Nwmjexp(−αmyjGm(xj))

    ZmZm是归一化因子,它使Dm+1Dm+1 成为一个概率分布
    wm+1,iwm+1,i 还可以写成:
    wm+1,i=wmiZmexp(αm),Gm(xi)=yiwm+1,i=wmiZmexp(−αm),Gm(xi)=yi

    wm+1,i=wmiZmexp(αm),Gm(xi)yiwm+1,i=wmiZmexp(αm),Gm(xi)≠yi

    所以,我们可以再次看出,误分类的样本的权值比正确分类的样本权值高。误分类样本的权值被放大e2αm=em1eme2αm=em1−em
  3. 构建弱分类器的组合
    f(x)=mMαmGm(x)f(x)=∑mMαmGm(x)

    αmαm将决定不同分类器的权重
  4. 4.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值