热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

集成学习原理总结(bagging\boosting)

转载:集成学习原理总结前言集成学习是目前比较火的机器学习方法,也是面试官考察的一个重点方向。集成学习不是一种机器学习方法,它是通过结合

转载:集成学习原理总结

前言

集成学习是目前比较火的机器学习方法,也是面试官考察的一个重点方向。集成学习不是一种机器学习方法,它是通过结合多个机器学习模型来给出学习结果,集成学习很好的避免了单一学习模型带来的过拟合问题,本文简明扼要的对集成学习原理做一个总结。

目录

1. 集成学习概述

2. 集成学习之bagging

3. 集成学习之boosting

4. 集成学习之结合策略

5. bagging和boosting两者之间的区别

6. bagging和boosting的方差和偏差问题讨论

7. 总结

集成学习概述

集成学习能够通过训练数据集产生多个学习模型,然后通过一定的结合策略生成强学习模型,如下图:

集成学习包括Bagging方法和Boosting方法,下面详细分析这两种方法。

集成学习之Bagging

Bagging即套袋法,算法过程如下:

(1) 从训练样本集中随机可放回抽样(Bootstrapping )N次,得到与训练集相同大小的训练集,重复抽样K次,得到K个训练集 。

(2) 每个训练集得到一个最优模型,K个训练集得到K个最优模型。

(3) 分类问题:对K个模型采用投票的方式得到分类结果;回归问题:对K个模型的值求平均得到分类结果。

Bagging算法图如下:

 

Bagging法假设训练样本集服从均匀分布,即1/N。

集成学习之Boosting

Boosting算法中,每一个样本数据是有权重的,每一个学习器是有先后顺序的。在PAC(概率近似正确)的学习框架下,一定可以将弱分类器组装成一个强分类器。

关于Boosting的两个核心问题

(1)每一轮如何改变训练数据的权值和概率分布?

通过提高那些在前一轮被弱学习器分错样例的权值,减小前一轮正确样例的权值,使学习器重点学习分错的样本,提高学习器的性能。

(2)通过什么方式来组合弱学习器?

通过加法模型将弱学习器进行线性组合,学习器准确率大,则相应的学习器权值大;反之,则学习器的权值小。即给学习器好的模型一个较大的确信度,提高学习器的性能。

Boosting算法如下图:

其中,学习器性能越好,对应的权值也越大。样本权值1初始化为1/N,即初始样本集服从均匀分布,后面随着前一个学习器的结果更新样本权值。

集成学习之结合策略

集成学习得到多个学习器后,结合策略得到最终的结果。通常用到最多的是平均法,投票法和学习法。

1. 平均法

对于数值类的回归预测,通常使用的结合策略是平均法,即对K个学习器的学习结果求平均,得到最终的预测结果。

2. 投票法

对于分类问题的预测,通常使用的结合策略是投票法,也就是我们常说的少数服从多数。即对K个学习器的分类结果作一个统计,出现次数最多的类作为预测类。

3. 学习法

上面两种结合策略方法比较简单,可能学习误差较大。因此,我们尝试用学习法去预测结果,学习法是将K个学习器的分类结果再次作为输入,将训练集的输出作为输出,重新训练一个学习器来得到最终结果。

Bagging和Boosting两者之间的区别

1)训练样本集

Bagging:训练集是有放回抽样,从原始集中选出的K组训练集是相互独立的。

Boosting:每一次迭代的训练集不变。

2)训练样本权重

Bagging:每个训练样本的权重相等,即1/N。

Boosting:根据学习器的错误率不断调整样例的权值,错误率越大,权值越大。

3)预测函数的权重:

Bagging:K组学习器的权重相等,即1/K。

Boosting:学习器性能好的分配较大的权重,学习器性能差的分配较小的权重。

4)并行计算

Bagging:K组学习器模型可以并行生成。

Boosting:K组学习器只能顺序生成,因为后一个模型的样本权值需要前一个学习器模型的结果。

Bagging和Boosting的方差和偏差问题讨论

其实这一节内容也属于上一节部分,这是个容易忽视且比较抽象的问题,我把Bagging和Boosting的方差和偏差问题作一个新的小节,希望引起大家的注意。

1. Bagging减小模型的方差

bagging对样本进行有放回的重采样,学习结果是各个学习模型的平均值。由于重采样的样本集具有相似性以及使用相同的学习器模型,因此,各学习模型的结果相近,即模型有近似相等的偏差和方差。

假设Xi为 i 组训练样本集,各组训练样本集是相互独立的,不同的训练样本集代表不同的模型,由概率论可知:

大家发现了没有,均值没变,但是方差却减小到只有原来方差的。因此,Bagging法是显著的减小了学习器的方差。

2. Boosting是减小模型的偏差

Boosting是从学习模型的优化角度去更新样本权值和分配学习器权值,因此,学习模型随着迭代次数的增加,模型偏差越来越小。Boosting是通过迭代的方式去更新模型,因此各个子模型的之间是强相关的,强相关的意思是各模型的相似度很多,且训练集一直是不变的。因此模型之和并不能降低方差。

总结

Bagging和Boosting方法都是把若干个学习器整合为一个学习器的方法,Bagging方法可以降低模型的方差,Boosting方法可以降低模型的偏差,在实际工作中,因情况需要选择集成方法。

下面是决策树与这些算法框架进行结合所得到的新的算法:

1) Bagging + 决策树 = 随机森林

2)AdaBoost + 决策树 = 提升树

3)Gradient Boosting + 决策树 = GBDT

 

 

 


推荐阅读
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 机器学习算法:SVM(支持向量机)
    SVM算法(SupportVectorMachine,支持向量机)的核心思想有2点:1、如果数据线性可分,那么基于最大间隔的方式来确定超平面,以确保全局最优, ... [详细]
  • 本文节选自《NLTK基础教程——用NLTK和Python库构建机器学习应用》一书的第1章第1.2节,作者Nitin Hardeniya。本文将带领读者快速了解Python的基础知识,为后续的机器学习应用打下坚实的基础。 ... [详细]
  • 非计算机专业的朋友如何拿下多个Offer
    大家好,我是归辰。秋招结束后,我已顺利入职,并应公子龙的邀请,分享一些秋招面试的心得体会,希望能帮助到学弟学妹们,让他们在未来的面试中更加顺利。 ... [详细]
  • 本文介绍如何使用OpenCV和线性支持向量机(SVM)模型来开发一个简单的人脸识别系统,特别关注在只有一个用户数据集时的处理方法。 ... [详细]
  • 如何撰写数据分析师(包括转行者)的面试简历?
    CDA数据分析师团队出品,作者:徐杨老师,编辑:Mika。本文将帮助您了解如何撰写一份高质量的数据分析师简历,特别是对于转行者。 ... [详细]
  • 在2019中国国际智能产业博览会上,百度董事长兼CEO李彦宏强调,人工智能应务实推进其在各行业的应用。随后,在“ABC SUMMIT 2019百度云智峰会”上,百度展示了通过“云+AI”推动AI工业化和产业智能化的最新成果。 ... [详细]
  • 非线性门控感知器算法的实现与应用分析 ... [详细]
  • 在机器学习领域,深入探讨了概率论与数理统计的基础知识,特别是这些理论在数据挖掘中的应用。文章重点分析了偏差(Bias)与方差(Variance)之间的平衡问题,强调了方差反映了不同训练模型之间的差异,例如在K折交叉验证中,不同模型之间的性能差异显著。此外,还讨论了如何通过优化模型选择和参数调整来有效控制这一平衡,以提高模型的泛化能力。 ... [详细]
  • 深入解析监督学习的核心概念与应用
    本文深入探讨了监督学习的基本原理及其广泛应用。监督学习作为机器学习的重要分支,通过利用带有标签的训练数据,能够有效构建预测模型。文章详细解析了监督学习的关键概念,如特征选择、模型评估和过拟合问题,并介绍了其在图像识别、自然语言处理等领域的实际应用。 ... [详细]
  • 独家解析:深度学习泛化理论的破解之道与应用前景
    本文深入探讨了深度学习泛化理论的关键问题,通过分析现有研究和实践经验,揭示了泛化性能背后的核心机制。文章详细解析了泛化能力的影响因素,并提出了改进模型泛化性能的有效策略。此外,还展望了这些理论在实际应用中的广阔前景,为未来的研究和开发提供了宝贵的参考。 ... [详细]
  • 支持向量机(SVM)在机器学习中的应用与学习心得
    支持向量机(SVM)是一种高效的二分类模型,其核心目标是通过寻找最优超平面来区分不同类别的数据点。在实际应用中,SVM能够有效地处理高维数据,并通过核技巧扩展到非线性分类问题。当新的数据点输入时,SVM会根据其相对于超平面的位置来判定其所属类别。训练过程中,SVM通过最大化间隔来确定最优超平面,从而提高模型的泛化能力。本文总结了SVM在机器学习中的应用及其学习心得,探讨了其在实际问题中的优势和局限性。 ... [详细]
  • 能够感知你情绪状态的智能机器人即将问世 | 科技前沿观察
    本周科技前沿报道了多项重要进展,包括美国多所高校在机器人技术和自动驾驶领域的最新研究成果,以及硅谷大型企业在智能硬件和深度学习技术上的突破性进展。特别值得一提的是,一款能够感知用户情绪状态的智能机器人即将问世,为未来的人机交互带来了全新的可能性。 ... [详细]
  • 美团优选推荐系统架构师 L7/L8:算法与工程深度融合 ... [详细]
  • 妻子指导我深入学习机器算法 ... [详细]
author-avatar
_ZY寶貝_
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有