您的位置:首页 > 其它

数据挖掘之Adaboost学习笔记

2015-06-04 20:17 423 查看
所谓“众人拾柴火焰高”,“三个臭皮匠抵个诸葛亮”,集成学习机的泛化能力一般明显好于单一的学习器。那么Adaboost算法就是基于这样的思想产生的。

boosting方法的代表Adaboost是一个以单层决策树分类器为弱分类器基础,将他们组合在一起,从而组成一个高性能的可与svm相提并论的分类器。它的自适应在于:前一个基本分类器分错的样本会得到加强,加权后的全体样本再次被用来训练下一个基本分类器。同时,在每一轮中加入一个新的弱分类器,直到达到某个预定的足够小的错误率或达到预先指定的最大迭代次数。

AdaBoost算法针对不同的训练集训练同一个基本分类器(弱分类器),然后把这些在不同训练集上得到的分类器集合起来,构成一个更强的最终的分类器(强分类器)。理论证明,只要每个弱分类器分类能力比随机猜测要好,当其个数趋向于无穷个数时,强分类器的错误率将趋向于零。

AdaBoost算法中不同的训练集是通过调整每个样本对应的权重实现的。最开始的时候,每个样本对应的权重是相同的,在此样本分布下训练出一个基本分类器h1(x)。对于h1(x)错分的样本,则增加其对应样本的权重;而对于正确分类的样本,则降低其权重。这样可以使得错分的样本突出出来,并得到一个新的样本分布。同时,根据错分的情况赋予h1(x)一个权重,表示该基本分类器的重要程度,错分得越少权重越大。在新的样本分布下,再次对基本分类器进行训练,得到基本分类器h2(x)及其权重。依次类推,经过T次这样的循环,就得到了T个基本分类器,以及T个对应的权重。最后把这T个基本分类器按一定权重累加起来,就得到了最终所期望的强分类器。

简单来说,Adaboost有很多优点:

1)adaboost是一种有很高精度的分类器

2)可以使用各种方法构建子分类器,adaboost算法提供的是框架

3)当使用简单分类器时,计算出的结果是可以理解的。而且弱分类器构造极其简单

4)简单,不用做特征筛选

5)不用担心overfitting!

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

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

训练弱分类器。具体训练过程中,如果某个样本点已经被准确地分类,那么在构造下一个训练集中,它的权值就被降低;相反,如果某个样本点没有被准确地分类,那么它的权值就得到提高。然后,权值更新过的样本集被用于训练下一个分类器,整个训练过程如此迭代地进行下去。
将各个训练得到的弱分类器组合成强分类器。各个弱分类器的训练过程结束后,加大分类误差率小的弱分类器的权重,使其在最终的分类函数中起着较大的决定作用,而降低分类误差率大的弱分类器的权重,使其在最终的分类函数中起着较小的决定作用。换言之,误差率低的弱分类器在最终分类器中占的权重较大,否则较小。

AdaBoost算法的具体描述如下:
假定X表示样本空间,Y表示样本类别标识集合,假设是二值分类问题,这里限定Y={-1,+1}。令S={(Xi,yi)|i=1,2,…,m}为样本训练集,其中Xi∈X,yi∈Y。
① 始化m个样本的权值,假设样本分布Dt为均匀分布:Dt(i)=1/m,Dt(i)表示在第t轮迭代中赋给样本(xi,yi)的权值。
② 令T表示迭代的次数。
③ For t=1 to T do
根据样本分布Dt,通过对训练集S进行抽样(有回放)产生训练集St。
在训练集St上训练分类器ht。
用分类器ht对原训练集S中的所有样本分类。
得到本轮的分类器ht:X →Y,并且有误差εt=Pri-Di[ht(xi) ≠yi]。




这个a1代表h1(x)在最终的分类函数中所占的权重。

更新每个样本的权值



其中,Zt是一个正规因子,用来确保ΣiDt+1(i)=1。
end for
④ 最终的预测输出为:





总结:
单层决策树桩,decision stump,他是Adaboost中最流行的弱分类器,当然并非是唯一可用的弱分类器。实际上,任意分类器都可以作为基分类器。算法第一步之后,会输出一个单层决策树的数组,长度为m,并建立一个列向量D;
向量D非常重要,它包含了每个数据点的权重,一开始这些权重都赋予了相等的权重1/m。在后续的迭代中,Adaboost算法会在增加错分数据的权重的同事,降低正确分类数据的权重,D是一个概率分布向量,因此所有元素的和为1。
Adaboost算法的核心在于for循环,该循环运行T次(该T也是用户要输入的参数),或是在训练错误率为零时停止。循环第一件事是简历一个单层决策树,然后输入权重向量D。接下来,需要计算的是alpha值。该值会告诉总分类此本次单层决策树输出结果的权重。
这种针对错误的调节能力是Adaboost的长处。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: