原文::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. sklearn_随机森林random forest原理_乳腺癌分类器建模(推荐AAA)

     sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...

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

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

  3. 【机器学习】随机森林(Random Forest)

    随机森林是一个最近比较火的算法 它有很多的优点: 在数据集上表现良好 在当前的很多数据集上,相对其他算法有着很大的优势 它能够处理很高维度(feature很多)的数据,并且不用做特征选择 在训练完后, ...

  4. 随机森林random forest及python实现

    引言想通过随机森林来获取数据的主要特征 1.理论根据个体学习器的生成方式,目前的集成学习方法大致可分为两大类,即个体学习器之间存在强依赖关系,必须串行生成的序列化方法,以及个体学习器间不存在强依赖关系 ...

  5. 机器学习(六)—随机森林Random Forest

    1.什么是随机采样? Bagging可以简单的理解为:放回抽样,多数表决(分类)或简单平均(回归): Bagging的弱学习器之间没有boosting那样的联系,不存在强依赖关系,基学习器之间属于并列 ...

  6. 第九篇:随机森林(Random Forest)

    前言 随机森林非常像<机器学习实践>里面提到过的那个AdaBoost算法,但区别在于它没有迭代,还有就是森林里的树长度不限制. 因为它是没有迭代过程的,不像AdaBoost那样需要迭代,不 ...

  7. 【机器学习】随机森林 Random Forest 得到模型后,评估参数重要性

    在得出random forest 模型后,评估参数重要性 importance() 示例如下 特征重要性评价标准 %IncMSE 是 increase in MSE.就是对每一个变量 比如 X1 随机 ...

  8. 随机森林(Random Forest)

    决策树介绍:http://www.cnblogs.com/huangshiyu13/p/6126137.html 一些boosting的算法:http://www.cnblogs.com/huangs ...

  9. 决策树模型组合之(在线)随机森林与GBDT

    前言: 决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等.但是同时, 单决策树又有一些不好的地方,比如说容易over ...

随机推荐

  1. day8 面向对象编程基础

    活在当下的程序员应该都听过“面向对象编程”一词,也经常有人问能不能用一句话解释下什么是“面向对象编程”,我们先来看看比较正式的说法. 把一组数据结构和处理它们的方法组成对象(object),把相同行为 ...

  2. eas之EntityViewInfo对象mainQuery中查询条件

    EntityViewInfo对象mainQuery中查询条件:  添加查询字段:(Sql语句中的selectz子句内容)    SelecttorItemCollection sic=new Sele ...

  3. eas之MrpUI

    package com.kingdee.eas.custom.mrp.client; import java.awt.Component;import java.awt.event.*;import ...

  4. 洛谷11月月赛(284pts rank85)

    https://www.luogu.org/contestnew/show/12006 我是比赛完后在去写的 这是我第一次打洛谷月赛,之前一次是比赛完才去看而且写了第一题就没写后面的了 284分,太水 ...

  5. 0926mysql中MRR的用法

    转自 http://blog.itpub.net/22664653/viewspace-1673682  [MySQL]MySQL5.6新特性之Multi-Range Read 2015-05-27 ...

  6. JAVA:将反射技术应用于工厂模式(Factory)和单例模式(Singleton)的简单代码

    反射技术大量用于Java设计模式和框架技术,最常见的设计模式就是工厂模式(Factory)和单例模式(Singleton). 参考URL: http://blog.csdn.net/xiaohai79 ...

  7. redis安装配置-linux

    wget http://download.redis.io/releases/redis-3.2.9.tar.gz .tar.gz cd redis-/ make --启动 ./redis-serve ...

  8. linux下apache2更换目录

    修改apache2的默认文档目录(默认是在/var/www) 修改命令:sudo gedit /etc/apache2/sites-enabled/000-default 在文档中找到 Documen ...

  9. POJ 1678

    博弈题,使用DP来完成.开始时,我以为可以用极大极小加剪枝可以过,但,TLE... 看过一些题解,没看懂,但也由此有了启发: 我们只记录差(初始为0),那为1选的数即为在原差值上加上该数,2选即是减去 ...

  10. java SE与java EE , java ME之间的关系

    question: Which one should I install when I want to start learning Java? I'm going to start with som ...