我针对一组序列文件运行了 K-means 聚类算法。但是,生成的结果如下所示:
0 属于集群 1.0:[]
0 属于集群 1.0:[]
0 属于集群 1.0:[]
0 属于集群 1.0:[]
0 属于集群 1.0:[]
0 属于集群 1.0:[]
我使用的程序是从 NewsKMeansClustering.java 借来的,这是 Mahout-in-Action 第 9 章中给出的示例。
你想让我知道为什么我会得到这种结果吗?是因为任何特定的参数设置要求还是其他原因?
该程序中的核心聚类代码是
CanopyDriver.run(vectorsFolder, canopyCentroids, new EuclideanDistanceMeasure(), 250, 120, false, false);
KMeansDriver.run(conf, vectorsFolder, new Path(canopyCentroids, "clusters-0"),
clusterOutput, new TanimotoDistanceMeasure(), 0.01, 20, true, false);