AdaBoost算法

主要思想

Adaboost是一种提升方法。其主要思想就是改变训练样本的权重,学习多个分类器,然后将这些分类器进行线性组合,提升算法的性能。

相关概念

强可学习:在概率近似正确学习的框架中,一个概念(一个类),如果存在一个多项式的学习算法能够学习它,并且正确率很高,那么就称这个概念是强可学习的

弱可学习:一个概念,如果存在一个多项式的学习算法能够学习它,学习的正确率仅比随机猜测略好,就称这个概念是若可学习的。

基本思路

基于这样一种思想:对于一个复杂的任务而言,将多个专家的判断进行适当的综合,所得到的判断,要比其中任何一个专家单独判断要好。

提升的办法:从弱可学习算法出发,反复学习,得到一系列弱分类器,然后组合这些弱分类器,构成一个强分类器。大多数的提升方法都是改变训练数据的概率分布(训练数据的权值分布),针对不同的训练数据分布调用弱学习算法学习一系列弱分类器

两个问题

  1. 如何改变数据的权值或概率分布
    提高那些被前一轮弱分类器错误分类样本的权值,而降低那些被正确分类样本的权值。如此:那么没有得到正确分类的样本,由于其权重提升,会在后一轮的训练中受到更大的关注
  2. 如何将弱分类器组合成一个强分类器
    采取加权多数表决的方法。即每个弱分类器有其自己的权重。弱分类的误差越小,其权重越大。

AdaBoost算法步骤

输入:训练数据集T={(x1,y1),(x2,y2),…,(xn,yn)}。其中xi是样本的属性集,yi是样本的标签。
输出:最后的分类器G(x)

  1. 初始化训练数据集的权值分布。
    在这里插入图片描述即:一开始认为数据集中的每一条数据具有相同的权重。

  2. 对于m = 1,2,3,…,M,AdaBoost反复学习基本分类器
    2.1 使用具有权值分布Dm的训练数据集学习,得到基本分类器Gm。这里以二分类为例:
    在这里插入图片描述2.2 计算Gm(x)在训练数据集上的分类误差率;
    在这里插入图片描述在这里插入图片描述

其中Wmi是第m个弱分类器中,第i个数据的权重。从第二个式子中,我们可以看出Gm(x)在加权的训练数据集上的分类误差是被Gm(x)误分类样本的权值之和。

2.3 计算Gm(x)的系数
在这里插入图片描述这里的对数就自然对数,公式图形如下:
在这里插入图片描述2.4 更新训练数据集的权值分布
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200828133130377.png#pic_cente在这里插入图片描述

这里的Zm是规范化因子
在这里插入图片描述使Dm+1成为一个新的概率分布

  1. 构建基本分类器的线性组合
    在这里插入图片描述**注意:这里的am之和并不为1。**得到最终的分类器:
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值