Boosting 算法

Boositng 是可以将弱学习器(泛化性能略优于随机猜测的学习器)提升为强学习器的一类集成学习算法。基本工作机制如下

  • 从初始训练集训练出一个基学习器 ,评估 性能,并计算 的权重
  • 基于 对训练样本分布进行调整,即区别在 中做对和做错的训练样本
  • 基于调整后的样本分布来训练下一个基学习器
  • 如此重复进行,直至基学习器数目达到事先指定的值
  • 最终将这 个基学习器进行加权结合

Boosting 算法要求基学习器能对特定的数据分布进行学习,这可通过「重赋权法」实施,即在训练的每一轮中,根据样本分布为每一个训练样本重新赋予一个权重,对于无法接受带权样本的基学习算法,则可通过「重采样法」进行处理,即在每一轮学习中,根据样本分布对训练集重新进行采样,再用重采样得到的样本集对基学习器进行训练。

从偏差——方差分解的角度看,Boosting 主要关注降低偏差,因此 Boosting 能给予泛化性能相当弱的学习器构建出很强的集成。

Boosting 算法最著名的代表是AdaBoost