mahout使用:
步骤一:
tar -xvf mahout-0.3.tar.gz
需要指定hadoop的路径和配置文件的路径
export HADOOP_HOME=/home/hadoopuser/hadoop-0.19.2
export HADOOP_CONF_DIR=/home/hadoopuser/hadoop-0.19.2/conf
步骤二:
通过这个命令可以查看mahout提供了哪些算法,以及如何使用
bin/mahout --help
bin/mahout kmeans --input /user/hive/warehouse/tmp_data/complex.seq --clusters 5 --output /home/hadoopuser/1.txt
mahout下处理的文件必须是SequenceFile格式的,所以需要把txtfile转换成sequenceFile。SequenceFile是hadoop中的一个类,允许我们向文件中写入二进制的键值对,具体介绍请看
eyjian写的http://www.hadoopor.com/viewthread.php?tid=144&highlight=sequencefile
mahout中提供了一种将指定文件下的文件转换成sequenceFile的方式。
(You may find Tika (http://lucene.apache.org/tika) helpful in converting binary documents to text.)
使用方法如下:
$MAHOUT_HOME/bin/mahout seqdirectory \
--input <PARENT DIR WHERE DOCS ARE LOCATED> --output <OUTPUT DIRECTORY> \
<-c <CHARSET NAME OF THE INPUT DOCUMENTS> {UTF-8|cp1252|ascii...}> \
<-chunk <MAX SIZE OF EACH CHUNK in Megabytes> 64> \
<-prefix <PREFIX TO ADD TO THE DOCUMENT ID>>
举个例子:
bin/mahout seqdirectory --input /hive/hadoopuser/ --output /mahout/seq/ --charset UTF-8
步骤三:
运行kmeans的简单的例子:
1:将样本数据集放到hdfs中指定文件下,应该在testdata文件夹下
$HADOOP_HOME/bin/hadoop fs -put <PATH TO DATA> testdata
例如:
bin/hadoop fs -put /home/hadoopuser/mahout-0.3/test/synthetic_control.data /user/hadoopuser/testdata/
2:使用kmeans算法
$HADOOP_HOME/bin/hadoop jar $MAHOUT_HOME/examples/target/mahout-examples-$MAHOUT_VERSION.job org.apache.mahout.clustering.syntheticcontrol.kmeans.Job
例如:
bin/hadoop jar /home/hadoopuser/mahout-0.3/mahout-examples-0.1.job org.apache.mahout.clustering.syntheticcontrol.kmeans.Job
3:使用canopy算法
$HADOOP_HOME/bin/hadoop jar $MAHOUT_HOME/examples/target/mahout-examples-$MAHOUT_VERSION.job org.apache.mahout.clustering.syntheticcontrol.canopy.Job
例如:
bin/hadoop jar /home/hadoopuser/mahout-0.3/mahout-examples-0.1.job org.apache.mahout.clustering.syntheticcontrol.canopy.Job
4:使用dirichlet 算法
$HADOOP_HOME/bin/hadoop jar $MAHOUT_HOME/examples/target/mahout-examples-$MAHOUT_VERSION.job org.apache.mahout.clustering.syntheticcontrol.dirichlet.Job
5:使用meanshift算法
meanshift : $HADOOP_HOME/bin/hadoop jar $MAHOUT_HOME/examples/target/mahout-examples-$MAHOUT_VERSION.job org.apache.mahout.clustering.syntheticcontrol.meanshift.Job
6:查看一下结果吧
bin/mahout vectordump --seqFile /user/hadoopuser/output/data/part-00000
这个直接把结果显示在控制台上。
可以到hdfs中去看看数据是什么样子的
上面跑的例子大多以testdata作为输入和输出文件夹名
可以使用 bin/hadoop fs -lsr 来查看所有的输出结果
KMeans 方法的输出结果在 output/points
Canopy 和 MeanShift 结果放在了 output/clustered-points
分享到:
相关推荐
问题 • 1、什么是mahout? • 2、mahout是干啥的 ? • 3、mahout是怎么干的? Apache Mahout 是 Apache Software ...此领域与数据挖掘密切相关,并且经常需要使用各种技巧,包括统计学、概率论和模式识别等。
基于Hadoop与Mahout云数据挖掘推荐研究.pdf
Oozie工作流在Mahout分布式数据挖掘中的应用.pdf
基于mahout的数据挖掘技术课程 共35页.rar
Hadoop数据挖掘工具Mahout.ppt
mahout 数据挖掘 数据分析 开源 hadoop
数据挖掘工具mahout环境搭建 数据挖掘 hadoop
整套大数据课程从hadoop入门开始,由浅入深,内置“hadoop源码解析与企业应用开发实战”,“Hive开发实战”,“Hbase开发实战”,“Spark,mahout,sqoop,storm诸模块开发实战”,“数据挖掘基础。这个系列课程有几...
包含各种数据挖掘的学习资料( mahout api ,Mahout实践指南等)
mahout分布式数据挖掘工具,实现了在hadoop分布式环境下的各种数据挖掘算法,比如kmeans,聚类等,本文档是mahout的详细安装步骤。
mahout 入门中文材料,是IBM文章汇总,值得一看
Mahout是基于Hadoop之上的机器学习和数据挖掘的一个分布式框架项目。搞机器智能学习算法,这个是首选。本文给出一个完整的编译运行示例,让有兴趣的同行少走段弯路,多一份参考!
包括Mahout in Action(英文版)和Mining of Massive Datasets (英文版)
mahout0.7,基于hadoop的数据挖掘开源应用工具
Apache开源数据挖掘、机器学习项目,java库,学习推荐系统最好的资料,
网上流传的Mahout In Action一般为前13章,本文为完整版,比较难得
Mahout 提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地...Mahout包含许多实现,包括聚类、分类、推荐过滤、频繁子项挖掘。通过使用 Apache Hadoop 库,Mahout 可以有效地扩展到云中。
移动大云数据挖掘工具手册,客户端使用说明书,类似weka的界面,hadoop平台
链接:https://pan.baidu.com/s/1lS4W-uKH7goutGe7KnBB7A 提取码:cbdu