adaboost总结

Adaboost 是集成学习中的一类,弱分类器之间存在强依赖性,必须串联。

标准Adaboost只能用于二分类

主要关注降低偏差


本文参考文章

算法分析 


 该算法其实是一个简单的弱分类算法提升过程,这个过程通过不断的训练,可以提高对数据的分类能   Adaboost
力。整个过程如下所示:   

       1. 先通过对N个训练样本的学习得到第一个弱分类器;   
       2. 将分错的样本和其他的新数据一起构成一个新的N个的训练样本,通过对这个样本的学习得到第二个弱分类器 ;   
       3. 将1和2都分错了的样本加上其他的新样本构成另一个新的N个的训练样本,通过对这个样本的学习得到第三个弱分类器;
  4. 最终经过提升的强分类器 。即某个数据被分为哪一类要通过 , ……的多数表决。

    Adaboost自适应在于:前一个基本分类器分错的样本会得到加强,加权后的全体样本再次被用来训练下一个基本分类器。同时,在每一轮中加入一个新的弱分类器,直到达到某个预定的足够小的错误率或达到预先指定的最大迭代次数。

具体说来,整个Adaboost 迭代算法就3步:

1、初始化训练数据的权值分布。 如果有N个样本,则每一个训练样本最开始时都被赋予相同的权重:1/N。

2、训练弱分类器。具体训练过程中,如果某个样本点已经被准确地分类,那么在构造下一个训练集中,它的权重就被降低;相反,如果某个样本点没有被准确地分类,那么它的权重就得到提高。然后,权重更新过的样本集被用于训练下一个分类器,整个训练过程如此迭代地进行下去。

备注:对于无法接受带权样本的基学习算法,可以通过重采样法来处理(即,在每一轮学习中,更具样本分布对训练集重新进行采样,再用重采样得到的样本继续进行下一轮的训练)

3、将各个训练得到的弱分类器组合成强分类器 。各个弱分类器的训练过程结束后,加大分类误差率小的弱分类器的权重,使其在最终的分类函数中起着较大的决定作用,而降低分类误差率大的弱分类器的权重,使其在最终的分类函数中起着较小的决定作用。换言之,误差率低的弱分类器在最终分类器中占的权重较大,否则较小。


猜你喜欢

转载自blog.csdn.net/u012063773/article/details/80724197
今日推荐