Bootstrap Method:在统计学中,Bootstrap从原始数据中抽取子集,然后分别求取各个子集的统计特征,最终将统计特征合并。例如求取某国人民的平均身高,不可能测量每一个人的身高,但却可以在10个省市,分别招募1000个志愿者来测量并求均值,最终再求取各省市的平均值。

Bagging(Bootstrap Aggregating):应用了 Bootstrap的思想,从Training Set抽取k次subset,分别用来训练k个单独的模型,然后用这k个模型来做预测。最终,如果是Regression问题,则Average k个模型的输出;如果是Classification问题,则进行Majority Vote。

Example:Bagged Decision Trees.引用自Springer Nature的文章‘Ensemble methods: bagging and random forests’。我们可以看到,图a中的数据点,是根据抛物线图(虚线)叠加噪音而生成。如果直接采用CART Decision Tree,拟合模型如图a的实线;图b给出了4个Bootstraps分别的拟合图像;图c的蓝线则是将4个Bootstrap进行了平均,更好的还原了抛物线图像。

其中εB是对bags内部数据的差错曲线,而εOOB则是对Out-Of-Bag数据的测评。OOB在这里的作用类似于Cross Validation。

Random Forest: 和Bagged Decision Tree的大体结构十分相似,Random Forest也是对Training Set进行k次随机抽样、种树、再求取平均(Majority Vote)。但Random Forest修改了Decision Tree中Greedy Search的部分:Decision Tree在每次分割时,会考虑所有的feature,然后选择最佳分割点;Random Forest为了增加随机性,在分割时使用1/3*D( regression), sqrt(D)(classification)的features来做选择,由此也减少了属于书之间的关联性。

所以说,Bagged Decision Tree只有一个参数,那就是树的数量;而Random Forest却有两个参数:树的数量,以及分割时feature的数量。

最新文章

  1. webpack2新特性
  2. Vmware扩展磁盘如何不需重启系统
  3. mybatis 分页
  4. “SSLError: The read operation timed out” when using pip
  5. UPDATE语句中使用JOIN
  6. (转)C#在父窗口中调用子窗口的过程(无法访问已释放的对象)
  7. Redis安装及简单測试
  8. SCM文章4教训:定时器共阴极LED动态显示屏
  9. CoreOS, Kubernetes, etcd
  10. 数位dp初探
  11. uniApp——v-for 动态class、动态style
  12. Js浮点运算存在精度问题
  13. 使用VSTS的Git进行版本控制(四)——在Visual Studio中管理分支
  14. JavaWeb入门笔记
  15. Eclipse安装Activiti Designer插件
  16. Shell脚本 | 性能测试之内存
  17. 第三章————用SQL语句操作数据
  18. 近5年常考Java面试题及答案整理(三)
  19. 冰血暴第一季/全集Fargo迅雷下载
  20. npm的影武者 —— Npx

热门文章

  1. python爬虫相关安装与应用
  2. Vue.js状态管理模式 Vuex
  3. c# ASP.NET MVC easyui-filebox 图片上传和显示
  4. 你真的了解iOS的深浅拷贝吗?
  5. manjaro软件源报错 不停看到错误 "PackageName: signature from "User <email@archlinux.org>" is invalid" 的几种解决方法
  6. 88-基于FMC接口的2路CameraLink Base输入子卡模块
  7. windows下数字以2进制打印
  8. HTTP post get request 时遇到特殊字符 ! @ # $ % ^ & * ( )
  9. nodepad++如何多行同时编辑
  10. 四种会话跟踪技术以及jstl介绍