集成学习的概念
集成学习简单来说就是通过构建并结合多个学习器来完成学习任务。
集成学习的一般结构是先产生一组“个体学习器”,在通过一定的策略把它们结合起来结构如下图所示:
集成学习能够通过将多个学习器结合起来,常可获得比单一学习器显著优越的泛化能力,对‘弱分类器‘(常指分化能力略优于随机猜测的学习器)尤为明显,因此集成学习的很多理论研究都是针对弱学习器进行的,而基学习器有时直接成为是弱分类器。
在一般经验下中如果把好坏不等的东西掺杂在一起,那么通常结果会是比再坏的差,比最好的坏,那么集成学习如何获得比单一学习器更好的性能呢?
通过两点,一要保证个体学习器有一定的准确性,二要保证个体学习器的多样性,避免相同产生的简单叠加而不起作用,通过下图我们可以清楚的理解这两点:
个体学习器的概念
个体学习器通常是由现有的算法从训练数据中产生,例如C4.5决策树算法,BP神经网络算法等。通常有两种形势:同质和异质,同质即是通过同一种算法残生的多个不同的学习器如(通过决策树算法产生多个学习器,那么这些学习器就是同质的);异质即是通多多种算法生成多个不同的学习器(通过决策树和BP神经网络,SVM产生的多个分类器集成起来,这些分类器即是异质学习器)
boosting和bagging
Bagging和Boosting都是将已有的分类或回归算法通过一定方式组合起来,形成一个性能更加强大的分类器,更准确的说这是一种分类算法的组装方法。即将弱分类器组装成强分类器的方法。
首先介绍Bootstraping,即自助法:它是一种有放回的抽样方法(可能抽到重复的样本):
1、Bagging (bootstrap aggregating)
Bagging即套袋法,其算法过程如下:
A)从原始样本集中抽取训练集。每轮从原始样本集中使用Bootstraping的方法抽取n个训练样本&#x