串行生成,只适用二分类(做回归用别的更新公式?)
工作机制:
- 先从初始训练集中学习一个基学习器
- 根据基学习器的表现对训练样本分布进行调整,做错的提高权重,对的降低权重
- 基于调整后的样本分布来训练下一个基学习器
- 如此反复,直到基学习器数目达到T,最终将这T个基学习器进行加权结合
对训练样本分布调整,主要是通过增加误分类样本的权重,降低正确分类样本的权重。
面临两个问题:
(1)在每一轮,如何改变训练数据的概率分布或者权值分布。(也可以重采样,但是AdaBoost没这么做)
(2)如何将弱分类器组合成强分类器
AdaBoost的做法:
(1)提高分类错误的的权重,降低正确的权重
(2)采用加权多数表决,加大分类错误率低的分类器的权值,使其在表决中起较大作用
弱分类器被线性组合成为一个强分类器。
最小化损失函数:
- 分类器权重更新公式
- 样本权重更新公式
- 加性模型,最小化损失函数
优缺:不改变所给的训练数据,而不断改变训练数据的权值分布,使得训练数据在基本分类器的学习中起不同的作用。
控制迭代次数可防止过拟合
对异常敏感,噪声大的会获得高权重