1.提升方法AdaBoost算法

AdaBoost的思想:是先得到一个弱分类器,然后在这个弱分类器的基础上将其提升到强分类器,具体方法是提升上一个分类器中被误分类的样本的权重,使得本次训练的分类器更加重视这些样本,最后的分类器是所有的分类器的线性组合。

AdaBoost先对所有划分选择出一个误分类最小的划分,得出一个分类器,分类器的权值
样本的权值也发生更新

也就是说前一次的训练的结果会被这次的分类器产生影响。
问:AdaBoost算法每一次训练的训练误差相对于上一轮是不是一定减少?
答:首先区分训练误差和训练误差率,训练误差

不同于分类误差率

,被上一轮分类错误的样本增加了它的权值,从而使得下一轮分类器的训练重视这些被上一轮分类器误分的样本,权值更高的样本更有可能被正确分类,那么相应的分类误差率一定减小,训练误差不一定减少。
延伸:分类误差率一定一直减少,那么样本权值

一定一直增加,所以可以确定前一轮的分类器的权值一定小于后一轮的权值, 一定小于

图片说明

2.AdaBoost算法的训练误差分析

我们知道训练误差率是不断减少的,那么训练误差也在学习过程中不断地减少(注意是学习过程中分类器的加法模型的训练误差一直减少,而后一个分类器的训练误差不一定比前一个分类误差的训练误差小)。训练误差是随着每加权一个弱分类器而减少的,那么我们要得出训练误差


的性质,就需要使其小于一个值


,推出后一个值的性质,就可以得出前者的性质,比如后者呈指数形式下降,前者小于后者,那么它也呈指数下降。同理,如果一个变量是一直增大的,那么要证明这个变量的性质,就要使其大于一个值,推出这个值得性质就可以得出变量的性质。

3.前向分布算法

前向分布算法的目标是训练一个加法模型
是从前向后,每一步只学习一个基函数及其系数,而平常的分布算法是从m=1到M所有参数
的优化问题简化为逐次求解各个 的优化问题
AdaBoost也可以从前向分布算法的角度来看,不过要设定基函数为基本分类器,损失函数为指数损失函数。它的每一轮的分类器的训练是为了拟合残差,第一轮是为了拟合样本数据,后面都是为了拟合残差。由前向分布算法可以推导出第一节的分类器权值和第m+1轮的样本权值