mahout测试k-Means聚类算法

首先对测试K-Means来说,这个测试使用的 mahout org.apache.mahout.clustering.syntheticcontrol.kmeans.Job方法。

大多数网友对于这个测试都很疑惑就是在测试的时候总是报错,

显示“Input path does not exist: hdfs: **************”类似于此的。

我开始也被这个苦恼,后来自己弄明白原理就懂了,是因为这个测试的类的路径是固定的,如果你是开始创建的目录是/usr/。。。的,就绝对会报错。因为这个类使用的目录是/user的。接下来看如下的步骤:


首先前提是安装好hadoop与Mahout.

这里送上链接:

Mahout安装

http://blog.csdn.net/u012965373/article/details/50612225


接下来开始测试的步骤

注意:必须先运行hadoop,并且下载测试数据:wget http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data。

在hadoop中 hdfs 中创建 testdata 目录。

bin/hadoop fs -mkdir /user/hadoop/testdata

然后查看下

bin/hadoop fs -ls  /user/hadoop/testdata


接着把数据文件上传到 /user/hadoop/testdata/ 内

bin/hadoop fs -put /user/hadoop/mahout/synthetic_control.data /user/hadoop/testdata


接着查看是否在

bin/hadoop fs -ls /user/hadoop/testdata/

运行:mahout org.apache.mahout.clustering.syntheticcontrol.kmeans.Job

固化的测试命令

mahout org.apache.mahout.clustering.syntheticcontrol.kmeans.Job

运行后如图所示:

mahout测试k-Means聚类算法_第1张图片



最后使用命令查看聚类结果。

hadoop fs -ls /user/hadoop/output

mahout测试k-Means聚类算法_第2张图片


OK,后续的就可以get下来看了。

你可能感兴趣的:(mahout测试k-Means聚类算法)