1 下载

mahout 安装测试

http://archive.apache.org/dist/mahout 下载相应版本的mahout 版本,获取官网查看http://mahout.apache.org 相关的信息

 

mahout 安装测试

 

下载后解压,

tar -zxvf mahout-distribution-0.9.tar.gz

配置环境变量

export MAHOUT_HOME=/home/sms/mahout-distribution-0.9
export MAHOUT_CONF_DIR=$MAHOUT_HOME/conf
export PATH=$MAHOUT_HOME/bin:$PATH

 

2 启动hadoop运行测试

 

下载测试数据  http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data
创建测试目录 testdata,并把数据导入到这个tastdata目录中(这里的目录的名字只能是testdata)

hadoop fs -mkdir testdata

hadoop fs -put synthetic_control.data testdata

命令测试  hadoop jar /home/sms/mahout-distribution-0.9/mahout-examples-0.9-job.jar org.apache.mahout.clustering.syntheticcontrol.kmeans.Job

命令查看   hadoop fs -ls output
运行结果在 hdfs 上 的 output 的文件夹中,结果是二进制文件,需要转化。
例如转化 output/data/part-m-00000
命令查看 hadoop jar /home/sms/mahout-distribution-0.9/mahout-examples-0.9-job.jar org.apache.mahout.utils.vectors.VectorDumper -i output/data/part-m-00000

本地模式 java -cp /home/sms/mahout-distribution-0.9/mahout-examples-0.9-job.jar org.apache.mahout.utils.vectors.VectorDumper -i /home/sms/output/data/part-m-00000

 

 

 其它意见

 1 一.文本文件向量化
 2 Mahout已经提供了工具类,它基于 Lucene 给出了对文本信息进行分析,然后创建文本向量。mahout提供下面两个命令来将文本转成向量形式(转化成向量后可以聚类):
 3 
 4     mahout seqdirectory:将文本文件转成SequenceFile(序列)文件,SequenceFile文件是一种二制制存储的key-value键值对,对应的源文件是org.apache.mahout.text.SequenceFilesFromDirectory.java
 5     mahout seq2sparse:将SequenceFile(序列)转成向量文件,对应的源文件是org.apache.mahout.vectorizer.SparseVectorsFromSequenceFiles.java 
 6 
 7 
 8     命令: mahout seqdirectory -i /user/hadoop/file1 -o /user/hadoop/file2
 9 
10 
11 查看转化结果:
12 
13     mahout seqdumper:将SequenceFile文件转成文本形式,对应的源文件是org.apache.mahout.utils.SequenceFileDumper.java
14     mahout vectordump:将向量文件转成可读的文本形式,对应的源文件是org.apache.mahout.utils.vectors.VectorDumper.java
15     mahout clusterdump:分析最后聚类的输出结果,对应的源文件是org.apache.mahout.utils.clustering.ClusterDumper.java
16 
17 
18     命令: mahout vectordump -i /user/hadoop/file2 -o /user/hadoop/file3
19     具体每种命令如何用及参数如何选择,在命令行后面加-h或-help可以查看
20 
21 
22 二.数值文件向量化
23 三种数值型向量文件:
24 
25     DenseVector:浮点型数组,存储所有向量,适用于存储密集型向量;
26     RandomAccessSparseVector:基于浮点数的HashMap实现,key:int,value:double,只存储向量中不为空的值,并提供随机访问。
27     SequentialAccessVector:只存储向量中不为空的值,只提供顺序访问。
28 
29 
30     命令:mahout org.apache.mahout.clustering.conversion.InputDriver -i inputfile -o outputfile
文本文件向量化

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-10-14
  • 2021-07-16
  • 2021-10-17
  • 2021-10-14
猜你喜欢
  • 2022-12-23
  • 2022-02-11
  • 2021-10-03
  • 2021-08-22
  • 2022-12-23
相关资源
相似解决方案