mahout如何使用随机森林测试数据集

本文介绍了如何使用mahout进行随机森林算法的实践操作,包括数据描述文件生成、随机森林训练和测试数据的过程。强调了数据格式设置、版本兼容性和处理空格等问题的重要性。
摘要由CSDN通过智能技术生成

      最近在研究机器学习经典的分类算法随机森林,需要用随机森林算法来测试一个小的数据集。开源项目mahout实现了大多数经典的机器学习算法,里面也提供了很多处理数据,提取特征,训练算法模型的类和方法,但是貌似国内用这个开源项目的人并不多,因为网上关于具体如何使用mahout算法的资料廖若晨星,而mahout实战中也没有关于随机森林的使用例子,这部分信息只能从mahout官网中搜集到,而mahout官网中对随机森林的使用也并没有描述的很详细,于是博主在研究如何使用mahout随机森林时废了很大心力,最后发现,官网给出的mahout使用例子是用linux命令行直接运行jar包的方式来完成随机树的建模和测试的。

     mahout随机树测试分为三个步骤:1.对数据生成对应的描述信息文件(这个生成的描述信息文件需要作为随机森林建模时的一个输入文件)。2.根据训练集及第一步生成的描述信息文件训练一个随机森林。3.用训练好的随机森林来测试数据。

     第一步:对数据生成对应的描述信息文件,这个类位于mahout-examples-版本号-job.jar(注意一定要有job后缀,mahout下面还有一个mahout-examples-版本号.jar包,但是这个包里面的类并不全)的org.apache.mahout.classifier.df.tools.Describe,这个类里面有个主方法,因此可以在命令行直接运行这个类。你可以在hadoop环境下直接运行这个类对数据生成相应的描述文件,如下命令行:


$hadoop  jar  /usr/local/mahout-0.8/mahout-examples-0.8-job.jar(你的mahout-examples-版本号-job.jar这个包所在的路径)  org.apache.mahout.classifier.df.tools.Describe  -p  /testdata/datatrain.csv(需要处理的目标数据,这里是在hdfs文件系统中的路径)  -f  /testdata/datatrain.info(生成的描述信息文件的存放路径,描述信息后缀为info)  -d  20 N L(需要处理的目标数据的格式)


     这里我来好好说一下这个-d后面的数据格式如何设置,其实这个非常简单,我们知道数据属性无非就两种,一种是数值型,还有一种是类别型。数值型就是纯代数值,比如工资收入,商品价格,商品数量等等,这些属性值在分类的时候只能定义区间去分类,这些就属于数值型属性。还有一类是种类型属性,这种类型的数据更像是枚举类型,因为它的所有情况都可以一一列举出来,比如对一个商品的评价good,bad,not bad,对是否具有某个特征的属性yes,no等等,一般是通过单词字符的形式来描述的,但是也有通过数字的形式来表示的,比如0,1,0表示no,1表示yes,虽然看起来好像是数字,但其实它们不是数值型,而是种类型,所以我们在分析数据时一定要搞清楚这些数据的类型到底是数值型还是种类型。

     数值型属性我们用N表示(Numerical),种类型我们用C表示(Categories),如有一组数据为:


name  age  income  adress  commodity_numbe

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值