本文原创,转载请注明出处 http://www.cnblogs.com/gufeiyang

  

本文主要分两部分,boosting 与 随机森林。

    “三个臭皮匠顶一个诸葛亮”是说三个不聪明的人集合在一起往往能战胜一个聪明的人。 在分类上, 如果给定了若干个弱分类器,是否能够集成为一个强分类器。答案是肯定的,boosting就是这么一个思想。

boosting里边最有名的算法是adaboost。 adaboost是迭代产生集成分类器的算法。 通过每次增大分类错误case的权重,减小分类正确的权重,来达到准确分类的目的。

具体流程如下:

                 

这是整个boosting的过程。 但是细心的话会发现上述的算法只能解决二元分类的问题,对于多元分类最终的预测函数为:

随机森林:既然是森林,那么就要有很多的树, 比如数目为T。 随机森林的每棵树都是一个决策树。 对于给的数据集M,数据集有n条记录,有放回地抽样n次,用抽样的数据集建立一棵决策树。这样重复T次就建立了T个决策树。 需要注意的是:每棵树选择不同的featurns作为树的分裂属性。 这样子就会有T个弱分类的决策树形成了。 这棵树可以通过投票的方式对新的数据进行分类。

随机森林与boosting的集合, 在利用boosting算法的时候,分类器H(X)选择决策树(随机森林的方法建立),这样就形成了有boosting思想的决策树。 boosting是一个将若干弱分类组合形成强分类器的算法, 有着很好的泛化能力。

最新文章

  1. 利用 crontab 來做 Linux 固定排程
  2. JS识别ios & 安卓
  3. 操作系统开发系列—12.g.在内核中设置键盘中断
  4. Python脚本模拟登录网页之GitHub篇
  5. Uiautomator打包使用第三方库,报错的解决方案
  6. 【转】Class.forName()用法详解
  7. JNI: Passing multiple parameters in the function signature for GetMethodID
  8. Tomcat中Listener的使用范例(转载http://cywhoyi.iteye.com/blog/2075848)
  9. SSM框架搭建web服务器实现登录功能(Spring+SpringMVC+Mybatis)
  10. HDOJ-1042 N!(大数乘法)
  11. POJ 1324 Holedox Moving 搜索
  12. TimeJob权限问题 拒绝访问
  13. .net WCF简单实例
  14. iOS框架搭建(MVC,自定义TabBar)--微博搭建为例
  15. 《android开发艺术探索》读书笔记(二)--IPC机制
  16. iowait 过高问题的查找及解决linux
  17. 深入浅出Java探针技术2---java字节码生成框架ASM、Javassist和byte buddy的使用
  18. 【FM】算法
  19. My Emacs Writing Setup
  20. 《gradle 用户指南中文版》 第一部分、关于Gradle

热门文章

  1. 【转载】使用Winrar对压缩文件进行加密,并且给定解压密码
  2. Go strconv模块:字符串和基本数据类型之间转换
  3. Java编程规范(命名规则)
  4. react将多个公共组件归成一类,方便调用
  5. Spark运行原理【史上最详细】
  6. macOS 10.13允许任何来源开启方法
  7. linux系统编程之信号(六)
  8. [转]Linux虚拟网络设备之tun/tap
  9. 题解 洛谷P1457 【城堡 The Castle】
  10. 「NOI2007」 货币兑换