1.Adaboost的原理
Adaboost是一种迭代算法,针对同一个训练集中的不同分类器,然后把这些弱分类器集合起来,构成一个更强的最终分类器。(Adaptive boosting)自适应增强算法,擅长处理分类问题、标签问题和回归问题,用于数据分类问题较为多见。对于分类器而言,它是基于测试过程中错误反馈调节的分类器的分类效果。
2.算法的流程
算法实际上是一个简单的弱分类算法的提升过程,通过不断的训练,从而提高数据的分类能力。具体来说,整个算法的流程可以分为3步:
1.初始化训练集的权值分布,若训练集中有N个样本,则每个样本的权值为 1/N;
2.在训练的过程中,如果某个样本被正确分类,那么在下一轮的训练中,这个样本的权值就会减小,相反,若某个样本没有被正确分类,那么在下一轮这个样本的权值就会增加,所有权值变更过的样本在下一轮中又会重新训练,不断的进行迭代下去。
3.最后是将各个训练的弱分类器组合成强分类器,根据弱分类器的误差来判断权值,若弱分类器的误差率较大,那么在最终的强分类器中,它的权值就会较小,反之,误差率较小的,那么权值就会较大。
具体流程:
给定一个训练数据集T={(x1,y1),(x2,y2),...(xN,yN)},其中的实例 x∈X,而实例空间X∈R,y属于标记集合{-1,+1},
步骤1:初始化训练数据的权值分布,每一个初始化训练样本的权值为 1/N