一、什么是集成学习
集成学习在机器学习算法中具有较高的准确率,不足的就是模型训练比较复杂,效率不高。
Boosting主要有:Adaboost、GBDT、XGBoost
Bagging主要有:Random Forest
集成学习的思想:
集成学习的主要思想是构建出多个弱分类器,它们共同组合对任务进行预测。核心思想就是如何训练多个弱分类以及如何将它们组合。
为什么有提出集成学习呢?
假如没有集成学习,那意味着在解决一任务时,我们必须训练出一个强分类器,构建一个强分类器非常复杂与困难。但是构建弱分类器就非常简单,所以有人提出通过一系列的弱分类器的共同作用来完成强分类器的作用
1、Bagging
在Bagging中,通过对训练样本的重新采用的方法得到不同的训练样本,在这些新的训练样本集上分别训练分类器,最终合并每一个分类器的结果,作为最终的学习结构。具体过程如下图所示。
在Bagging中,b个分类器是彼此相互独立,并具有相同的权重,所以可以把Bagging的方法理解成并行的。
2、Boosting
在Boosting算法中,各个分类器存在先后的顺序,同时,每个样本都有其的权重,初始时每个样本的权重是相等的。
算法流程:首先,第一个分类器对训练样本进行学习,当学习完成后,增大错误样本的权重,同时减少正确样本的权重,再利用第二个分类器对样本集(其样本权重以发生改变)进行学习,依次进行下去,最终得到b个学习器。同时,与Bagging不同,每一个分类器具有不同的权重。