摘要:在随机森林介绍中提到了Bagging方法,这里就具体的学习下bagging方法。

Bagging方法是一个统计重采样的技术,它的基础是Bootstrap。基本思想是:利用Bootstrap方法重采样来生成多个版本的预测分类器,然后把这些分类器进行组合。通常情况下组合的分类器给出的结果比单一分类器的好,因为综合了各个分类器的特点。之所以用可重复的随机采样技术Bootstrap,是因为进行重复的随机采样所获得的样本可以得到没有或者含有较少的噪声数据。

在训练集上采样Bootstrap的方法进行采样,平均1/3的样本不会出现在采样的样本集合中,这就意味着训练集中的噪声点可能不会出现在Bootstrap所采集的样本集合中,所以与在原始样本集合上构建分类器相比,Bootstrap方法可以更容易的获得好的分类器。

在Leo Breiman的论文 :Bagging Predictors 中他研究了不稳定性问题。他指出神经网络,分类和回归树,线性回归等方法的子集选择都不是稳定的。K-nearest相邻方法是稳定的。在论文中表明,Bagging方法可以正常的处理不稳定情况。实践和理论证明Bagging方法可以将一个好的不稳定的过程推向最优化方向发展。

Bagging算法流程如下:

1:对于给定的训练样本集合,通过n次的随机可重复的采样,从原始的样本集合中构建一个Bootstrap样本集合。

2:对于每一个Bootstrap样本集合构建一颗决策树。

3:重复1-2步,获取更多的决策树。

4:让每一棵决策树对输入量X进行投票

5:计算所有的投票数目,并以投票最多的一个分类标签作为X的类型。

随机森林之Bagging法的更多相关文章

  1. 随机森林之oob error 估计

    摘要:在随机森林之Bagging法中可以发现Bootstrap每次约有1/3的样本不会出现在Bootstrap所采集的样本集合中,当然也就没有参加决策树的建立,那是不是意味着就没有用了呢,答案是否定的 ...

  2. 机器学习总结(二)bagging与随机森林

    一:Bagging与随机森林 与Boosting族算法不同的是,Bagging和随机森林的个体学习器之间不存在强的依赖关系,可同时生成并行化的方法. Bagging算法 bagging的算法过程如下: ...

  3. 04-10 Bagging和随机森林

    目录 Bagging算法和随机森林 一.Bagging算法和随机森林学习目标 二.Bagging算法原理回顾 三.Bagging算法流程 3.1 输入 3.2 输出 3.3 流程 四.随机森林详解 4 ...

  4. 机器学习之Bagging与随机森林笔记

    集成学习通过将多个学习器进行结合,常可获得比单一学习器显著优越的泛化性能.这对“弱学习器”尤为明显,因此集成学习的很多理论研究都是针对弱学习器进行的,而基学习器有时也被直接称为弱学习器.虽然从理论上来 ...

  5. 机器学习回顾篇(12):集成学习之Bagging与随机森林

    .caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...

  6. Bagging与随机森林(RF)算法原理总结

    Bagging与随机森林算法原理总结 在集成学习原理小结中,我们学习到了两个流派,一个是Boosting,它的特点是各个弱学习器之间存在依赖和关系,另一个是Bagging,它的特点是各个弱学习器之间没 ...

  7. Bagging与随机森林

    Bagging Bagging是并行式集成学习算法最著名的代表,基于自助采样法(bootstrap sampling). 给定m个样本的数据集,选取m次,每次选1个样本,构成一个新的样本集,其中有的样 ...

  8. 机器学习相关知识整理系列之二:Bagging及随机森林

    1. Bagging的策略 从样本集中重采样(有放回)选出\(n\)个样本,定义子样本集为\(D\): 基于子样本集\(D\),所有属性上建立分类器,(ID3,C4.5,CART,SVM等): 重复以 ...

  9. bagging与boosting集成学习、随机森林

    主要内容: 一.bagging.boosting集成学习 二.随机森林 一.bagging.boosting集成学习 1.bagging: 从原始样本集中独立地进行k轮抽取,生成训练集.每轮从原始样本 ...

随机推荐

  1. exosip

    exosip针对UA是对osip进行扩展,oSIP不提供不论什么高速产生请求消息和响应消息的方法,全部请求消息和响应消息的形成必须调用一组sip message api来手动组装完毕,所以作者在osi ...

  2. C#制作一个消息拦截器(intercept)1

    首先,我们先要制作一个自己定义Attribute,让他能够具有上下文读取功能,所以我们这个Attribute类要同一时候继承Attribute和IContextAttribute. 接口IContex ...

  3. [AngularJS] $http cache

    By default your HTTP requests with the $https service in Angular are not cached. By setting some opt ...

  4. C#使用SOAP获取webservice实例解析

    本文主要參考例如以下两个链接.并整理: Java使用SOAP: http://www.cnblogs.com/linjiqin/archive/2012/05/07/2488880.html C# s ...

  5. python---pyc pyo文件详解

    http://blog.csdn.net/balabalamerobert/article/details/2683029#comments http://blog.csdn.net/zhengsen ...

  6. HttpServer的使用

    http://docs.oracle.com/javase/8/docs/jre/api/net/httpserver/spec/overview-summary.html 1.Package com ...

  7. Miaomiao's Geometry

    HDU 4932  Bestcoder Problem Description There are N point on X-axis . Miaomiao would like to cover t ...

  8. PHP读书笔记(4)-运算符

    什么是运算符 什么是运算符?运算符是告诉PHP做相关运算的标识符号.例如,你需要计算123乘以456等于多少,这时候就需要一个符号,告诉服务器,你需要做乘法运算. PHP中的运算符有哪些?PHP运算符 ...

  9. oracle--insert

    常规insert语法就不说了,还有些特殊用法 1.  insert all into table1(col1,col2) values(v1,v2) into table2(col1,col2) va ...

  10. VC2010 _com_error 返回的错误信息

    CString GetComError(const _com_error& e) { CString sMsg; sMsg.Format( _T("HRESULT: 0x%08lx; ...