为了更好地对数据进行预测,通常要用到模型融合,模型融合算法成功的关键在于能保证弱分类器的多样性(diversity。融合不稳定的学习算法能得到更明显的性能提升。

最基本的模型融合方式有voting和averaging。Voting为投票法,是针对分类问题;Averaging是平均法,针对回归问题。

模型融合方法有bagging和boosting

1.Bagging

方法

  • 通过K次的有放回抽样,训练K个子模型(每次随机抽样训练1个模型)
  • 对K个模型结果进行Voting/Average融合

特点:

  • 关于bagging所采用的抽样方式为有放回抽样,抽样的样本数量等于总体样本数量;
  • 由于某些样本在有放回的情况下不止被抽到一次,有些样本一次也不会被抽到;
  • 可以并行产生所需要的样本子集个数以及并行训练子模型
  • 对于二分类问题,一般选取样本子集个数为奇数(避免出现两个类别投票数相同)

优点:

  • Bagging的准确率明显高于单个分类器,其原因是存在多个分类器,能够很好地克服一些噪音,即使一些模型错误判断也不会影响最后的结果,具有鲁棒性
  • 多个分类器不容易出现过拟合现象
  • Bagging减少variance(方差),boosting减少bias-偏差
•Bagging的准确率明显高于单个分类器,其原因是存在多个分类器,能够很好的克服一些噪音,即使一些模型错误判断也不会影响最后的结果,具有鲁棒性。
•多个分类器不容易出现过拟合现象。所以我们是Bagging是减少variance—方差(相反,Boosting是减少bias—偏差)

2.Boosting

Bagging算法可以并行处理(K个子模型),而boosting的思想是一种迭代的方法

Boosting每一次训练的时候都更加关心上一次分类错误的样例,给这些分类错误的样例更大的权重,下次训练的目标就是能够更容易辨别出上一次分类错误的样例

最终将多次迭代训练得到的弱分类器进行权重相加得到最终的强分类器

Boosting融合思想的经典算法:Adaboost, GBDT (Gradient Boosting Decision Tree),XGBoost

3.两者区别


取样方式(样本权重):Bagging是均匀选取,样本的权重相等,Boosting根据错误率取样,错误率越大则权重越大
训练集的选择:Bagging随机选择训练集,训练集之间相互独立,Boosting的各轮训练集的选择与前面各轮的学习结果有关
预测函数:Bagging各个预测函数没有权重,可以并行生成,Boosting有权重,顺序生成
Bagging是减少variance,Boosting是减少bias
Bagging 是 Bootstrap Aggregating的简称,意思就是再取样 (Bootstrap) 然后在每个样本上训练出来的模型取平均,所以是降低模型的 variance. Bagging 比如 Random Forest 这种先天并行的算法都有这个效果。
Boosting 则是迭代算法,每一次迭代都根据上一次迭代的预测结果对样本进行加权,所以随着迭代不不断进行行,误差会越来越小,所以模型的 bias 会不不断降低。这种算法无法并行。
 

bagging与boosting原理详解相关推荐

  1. XGBoost核心算法原理详解

    XGBoost算法原理详解 前言 boosting和bagging的区别 bagging boosting 提升树-基于残差的训练 学习路径 构造目标函数 Additive Training(叠加式的 ...

  2. SVM分类器原理详解

    SVM分类器原理详解 标签: svm文本分类java 2015-08-21 11:51 2399人阅读 评论(0) 收藏 举报  分类: 数据挖掘 文本处理(16)  机器学习 分类算法(10)  目 ...

  3. 系列 《使用sklearn进行集成学习——理论》 《使用sklearn进行集成学习——实践》 目录 1 Random Forest和Gradient Tree Boosting参数详解 2 如何调参?

    系列 <使用sklearn进行集成学习--理论> <使用sklearn进行集成学习--实践> 目录 1 Random Forest和Gradient Tree Boosting ...

  4. Catboost原理详解

    目录 一 主要特点: 1 类别变量编码-Order Target Statistics方法 2 文本型变量编码处理 3 类别型特征交叉-FM 4 无偏提升-Ordered Boosting 5 使用对 ...

  5. CRF(条件随机场)与Viterbi(维特比)算法原理详解

    摘自:https://mp.weixin.qq.com/s/GXbFxlExDtjtQe-OPwfokA https://www.cnblogs.com/zhibei/p/9391014.html C ...

  6. LVS原理详解(3种工作方式8种调度算法)--老男孩

    一.LVS原理详解(4种工作方式8种调度算法) 集群简介 集群就是一组独立的计算机,协同工作,对外提供服务.对客户端来说像是一台服务器提供服务. LVS在企业架构中的位置: 以上的架构只是众多企业里面 ...

  7. jQuery中getJSON跨域原理详解

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp28 jQuery中getJSON跨域原理详解 前几天我再开发一个叫 河蟹工 ...

  8. nginx配置文件及工作原理详解

    nginx配置文件及工作原理详解 1 nginx配置文件的结构 2 nginx工作原理 1 nginx配置文件的结构 1)以下是nginx配置文件默认的主要内容: #user nobody; #配置用 ...

  9. EMD算法之Hilbert-Huang Transform原理详解和案例分析

    目录 Hilbert-Huang Transform 希尔伯特-黄变换 Section I 人物简介 Section II Hilbert-Huang的应用领域 Section III Hilbert ...

最新文章

  1. 量子计算机物理学,百年的超越:量子物理学与量子计算机
  2. 怎么用python读取csv文件、并且是读取行-python读取csv文件指定行的2种方法详解...
  3. 代码之谜(一)- 有限与无限
  4. 基于FFmpeg音视频流同步
  5. Py之tornado:tornado库的简介、安装、使用方法之详细攻略
  6. kubevela随笔
  7. 轻松搞定对容器实例日志设置定期清理和回卷
  8. python运维开发培训_运维架构师-Python 自动化运维开发-014
  9. spark运行pi_如何使用甜蜜的橙色Pi起床并运行
  10. Red Hat Enterprice Linux 5测试 Qt 4.7 Qt Creator(二)
  11. 亲历 尤金.卡巴斯基开启2009中国行
  12. element-UI table自定义表头
  13. 用Dezende解密zend后的php代码
  14. objdump: ‘1443.14.0)‘: No such file or directory
  15. 【力扣面试】面试题 04.02. 最小高度树(就是创建二叉平衡树)
  16. 三维计算机动画的特征是真实性,3D动画电影的应用特点及制作管理内容
  17. 吴军《智能时代》读书笔记
  18. 山西中级消防设施操作员考前必背考点,模拟真题及答案
  19. c++开源爬虫-Larbin简介
  20. win10系统图片显示缩略图

热门文章

  1. 2022-2-27 MIT 6.828 Lab 1: Booting a PC | Part 3: The Kernel | The Stack |exercise 9 - 11
  2. 2022-2-16 Leetcode986.区间列表的交集
  3. ETC欠费超30日将上报个人征信
  4. 2015年数据结构第四题(带头结点单链表的简单选择排序)(C/C++)
  5. 谈谈游戏AI的一些基础知识
  6. 综合布线系统工程有关的技术
  7. 2008年游戏人工智能的5大趋势与预言
  8. DTMF的概念和技术
  9. android百度测试,【腾讯百度测试面试题】面试问题:Android… - 看准网
  10. 解析jpeg数据时的问题_新乡回收电机小武:使用电机时出现问题的解析(2)