【模式识别】Boosting

本文介绍了Boosting中的Adaptive Boosting(AdaBoost),它通过组合弱分类器形成强分类器。重点讲解了Discrete AdaBoost的训练流程,包括初始化权重、训练弱分类器、调整错误率权重等步骤。还提到了Real AdaBoost和Gentle AdaBoost作为Discrete AdaBoost的变种,以及它们的区别。AdaBoost在人脸识别等领域有广泛应用。

Boosting简介

分类中通常使用将多个弱分类器组合成强分类器进行分类的方法,统称为集成分类方法(Ensemble Method)。比较简单的如在Boosting之前出现Bagging的方法,首先从从整体样本集合中抽样采取不同的训练集训练弱分类器,然后使用多个弱分类器进行voting,最终的结果是分类器投票的优胜结果。这种简单的voting策略通常难以有很好的效果。直到后来的Boosting方法问世,组合弱分类器的威力才被发挥出来。Boosting意为加强、提升,也就是说将弱分类器提升为强分类器。而我们常听到的AdaBoost是Boosting发展到后来最为代表性的一类。所谓AdaBoost,即Adaptive Boosting,是指弱分类器根据学习的结果反馈Adaptively调整假设的错误率,所以也不需要任何的先验知识就可以自主训练。Breiman在他的论文里赞扬AdaBoost是最好的off-the-shelf方法。

两类Discrete AdaBoos算法流程

AdaBoosting方法大致有:Discrete Adaboost, Real AdaBoost, LogitBoost, 和Gentle AdaBoost。所有的方法训练的框架的都是相似的。以Discrete Adaboost为例,其训练流程如下:

首先初始化每个样本相同的权重(步骤2);之后使用加权的样本训练每个弱分类器 (步骤3.1);分类后得到加权的训练错误率和比例因子 (步骤3.2);将被错误分类的样本的权重加大,并将修改后的权重再次归一化(步骤3.3);循环训练过程,最终使用比例因子 组合组合弱分类器构成最终的强分类器。
下面看一个更形象的图,多个弱分类器的组合过程和结果大致为:

 

训练的循环过程,加重被错误分类的样本的权重是一种有效的加速训练的方法。由于训练中正确率高的弱分类器权重较大,新一轮的训练中正确分类的样本会越来越多,权重较小的训练样本对在新一轮的训练中起作用较小,也就是,每一轮新的训练都着重训练被错误分类的样本。

实际训练中弱分类器是一样的,但弱分类器实际使用的训练数据不同,通常使用特征向量的每一维分别构成一个弱分类器。而后来大名鼎鼎的Haar+Adaboost人脸检测方法是使用每种Haar特征构成一个弱分类器,基于Block的Haar特征比简单的基于pixel的特征有带有更多的信息,通常能得到更好的检测效果,而积分图Integral的方法使其在计算速度上也有很大优势。有兴趣可参考《基于Adaboost和Haar-like特征人脸识别》。

Real AdaBoost和Gentle AdaBoost

Discrete Adaboost是最简单的两类Boosting分类结果,而后续的Real AdaBoost(也称为AdaBoost.MH)可以看做Discrete Adaboost的泛化形式,弱分类器可以输出多个分类结果,并输出这几个分类结果的可能性,可以看成每个弱分类器都更不“武断”。而Gentle AdaBoost则是修改了迭代训练过程中错误样本权重调整的方法,较少地强调难以分类的样本,从而避免了原本AdaBoost对”非典型”的正样本权值调整很高而导致了分类器的效率下降的情况。,而产生的变种算法。AdaBoost的Matlabe工具箱GML_AdaBoost_Matlab_Toolbox实现了Real AdaBoost, Gentle AdaBoost和Modest AdaBoost,且有个概况明了的介绍(工具箱的使用内部用手册,也可以参考下一篇《CART和GML AdaBoost Matlab Toolbox》):

至于LogitAdaBoost我其实不太了解,具体可参考《OpenCV关于AdaBoost的一些说明》。

 

 

 

 

(转载请注明作者和出处:http://blog.csdn.net/xiaowei_cqu 未经允许请勿用于商业用途)

 

评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值