前言
集成学习(ensemble learning)是机器学习中的一大类算法。常规的学习器往往靠“一己之力”完成回归或分类任务,而集成学习主要是利用“以多胜少”的思想,训练多个分类器共同完成一个任务,常可获得比单一学习器显著优越的泛化性能。集成学习的思想主要分为Boosting,Bagging与Stacking,这篇笔记,我们主要聚焦Boosting的思想。
Boosting
Boosting是一族将弱学习器提升为强学习器的算法。顾名思义,Boosting是在原有学习器的基础上进行提升,所以它先从初识训练集训练一个学习器,再根据它的表现学习下一个学习器,使得两个学习器的综合性能较原有学习器更强,如此重复进行,直到学习 T 个学习器,最终的分类或回归结果是这 T 个学习器的加权结合。
因此,Boosting算法可以看为是一个逐步完善的过程,也正是因为如此,Boosting算法只能在前序学习器训练完毕之后,才开始训练下一学习器,因此它是“串行”训练的。
Boosting只是一种集成方法,并不依赖于实际学习器的选择,学习器可以是神经网络、决策树等其中的一种或多种。