集成学习先产生一组个体学习器(individual learner),再用某种策略将它们结合起来。

    当所有个体学习器都由同样的学习算法生成时,也即集成中只包含同种类型的个体学习器时,称为同质(homogeneous)集成,这些个体学习器又被称为基学习器(base learner),相应的学习算法称为基学习算法(base learning algorithm)

    当个体学习器由不同的学习算法生成时,称为异质(heterogenous)集成,这些个体学习器称为组件学习器(component learner)或直接称为个体学习器。

    集成学习通过结合多个学习器,通常能获得比单一学习器更优越的泛化性能,对弱学习器(weak learner)的提升尤为明显。注:弱学习器即略优于随机猜测的学习器,例如二分类任务中精度略高于50%。虽然理论上,集成弱学习器已经能获得很好的性能。但现实任务中,人们往往会使用比较强的学习器。

    当我们使用集成学习的时候,我们其实是希望不同的个体学习器产生互补的效果,使得某个学习器错误的地方能有机会被其他学习器纠正过来,这就要求个体学习器应该尽量“不同”,即具有多样性;同时我们希望这种互补不会把正确改为错误,这就要求个体学习器应该尽量“准确”。合起来就是集成学习研究的核心——如何产生并结合“好而不同”的个体学习器

    根据个体学习器的生成方式,集成学习方法大致可分为两个大类:

    • 个体学习器间存在强依赖关系,必须串行生成的序列化方法,例如:Boosting算法族;
    • 个体学习器间不存在强依赖关系,可同时生成的并行化方法,例如:Bagging,随机森林;