2014-10-27 58 views
2

我認爲我的代碼沒有錯,但它不能正常工作。 這是使用mapreduce的K均值聚類。 (https://github.com/30stm/K-Means-using-mapreduce/tree/master我在使用Mapreduce的K-Means中遇到麻煩(修改)

使用DatasetWriter.java創建數據集,並使用CreateCentroids.java創建質心。 然後,執行KMeansClusteringJob.java

此代碼在第一次迭代中工作,但它不能在第二次迭代中工作。 我查了地圖功能和減少功能,我覺得問題是減少功能。 (映射函數從每個點找到最接近的質心 降低函數計算新質心並替換新質心) 第一次迭代後,cen.seq(質心文件)不完美。

有人幫我;)

P.S:我寫了一個問題,關於減少代碼,我原來的問題是這樣的。

+0

您需要一個語言標籤。如果這是java,給它一個java標籤,以便java人可以找到它。 – CandiedOrange 2014-10-27 14:59:21

回答

0

您鏈接的代碼有一個newCenter.setVector(new double[vectorSize]);,您可能需要在newCenter.getVector()之前。

+0

謝謝。我在修改代碼的過程中刪除了該部分 – 2014-10-27 15:38:15

+0

你能解決我的問題嗎? – 2014-10-27 16:35:40

+0

不是沒有機會查看您的代碼的新版本。你應該問一個新的問題。 – CandiedOrange 2014-10-27 20:51:41