什么是集成学习?

在监督学习算法中,我们希望训练得到的模型是一个各方面都稳定表现良好的模型,但是实际情况中却往往得到的是在某方面有偏好的模型。集成学习则可以通过多个学习器相结合,来获得比单一学习器更优越的泛化性能。
集成学习是指通过构建并结合多个学习器来完成学习任务的分类系统,根据个体学习器是否为同一类可以分为同质集成异质集成

集成学习获得较好泛化性能的原理
一般集成学习会通过重采样获得一定数量的样本,然后训练多个弱学习器(分类精度稍大于50%),采用投票法,即“少数服从多数”原则来选择分类结果,当少数学习器出现错误时,也可以通过多数学习器来纠正结果。

举个简单的例子:
什么是集成学习?_第1张图片
从图片中可以看出: h1 h 1 h2 h 2 h3 h 3 三个学习器集成在a图情况下可以得到较好泛化性能,在c图情况下性能还不如单个学习器。我们可以得出一个重要的结论,集成学习强度基学习器具有“好而不同”的特性,但是这个特性却是矛盾的,因为一个好的学习肯定泛化性能好,那么本身的“多样性”就较差,所以如何产生一组性能较好而且偏好不同的基学习器就是集成学习方法的核心。

集成学习分类
目前根据个体学习器的生成方式,集成学习可以分为两大类:
1)个体学习器之间存在较强的依赖性,必须串行生成的序列化方法:boosting类算法;
2)个体学习器之间不存在强依赖关系,可以并行生成学习器:bagging和随机森林

你可能感兴趣的:(机器学习理论)