Boosting算法的工作机制是首先从训练集用初始权重训练出一个弱学习器1,根据弱学习的学习误差率表现来更新训练样本的权重,使得之前弱学习器1学习误差率高的训练样本点的权重变高,使得这些误差率高的点在后面的弱学习器2中得到更多的重视。然后基于调整权重后的训练集来训练弱学习器2.,如此重复进行,直到弱学习器数达到事先指定的数目T,最终将这T个弱学习器通过集合策略进行整合,得到最终的强学习器。
参考链接:
https://www.cnblogs.com/pinard/p/6133937.html
https://zhuanlan.zhihu.com/p/148620050
Adaboost的基本原理
1、在每一轮如何改变训练数据的权值或概率分布?
提高前一轮弱分类器错误分类样本的权值,而降低那些被正确分类样本的权值
2、如何将若分类器组合成一个强分类器?
采取加权多数表决法,加大分类误差率小的弱分类器的权值,使其在表决中起较大作用。减小分类误差率大的弱分类器的权值,使其在表决中起较小作用。
AdaBoost分类
AdaBoost回归
分类问题的解释
AdaBoost是模型为加法模型,学习算法为前向分步学习算法,损失函数为指数函数的分类问题。
算法流程
分类和回归问题中弱学习器系数和最终强学习器的集合策略不同。多分类与二分类问题在弱分类器系数上不同。
分类问题
回归问题
正则化
为了防止Adaboost过拟合,我们通常也会加入正则化项,这个正则化项我们通常称为步长(learning rate)。
优缺点
Adaboost的主要优点有:
1)Adaboost作为分类器时,分类精度很高
2)在Adaboost的框架下,可以使用各种回归分类模型来构建弱学习器,非常灵活。
3)作为简单的二元分类器时,构造简单,结果可理解。
4)不容易发生过拟合
Adaboost的主要缺点有:
1)对异常样本敏感,异常样本在迭代中可能会获得较高的权重,影响最终的强学习器的预测准确性。