引用:https://github.com/datawhalechina/Daily-interview/blob/master/machine-learning/Adaboost.md#21-adaboost-步骤概览
Adaboost 步骤概览
① 初始化训练样本的权值分布,每个训练样本的权值应该相等(如果一共有N个样本,则每个样本的权值为1/N)
② 依次构造训练集并训练弱分类器。如果一个样本被准确分类,那么它的权值在下一个训练集中就会降低;相反,如果它被分类错误,那么它在下个训练集中的权值就会提高。权值更新过后的训练集会用于训练下一个分类器。
③ 将训练好的弱分类器集成为一个强分类器,误差率小的弱分类器会在最终的强分类器里占据更大的权重,否则较小。
(1)分类器的权重系数α实际上是通过最小化指数损失函数的得到的,如果想了解 α 的 推导过程可以参考 Schapire 论文原文或者周志华《机器学习》8.2节内容。
(2)对于无法接受带权样本的基学习算法,可以通过重采样resampling来产生训练集,这也是为什么之前说Adaboost可以理解为基于概率分布来选取样本。拿上面的例子来说,详细做法是:10个样本中每个样本被抽中的概率是Pi(i=1,…,10),现在按抽取概率连续做10次可放回的样本抽取,得到训练集即可训练出一个分类器。
(3)adaboost的灵魂在于其样本权重更新(样本权重模拟了概率分布)的方法 以及 弱分类器加权组合。
(4)简述一下 Adaboost 的权值更新方法。
答:参考上面的算法介绍。
(5)训练过程中,每轮训练一直存在分类错误的问题,整个Adaboost却能快速收敛,为何?
答:每轮训练结束后,AdaBoost 会对样本的权重进行调整,调整的结果是越到后面被错误分类的样本权重会越高。而后面的分类器为了达到较低的带权分类误差,会把样本权重高的样本分类正确。这样造成的结果是,虽然每个弱分类器可能都有分错的样本,然而整个 AdaBoost 却能保证对每个样本进行正确分类,从而实现快速收敛。
(6) Adaboost 的优缺点?
答:优点:能够基于泛化性能相当弱的的学习器构建出很强的集成,不容易发生过拟合。
缺点:对异常样本比较敏感,异常样本在迭代过程中会获得较高的权值,影响最终学习器的性能表现。
(7)AdaBoost 与 GBDT 对比有什么不同?
答:区别在于两者boosting的策略:Adaboost通过不断修改权重、不断加入弱分类器进行boosting;GBDT通过不断在负梯度方向上加入新的树进行boosting。
AdaBoost
最新推荐文章于 2021-10-04 16:50:57 发布