mahout 随机森林RF算法

在随机森林中的随机性体现在:1.训练数据的随机性 2. 选择分割属性的随机性

能解决分类与回归问题,并且都有很好的估计表现

1.生成数据说明文件

mahout describe -p input.csv -f input.info-d2 I 3 N I 5 N I 3 C L(执行describe生成数据的说明文件)

2.训练模型

mahout buildforest -d input.csv -ds input.info -sl 5 -p -t 5 -o forest_result(生成随机森林模型结果)

3.测试

Mahout testforest  -i input.csv -ds input.info -m forest_result -a -o predictions

-a 运行后在命令行界面可以看到分析结果,包括准确率等信息

-d:数据路径

-ds:数据集

-sl:选取每个子节点应该具备的训练变量个数,对于regresstion问题默认为全部变量的三分之一

-nc:可选的,树不互补

-ms:可选的,如果分支数据大小小于此值(默认为2),则树不分离。

-mp:可选的,如果分支数据的方差的比例小于这个值,则树不分离。(In the case of a regression problem, this value is used. The default

is 1/1000(0.001).)

-sd:可选的,种子值,用来初始化随机数发生器。

-p:使用部分数据实现

-t:设置共多少棵树

-o:输出路径,包含决策森林模型

时间: 2024-09-30 23:58:42

mahout 随机森林RF算法的相关文章

【Kaggle】用随机森林分类算法解决Biologial Response问题

Kaggle搞起来 Kaggle比赛多依靠机器来自动处理,机器学习几乎是必须要的技能.开始搞Kaggle需要的机器学习技能并不深入,只是需要对于机器学习的常见几个方法有基本了解即可,比如说对于一个问题,你可以认识到它是个classification的问题啊还是regression的问题啊,为什么机器可以根据你输入的一个矩阵来算出来分类结果啊. 其实有时候真的在于是不是愿意踏出那一步,一旦踏出了那一步,做与不做真的是天壤之别. hacker的方式就是通过不断的尝试来学习,所以,搞机器学习,不实践,

tensorflow基础模型之RandomForest(随机森林)算法

随机森林算法原理请参照上篇:随机森林.数据依旧为MNIST数据集. 代码如下: from __future__ import print_function?# Ignore all GPUs, tf random forest does not benefit from it.import os?import tensorflow as tffrom tensorflow.contrib.tensor_forest.python import tensor_forestfrom tensorfl

决策树与随机森林分类算法(Python实现)

一.原理: 决策树:能够利用一些决策结点,使数据根据决策属性进行路径选择,达到分类的目的. 一般决策树常用于DFS配合剪枝,被用于处理一些单一算法问题,但也能进行分类 . 也就是通过每一个结点的决策进行分类,那么关于如何设置这些结点的决策方式: 熵:描述一个集合内元素混乱程度的因素. 熵的衡量公式: ? 公式中的熵值 Entropy 会随着集合中类别数量增加而快速增加,也就是说一个集合中类别越少,那么它的熵就小,整体就越稳定. 对于一个标记数据集,要合理的建立一棵决策树,就需要合理的决定决策结点

机器学习——随机森林算法及原理

1. 随机森林使用背景 1.1 随机森林定义 随机森林是一种比较新的机器学习模型.经典的机器学习模型是神经网络,有半个多世纪的历史了.神经网络预测精确,但是计算量很大.上世纪八十年代Breiman等人发明分类树的算法(Breiman et al. 1984),通过反复二分数据进行分类或回归,计算量大大降低.2001年Breiman把分类树组合成随机森林(Breiman 2001a),即在变量(列)的使用和数据(行)的使用上进行随机化,生成很多分类树,再汇总分类树的结果.随机森林在运算量没有显著提

【机器学习基础】随机森林算法

引入 我们回顾一下之前学习的两个算法,Bagging算法中,通过bootstrapping得到不一样的数据,通过这些数据送到一个基本算法之后,得到不同的g,最后对这些g取平均得到G:决策树算法中,通过递归方式建立子树,最终得到一棵完整的树. 这两种算法都有其鲜明的特点,决策树对于不同的数据相对会敏感一些,即其算法的variance很大,而Bagging的特点是通过投票和平均的方式来降低variance的效果.如果将这两种方法结合起来,就是该文要介绍的随机森林,random forest. 1.

随机森林(Random Forests)

简单地看了一些入门的资料. 随机森林似乎和CART有些联系. 随机森林的算法步骤: 1. 利用自助法(Bootstrap)从原始训练集中生成k个自助样本集,每个自助样本集是每棵分类树的全部训练数据.自助法(Bootstrap):从原始的样本容量为N的训练集合中随机抽取N个样本生成新的训练集,抽样的方法是有放回的.这样的抽样方式有可能造成新的训练集中存在重复的样本.2. 每个自助样本集生长为单棵分类树.在树的每个节点从M个特征中随机挑选m个特征(mm),利用这m个特征,按照节点不纯度最小的原则选取

10.集成学习与随机森林

1.什么是集成学习 什么是集成学习,以前我们都是使用一个算法来进行预测,难免会有"独断专行"的感觉.集成学习是将多个算法集成在一块,然后多个算法对同一个问题进行预测,然后少数服从多数,这便是集成学习. 我们生活中有很多集成学习的例子,比如买东西的时候看推荐,如果10个人推荐你买A产品,但是只有1个人推荐你买B产品,我们会更将倾向于买B产品. 我们看看sklearn是如何为我们提供集成学习的接口的. from sklearn.datasets import make_moons from

谈谈模型融合之二 —— 随机森林

前言 上篇文章介绍了集成学习的相关概念以及基于 Boosting的 AdaBoost,这篇文章将介绍基于模型融合的另一种方式 Bagging 的算法,随机森林(Random Forest).(上篇公式敲的太累了这篇就来个简单的缓解缓解) 随机森林 算法思想 我们先来看看这个算法的名字,可以拆分开为两部分,随机和森林.森林我们很容易可以想到,就是有很多棵树,即由多颗决策树组成.那么随机指的是什么呢?这里我们来看看 Bagging 的思想了. 首先先说说自助采样(Bootstrap Sanpling

机器学习中的算法(1)-决策树模型组合之随机森林与GBDT

版权声明: 本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系[email protected] 前言: 决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等.但是同时,单决策树又有一些不好的地方,比如说容易over-fitting,虽然有一些方法,如剪枝可以减少这种情况,但是还是不够的. 模型组合(比如