AdaBoost算法概述

Bagging是从原始数据集中进行有放回抽样,新数据集和原始数据集的大小相等,再将算法分别作用于各个数据集得到N个分类器,最后进行投票抉择(典型算法如:Bagging + 决策树 = 随机森林)

Boosting是将弱分类器组装成一个强分类器,boosting是通过训练集中关注被已有分类器错分的那些数据来获得新的分类器(典型算法如:AdaBoost + 决策树 = 提升树;Gradient Boosting + 决策树 = GBDT)

 

Bagging和Boosting的区别:摘自http://www.cnblogs.com/liuwu265/p/4690486.html

  1)样本选择

    Bagging:训练集是在原始集中有放回选取的,从原始集中选出的各轮训练集之间相互独立

    Boosting:每一轮的训练集不变,只是训练集中每个样例在分类器中的权重发生变化。而权值是根据上一轮的分类结果进行调整。

  2)样本权重

    Bagging:使用均匀取样,每个样例的权重相等

    Boosting:根据错误率不断调整样例的权值,错误率越大则权重越大

  3)分类器权重

    Bagging:所有分类器的权重相等

    Boosting:每个弱分类器都有相应的权重,对于分类误差小的分类器会有更大的权重

  4)并行

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

    Boosting:各个分类器只能顺序生成,因为后一个模型参数需要前一轮模型的结果

 

Boosting有两个主要的思考点,一是如何改变训练数据的概率分布来学习到一系列弱分类器;二是如何将弱分类器组合成一个强分类器

AdaBoost的做法是:

  一是对于前一轮分类器中分类错误的样本,提高其权值,引起后一轮分类器的更大关注

  二是加大分类误差率小的分类器权值,使其在表决时起更大作用

AdaBoost详细实例讲解:http://blog.csdn.net/GYQJN/article/details/45501185

 

AdaBoost优缺点

  优点:泛化错误率低,无需参数调整

  缺点:对离群点敏感

 

 为什么AdaBoost不会过拟合?

  关于Adaboost,它是boosting算法,从bias-variance(偏差-方差)的角度来看,boosting算法主要关注的是降低偏差

  而boosting算法每个分类器都是弱分类器,而弱分类器的特性就是high-bias & low variance(高偏差-低方差),其与生俱来的优点就是泛化性能好

  因此,将多个算法组合起来之后,可以达到降偏差的效果,进而得到一个偏差小、方差小的泛化能力好的模型。

 

AdaBoost总结

  adaboost算法首先为训练集中的每个样本赋予一个均分权重,构成向量D;

  接着训练第一个弱分类器,计算其错误率e,再调整样本权重,提高误分类样本权值,进行下一轮训练

  并且,由于最终结果是由各分类器投票产生,所以还需为每个分类器计算权重值α,α是根据错误率e更新的,e越小,α越大

  训练过程不断持续,直至e为0或分类器数目达到指定值时算法停止

 

 

(以上大部分内容摘自http://blog.csdn.net/dream_angel_z/article/details/52348135(推荐关注))

 

转载于:https://www.cnblogs.com/xiaoyun94/p/7382221.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值