所谓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. mysql创建PATH快捷

    1.使其临时生效 PATH=$PATH:/usr/local/mysql/bin 2.永久生效 编辑/etc/profile  添加第79列 然后source /etc/profile 3.输入命令m ...

  2. Internet Explorer已限制此网页运行可以访问计算机的脚本或ActiveX控件

    在制作网页的时候,大家不免要用到script,也即是脚本,主要是VBScript以及JavaScript.那么时常遇到这样的情况: 在本地双击打开html文件时,如果是IE的话,会出现提示框(如下图) ...

  3. 谷歌官方SwipeRefreshLayout下拉刷新的用法。

    <Android SwipeRefreshLayout:谷歌官方SDK包中的下拉刷新> 下拉刷新在如今移动开发中应用如此广泛和普遍,以至于谷歌干脆在SDK中给予支持.在android-su ...

  4. sql 如何过滤重复记录

    distinct : select distinct ID from table1

  5. HDU 2795 单点更新,区间优先查找(想法)

    Billboard Time Limit: 20000/8000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  6. 开源性能测试工具--Jmeter介绍+安装

     一.           Apache JMeter介绍 1.       Apache JMeter是什么Apache JMeter 是Apache组织的开放源代码项目,是一个100%纯Java桌 ...

  7. ROS主题发布订阅控制真实的机器人下位机

    先模拟控制小乌龟 新建cmd_node.ccpp文件: #include"ros/ros.h" #include"geometry_msgs/Twist.h" ...

  8. ROS服务器与客户端

    我们将创建一个服务器节点add_two_ints_server,它将会收到两个整数,并且返回它们的和.切换目录到之前建立的beginner_tutorials包下: cd ~/catkin_ws/sr ...

  9. 开通了cnblogs

    受够了百度空间,换个地方,或许会更好. 以后有机会会将百度空间你的文章搬过来的.

  10. Hibernate中的多对多映射

    1.需求 项目与开发员工 一个项目,有多个开发人员 一个开发人员,参与多个项目 [多对多] 2.实体bean设计 Project: public class Project { private int ...