@gump88
2016-08-13T20:49:15.000000Z
字数 1885
阅读 9987
MachineLearning
AdaBoost算法是Adaptive Boost的简称,Boosting通过将一系列弱学习器组合起来,通过集成这些弱学习器的学习能力,得到一个强学习器。具体到AdaBoost算法,AdaBoost在之前学习器的基础上改变样本的权重,增加那些之前被分类错误的样本的比重,降低分类正确样本的比重,这样之后的学习器将重点关注那些被分类错误的样本。最后通过将这些学习器通过加权组合成一个强学习器,具体的,分类正确率高的学习器权重较高,分类正确率低的学习器权重较低。
这里有几个地方的计算需要注意,一个是分类误差率的计算,一个是分类器系数的计算,还有就是权重向量的更新计算。
输入:
训练集
输出:最终学习器
计算分类器权重系数
更新权重向量
线性组合成强学习器
前向分步算法是学习加法模型的算法。他的思路是,每一步在前一步的基础上,最小化经验风险,学习该步的基函数和系数。具体到AdaBoost算法就是:AdaBoost是模型是加法模型,学习算法是前向分步算法,损失函数是指数损失函数。
损失函数:
令
显而易见,就是错误率,这与前面的Adaboost算法是一致的。