AdaBoost算法详解

AdaBoost 算法介绍

AdaBoost算法本身是通过改变数据分布来实现的,它根据每次训练集之中每个样本的分类是否正确,以及上次的总体分类的准确率,来修改每个样本的权值。将修改过权值的新数据集送给下层分类器进行训练,最后将每次得到的分类器最后融合起来,作为最后的决策分类器。

AdaBoost算法

训练数据集

技术分享

  1. 初始化训练数据的权值分布

    技术分享


  2. M1,2,…,m

    使用具有权值分布Dm的训练数据集学习,得到基本分类器:

    技术分享

    计算Gm(x)在训练数据集上的分类误差率:

    更新训练数据集的权值分布:

  3. Zm是规范化因子:

  4. 计算Gm(x)的系数

  5. 构建基本分类器的线性组合


AdaBoost说明:

  1. 假设训练数据集具有均匀的权值分布,即每个训练样本在基本分类器的学习中作用相同,

    这一假设保证第1步能够在原始数据上学习基本分类器G1(x)

  2. AdaBoost反复学习基本分类器,在每一轮m1,2,…,M顺次地执行下列操作:

1.使用当前分布Dm加权的训练数据集,学习基本分类器Gm(x)

2.计算基本分类器Gm(x)在加权训练数据集上的分类误差率:


这里,wmi表示第m轮中第i个实例的权值.

这表明,Gm(x)加权的训练数据集上的分类误差率是被Gm(x)误分类样本权值之和,

由此可以看出数据权值分布Dm基本分类器Gm(x)分类误差率的关系

3. 计算基本分类器Gm(x)的系数amam表示Gm(x)在最终分类器中的重要性。

em≤1/2时,am≥0,并且am随着em的减小而增大,

所以分类误差率越小的基本分类器在最终分类器中的作用越大

4.更新训练数据的权值分布为下一轮作准备

技术分享

被基本分类器Gm(x)误分类样本的权值得以扩大,而被正确分类样本的权值却得以缩小

误分类样本在下一轮学习中起更大的作用。

不改变所给的训练数据,而不断改变训练数据权值的分布,使得训练数据在基本分类器的学习中起不同的作用

  1. 线性组合f(x)实现M个基本分类器的加权表决。

?

AdaBoost的例子

弱分类器由x<vx>v产生其阈值v使该分类器在训练数据集上分类误差率最低.

技术分享

初始化数据权值分布

技术分享

对于m1

在权值分布为D1的训练数据上,阈值v2.5时分类误差率最低,故基本分类器为

技术分享

G1(x)在训练数据集上的误差率e1P(G1(xi)≠yi)0.3

计算G1(x)的系数:

技术分享

更新训练数据的权值分布:

技术分享

分类器sign[f1(x)]在训练数据集上有3个误分类点。

对于m= 2

在权值分布为D2的训练数据上,阈值v8.5分类误差率最低,基本分类器为

技术分享

G2(x)在训练数据集上的误差率e20.2143

计算a20.6496

更新训练数据权值分布:

技术分享

分类器sign[f2(x)]在训练数据集上有3个误分类点。

对于m = 3

在权值分布为D3的训练数据上,阈值v5.5时分类误差率最低,基本分类器为

技术分享

计算a30.7514

更新训练数据的权值分布

D4(0.125,0.125,0.125,0.102,0.102,0.102,0.065,0.065,0.065,0.125)

得到:

技术分享

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值