Bagging 和 Boosting理解、区别与联系

Bagging 和 Boosting都属于集成学习(ensemble learning)方法,即通过构建并结合多个学习器来完成学习任务。例如对于分类问题,我们可以学习多个弱分类器,然后根据一定的规则对各个弱分类器的结果进行整合,得到最终的分类结果。

1. Bagging

    Bagging是指采用Bootstrap(有放回的均匀抽样)的方式从训练数据中抽取部分数据训练多个分类器,每个分类器的权重是一致的,然后通过投票的方式取票数最高的分类结果最为最终结果。

    Bagging同样可以处理回归(regression)问题,只需将投票的方式改为求均值,即将各个弱分类器的结果的平均值作为最终结果。

                                             

2.Boosting

    Boosting是一族可将弱学习器提升为强学习器的算法。其工作机制为:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至基学习器数目达到事先指定的值T,最终将这T个基学习器进行加权结合。

                                             

3.Bagging 与 Boosting的区别

(1)训练样本

Bagging:通过Booststrap sampling(有放回的均匀抽样)的方式从训练集中出去数据训练各个弱分类器。

注:Bootstrap sampling方法:每当选中一个元组,这个元组同样也可能再次被选中并再次添加到训练集中。

Boosting:各个弱分类器的训练集不是独立的,每一个弱分类器的训练集都是其上一个弱分类器的学习结果,根据错误率进行取样(给予训练样本不同的权值)。

(2)分类器

Bagging:每个分类器都赋予相同的权重。

Boosting:每个分类器的权重是不同的,分类误差小的分类器将获得更大的权重。

(3)分类器的获取方式

Bagging:每个分类器可以并行生成。

Boosting:每个分类器只能依赖其上一个分类器的结果顺序生成。

(4)方差-偏差

从方差-偏差分解的角度看,Boosting 和 Bagging的主要区别如下

Bagging 主要关注降低方差,因此它在不剪枝决策树、神经网络等易受样本扰动的学习器上效用更为明显。

Boosting 主要关注降低偏差,因此Boosting能在基于泛化性能相当弱的学习器上构建出很强的集成。

参考:《机器学习》周志华

          《機器學習: Ensemble learning之Bagging、Boosting和AdaBoost》Tommy huang

  • 3
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值