原文::Multi-Forest:A chameleon in tracking,CVPR2014  下的蛋...原文

使用随机森林的优势,在于可以使用GPU把每棵树分到一个流处理器里运行,容易并行化实现。

OpenCV中的使用:OpenCV:使用 随机森林与GBDT

随机森林的优点:http://www.cnblogs.com/wentingtu/archive/2011/12/13/2286212.html

  • 在数据集上表现良好
  • 在当前的很多数据集上,相对其他算法有着很大的优势
  • 它能够处理很高维度(feature很多)的数据,并且不用做特征选择
  • 在训练完后,它能够给出哪些feature比较重要
  • 在创建随机森林的时候,对generlization error使用的是无偏估计
  • 训练速度快
  • 在训练过程中,能够检测到feature间的互相影响
  • 容易做成并行化方法
  • 实现比较简单

(1):在线Boost

使用在线Boosting项目主页:http://www.vision.ee.ethz.ch/boostingTrackers/index.htm

使用在线boosting学习的Code:http://www.vision.ee.ethz.ch/boostingTrackers/download.htm

使用Haar特征树作为弱分类器,取得不错的效果。但是速度稍慢。

(2):在线随机森林:

09年,ICCV 上的文章,效果和离线的random forest差不多,特别的牛。可以做分类,也可以做预测....

程序下载:http://www.everbox.com/f/7igWhZFJBp7xxqmbaM6UyewatN

这里介绍的主要是在线随机决策树,其思想主要是:每棵树可以在线分裂。每个叶子分裂的条件是预测的数量要达到一定的值和每个叶子节点信息。

每个树的生长主要通过预测的样本(在线接受的样本),每棵树的叶子节点分裂主要根据该节点的熵或Gini

          or     

学过决策树和信息论的,对这个概念都有了解。其中j表示第j棵树,i表示第i个分类结果。K表示总的分类数。

对有一个给定的结合S(在线预测中给定),每棵树上叶子节点Pj的的概率可以表示为:

如果要在Pj叶子节点分类,那么,得到二个叶子节点的概率可以用下式表示:

             and             

解释一下 Pjls,l为left,s为测试集合。所以Pjls表示为在集合S中Pj叶子节点的分列的左节点。同理,Pjrs表示为在集合S中Pj叶子节点的分列的右节点。

那么,每棵树上叶子节点Pj分裂必须符合以下二个条件:

1. 落在叶子节点Pj的个数必须大于一个常数(可以人工设定)

2. 叶子节点的Gini必须大于一个常数(可以人工设定),Gini计算公式如下:

以上步骤就完成整个树的更新。

步骤3. 用个possion分布确定从采样的次数,其原理见online boosting: http://www.cnblogs.com/liqizhou/archive/2012/05/10/2494145.html

步骤6. u代表分类的类别。

步骤7. j代表第t棵树上叶子节点。

步骤8. 统计第j个叶子节点的数目和计算Gini

步骤9. 判断条件是否分裂的二个条件。

步骤10. 在符合条件的叶子节点中,选择一个Gini最大的叶子节点作为分类节点。

以上就是online Random forests 的主要思想

下面给出了在线随机森林算法的流程:

待写....

ObjectT5:在线随机森林-Multi-Forest-A chameleon in track in相关推荐

  1. 随机森林(Random Forest)和梯度提升树(GBDT)有什么区别?

    随机森林(Random Forest)和梯度提升树(GBDT)有什么区别? 随机森林属于 集成学习 中的 Bagging(Bootstrap AGgregation 的简称) 方法. 随机森林是由很多 ...

  2. 【机器学习】随机森林 – Random forest

    文章目录 一.随机森林是什么? 1. 随机森林是一种集成学习算法 2. 随机森林的基学习器是决策树 二.随机森林 – Random Forest | RF 三.构造随机森林的 4 个步骤 四.随机森林 ...

  3. 初勘数据处理之预测算法(随机森林random forest)附matlab源码

    初勘数据处理之预测算法(随机森林random forest)附matlab源码 集成学习方法 集成学习方法,是整合多个分类方法的预测结果,以提高分类准确率.集成学习方法先用训练数据构建一组基分类器,再 ...

  4. 随机森林 – Random forest

    随机森林 – Random forest 随机森林是一种由决策树构成的集成算法,他在很多情况下都能有不错的表现. 本文将介绍随机森林的基本概念.4 个构造步骤.4 种方式的对比评测.10 个优缺点和 ...

  5. 机器学习方法(六):随机森林Random Forest,bagging

    欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术感兴趣的同学加入. 前面机器学习方法(四)决策树讲了经典 ...

  6. 随机森林Random Forest,bagging

    欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld.  技术交流QQ群:433250724,欢迎对算法.技术感兴趣的同学加入. 前面机器学习方法(四)决策树讲了经 ...

  7. 通俗解读随机森林Random Forest

    通俗解读随机森林Random Forest 写在前面 1. 什么是集成学习 2. 什么是Bagging 3 随机森林 写在前面 声明:本文主要参考的是周志华老师的<机器学习>西瓜书,参杂了 ...

  8. 【ML】随机森林(Random Forest) 从入门到放弃再到掌握

    目录 集成学习 决策树 Boosting Adaboost GBDT 梯度提升决策树是属于boosting集成学习的一种方法,通过构建多颗CART回归树,每一轮利用上一轮学习器的残差进行树的创建.该残 ...

  9. spark mllib源码分析之随机森林(Random Forest)

    Spark在mllib中实现了tree相关的算法,决策树DT(DecisionTree),随机森林RF(RandomForest),GBDT(Gradient Boosting Decision Tr ...

最新文章

  1. 小小一招巧解任何电脑的开机密码,无需任何工具,无需放电
  2. VC中退出应用程序-几种很有用的方法
  3. cmd静默运行_【已解决】BAT批处理中如何静默执行,在完成后调用MSGBOX?
  4. golang 数组 切片 下标范围
  5. scala创建并使用Enumerations
  6. ABAP Development Tool后台处理前台请求的入口
  7. mysql 插入加锁_Mysql加锁过程详解(9)-innodb下的记录锁,间隙锁,next-key锁
  8. java 当天唯一ids_java-为不同的时间字符串接收相同的ZonedDat...
  9. 【Excel】统计不重复数据的个数,设置单元格不允许出现重复数据
  10. 报表被老板吐槽又多又丑?因为你没有掌握这些动态报表的技巧
  11. QUIC - 低时延互联网传输层协议
  12. String str=“i“与 String str=new String(“i”)一样吗?
  13. Mysql也可以联合多表更新和删除
  14. java年度总结自我认知,java自我评价
  15. 国产平板面临变局挑战,谁能撑起民族大旗?
  16. Mac下安装Fiddler抓包工具(别试了,会报错,没办法使用)
  17. 宏脉系统显示连接服务器失败,宏脉系统使用手册大全.doc
  18. c# 定时windows服务发送邮件
  19. [闪存 第2回] NAND Flash 原理与挑战
  20. PyCharm安装scrapy框架

热门文章

  1. Leetcode PHP题解--D6 595. Big Countries
  2. nginx+php+mysql+erlang+mongo环境安装
  3. 图像处理之基础---傅里叶
  4. MS SQL 导入导出 提示 未在本地计算机上注册“Microsoft.ACE.Oledb.12.0”提供程序。(System.Data)...
  5. Linux下开启/关闭防火墙命令
  6. C#:对txt文件的读写
  7. volatile 关键字解析
  8. 【Python图像特征的音乐序列生成】思路的转变
  9. 万水千山ABP - 弹出对话框禁用回车
  10. Eclipse GBK批量转UTF-8插件