今天爱分享给大家带来什么是集成学习(Ensemble Learning)【机器学习】,希望能够帮助到大家。
在机器学习的有监督学习算法中,我们的目标是学习出一个稳定的且在各个方面表现都较好的模型,但实际情况往往不这么理想,有时我们只能得到多个有偏好的模型(弱监督模型,在某些方面表现的比较好)。集成学习就是组合这里的多个弱监督模型以期得到一个更好更全面的强监督模型,集成学习潜在的思想是即便某一个弱分类器得到了错误的预测,其他的弱分类器也可以将错误纠正回来。
集成学习方法是将几种机器学习技术组合成一个预测模型的元算法,以达到减小方差(bagging)、偏差(boosting)或改进预测(stacking)的效果。
集成学习在各个规模的数据集上都有很好的策略。
数据集大:划分成多个小数据集,学习多个模型进行组合
数据集小:利用Bootstrap方法进行抽样,得到多个数据集,分别训练多个模型再进行组合
集合方法可分为两类:
序列集成方法,其中参与训练的基础学习器按照顺序生成,个体学习器有强依赖关系(例如 AdaBoost)。序列方法的原理是利用基础学习器之间的依赖关系。通过对之前训练中错误标记的样本赋值较高的权重,可以提高整体的预测效果。
并行集成方法,其中参与训练的基础学习器并行生成,个体学习器无强依赖关系(例如 随机森林Random Forest)。并行方法的原理是利用基础学习器之间的独立性,通过平均可以显著降低错误。
总结一下,集成学习法的特点:
① 将多个分类方法聚集在一起,以提高分类的准确率。(这些算法可以是不同的算法,也可以是相同的算法)
② 集成学习法由训练数据构建一组基分类器,然后通过对每个基分类器的预测进行投票来进行分类。
③ 严格来说,集成学习并不算是一种分类器,而是一种分类器结合的方法。
④ 通常一个集成分类器的分类性能会好于单个分类器。
⑤ 如果把单个分类器比作一个决策者的话,集成学习的方法就相当于多个决策者共同进行一项决策。