集成学习——Boosting之Ada-boost

1.1.1. Boosting

boosting是一个迭代的过程,用于自适应地改变训练样本的分布,使得基分类器聚焦在那些很难分的样本上。

boosting会给每个训练样本赋予一个权值,而且可以再每轮提升过程结束时自动地调整权值。开始时,所有的样本都赋予相同的权值1/N,从而使得它们被选作训练的可能性都一样。根据训练样本的抽样分布来抽取样本,得到新的样本集。然后,由该训练集归纳一个分类器,并用它对原数据集中的所有样本进行分类。每轮提升结束时,更新训练集样本的权值。增加被错误分类的样本的权值,减小被正确分类的样本的权值,这使得分类器在随后的迭代中关注那些很难分类的样本。

1.1.1.1. 迭代算法(Ada-boost)

具体来说,算法会为每个训练样本赋予一个权值。每次用训练完的新分类器标注各个样本,若某个样本点已被分类正确,则将其权值降低;若样本点未被正确分类,则提高其权值。权值越高的样本在下一次训练中所占的比重越大,也就是说越难区分的样本在训练过程中会变得越来越重要。 整个迭代过程直到错误率足够小或达到一定次数为止。

算法思路:

输入: 分类数据;弱算法组

输出: 分类结果 

1. 给训练数据集中的每一个样本赋予权重,权重初始化相等值,这些权重形成向量 D,一般初始化所有训练样例的权重为 1 / N,其中 N是样例数 

2. 在训练集上训练出弱分类器并计算该分类器的错误率 

3. 同一数据集上再次训练分类器,调整样本的权重,将第一次分对的样本权重降低,第一次分错的样本权重提高。 

4. 最后给每一个分类器分配一个权重值

5. 计算出后,可以对权重向量D进行更新,以使得正确分类的样本权重降低而错分样本的权重升高。D的计算方法如下:

6. 如果某个样本被正确分类,那么该样本的权重更改为:

7. 而如果某个样本被错分,那么该样本的权重更改为:

8. 计算出 D之后, Ada-boost又开始进入下一轮迭代。 Ada-boost算法会不断地重复训练和调整权的过程,直到训练错误率为 0者弱分类器的数目达到用户指定的值为止。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值