Я изучаю Mahout и читаю "Mahout в действии".
Когда я попытался запустить пример кода из главы 7 SimpleKMeansClustering.java, появилось исключение:
Исключение в потоке «основной» java.io.IOException: неверный класс значений: 0.0: null не является классом 1874) в SimpleKMeansClustering.main(SimpleKMeansClustering.java:95)
Я успешно выполнил этот код на mahout-0.5, но на mahout-0.6 я увидел это исключение. Даже если я изменил имя каталога с clusters-0 на clusters-0-final, я все еще сталкиваюсь с этим исключением.
KMeansDriver.run(conf, vectors, new Path(canopyCentroids, "clusters-0-final"), clusterOutput, new TanimotoDistanceMeasure(), 0.01, 20, true, false);//First, I changed this path.
SequenceFile.Reader reader = new SequenceFile.Reader(fs, new Path("output/clusters/clusteredPoints/part-m-00000"), conf);//I double checked this folder and filename.
IntWritable key = new IntWritable();
WeightedVectorWritable value = new WeightedVectorWritable();
int i=0;
while(reader.next(key, value)) {
System.out.println(value.toString() + " belongs to cluster " + key.toString());
i++;
}
System.out.println(i);
reader.close();
Кто-нибудь знает об этом исключении? Я пытался решить это в течение долгого времени и не получил ни малейшего представления. И источников в инете немного.
заранее спасибо