所谓ensemble learning,简单来说,是指综合多种基础模型或弱分类器来完成最终的决策的机器学习方法。

Bagging和Boosting(之前所提到的Adaboost)都属于这类方法。

Combining a series of T learned classifiers C1,…,CT

with the aim of creating an improved composite classifier C*

Random Forest也是一种基于ensemble learning思想的算法,该算法在决策树Bagging的基础上又增加了一层随机因素,在实际的分类和回归任务中,都取得了非常好的效果。 Random Forest是基于多棵分类回归树(CART)应用Bagging思想发展而来。。

分类回归树是一种基于2叉决策树的非线性机器学习算法,可以解决分类和回归的问题。

CART是一种有监督的学习方法,它解决分类和回归问题需要经过“训练”和“预测”两个阶段。

随机因素:Random Forest由很多CART树组合构成,同时还融入了random的思想。在实际的实现中,random体现在训练样本选择和分裂特征选择过程中

1) 随机训练样本选择

随机森林算法在生成每一颗决策树的过程中,不是采用所有的训练样本,而是随机采用一部分训练样本作为单颗决策树生长的训练数据。样本随机选取一般采用无放回的方式。

2) 随机分裂特征选择

子学习器独立性:在ensemble learning算法的一般经验表明,子学习器之间的独立性越好,集成之后的效果也就越好。相对于一些基于训练集合全局优化的机器学习算法,CART训练分裂过程基于贪心算法,训练参数相对不稳定,加上在训练样本选择和分裂特征选择中的随机因素,进一步增强了子学习器之间的独立性。因此,CART是集群学习中理想的子学习器,同时一些实验也表明,增加了随机因素的Random Forest相比一般的多CART bagging策略有明显的提升。

Random Forest算法

训练阶段:

1. For b = 1 to M

a) 从训练数据集合N中随机选取K个样本

b) 基于K个样本,训练CART

i. 在p个特征中随机选取m个特征

ii. 在m个特征中选取最优的分割特征和分割点

iii. 根据分割特征和分割点将树节点分裂成两个子节点

2. 保存所有生成的M个CART

预测阶段:

回归任务:R_predict =

分类任务:C_predict = Majority{C_CART[i]|i }

Ensemble Approaches分类技术的更多相关文章

  1. soso官方:网页分类技术介绍

    http://www.wocaoseo.com/thread-190-1-1.html 1.    技术背景     分类问题是人类所面临的一个非常重要且具有普遍意义的问题.将事物正确的分类,有助于人 ...

  2. OVS+DPDK Datapath 包分类技术

    本文主体内容译于[DPDK社区文档],但并没有逐字翻译,在原文的基础上进行了一些调整,增加了对TSS分类器的详细阐述. 1. 概览 本文描述了OVS+DPDK中的包分类器(datapath class ...

  3. RNA分类|技术策略|终极目标

    如何在转录水平分类所有RNA分子?可以罗列所有的可能性.技术策略和终极目标. 可能性:见纸 技术策略:RNA单细胞直测技术 终极目标:单细胞水平RNA直测技术决定新的人类RNA组和人类表观组学两个核心 ...

  4. <数据挖掘导论>读书笔记4--其他分类技术

    1.基于规则的分类器 2.最近邻分类器 3.贝叶斯分类器 4.人工神经网络 5.支持向量机 6.组合方法 7.不平衡类问题 8.多类问题

  5. 易百教程人工智能python修正-人工智能监督学习(分类)

    分类技术或模型试图从观测值中得出一些结论. 在分类问题中,我们有分类输出,如“黑色”或“白色”或“教学”和“非教学”. 在构建分类模型时,需要有包含数据点和相应标签的训练数据集. 例如,如果想检查图像 ...

  6. Java Web编程技术学习要点及方向

    学习编程技术要点及方向亮点: 传统学习编程技术落后,应跟著潮流,要对业务聚焦处理.要Jar, 不要War:以小为主,以简为宝,集堆而成.去繁取简 Spring Boot,明日之春(future of ...

  7. [Search Engine] 搜索引擎分类和基础架构概述

    大家一定不会多搜索引擎感到陌生,搜索引擎是互联网发展的最直接的产物,它可以帮助我们从海量的互联网资料中找到我们查询的内容,也是我们日常学习.工作和娱乐不可或缺的查询工具.之前本人也是经常使用Googl ...

  8. Web挖掘技术

      一.数据挖掘 数据挖掘是运用计算机及信息技术,从大量的.不全然的数据集中获取隐含在当中的实用知识的高级过程.Web 数据挖掘是从数据挖掘发展而来,是数据挖掘技术在Web 技术中的应用.Web 数据 ...

  9. Netflix工程总监眼中的分类算法:深度学习优先级最低

    Netflix工程总监眼中的分类算法:深度学习优先级最低 摘要:不同分类算法的优势是什么?Netflix公司工程总监Xavier Amatriain根据奥卡姆剃刀原理依次推荐了逻辑回归.SVM.决策树 ...

随机推荐

  1. web自定义控件UserControl

    今天做了两个自定义控件,之前用WPF也做过,但是感觉跟今天的不太一样.首先是在项目中建了一个UserContral的控件界面,把需要的控件拖到里面,再给按钮添加事件.我们公司的控件都是买的Dev Ex ...

  2. BZOJ3689 异或之

    我们需要知道一个事实,trie树上是可以要求第k大的! 我们每个节点记个size值然后像其他数据结构一样维护就可以了 然后我们再搞个priority_queue什么的就好了,注意每个值会出现两次只要记 ...

  3. javascript 判断身份证的正确性

    function isIdCardNo(vals) { var cardNum = vals; if (cardNum.length == 0) { return true; } // 11-15,2 ...

  4. C#入门篇6-5:字符串操作 测试StringBuilder的运行效率

    //测试StringBuilder的运行效率 public static void Fun2() { #region string string str = "我喜欢编程!"; / ...

  5. jquery 添加方法 : $.fn.方法名 = function(参数a,b,c){

    $.fn.image_checked = function(self,status,img_body,csrf_token){             $(this).live('click', fu ...

  6. 安卓/res/menu/的使用

    <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http:/ ...

  7. 青蛙的烦恼(dp好题)

    有n片荷叶正好在一凸多边形顶点上 有一只小青蛙恰好站在1号荷叶的点 小青蛙可以从一片荷叶上跳到另外任意一片荷叶上 给出N个点的坐标N<800 求小青蛙想通过最短的路程遍历所有的荷叶一次且仅一次的 ...

  8. Python邮件脚本

    def sendmail(): import smtplib from email.mime.text import MIMEText from email.utils import formatad ...

  9. svn自动更新

    果对svn不熟悉,当svn上面有更新时,想看到实时效果,就得去web目录手动更新,比较麻烦 其它svn有一个自动更新的功能 利用 hook   在svn 仓库目录下面有一个hook目录 在post-c ...

  10. OCR技术

    "起初我写这篇教程是在情人节,OCR可以带给你一整年的爱". 你之前肯定已经见过,OCR技术被应用于在平板电脑上将扫描文件处理成手写字迹,还被应用于谷歌最近添加到他们的Transl ...