2016-12-22 53 views
0

我正在研究Spark MLlib(Scala)的Bisecting K-Means算法。我使用的Spark版本是2.0.2。看看Spark示例代碼(examples/src/main/scala/org/apache/spark/examples/ml/BisectingKMeansExample.scala)以及平分K-Means的方法,我很難理解應該怎麼做從類BisectingKMeansModel中檢索指定的羣集ID /號碼(不是羣集中心)。如何從Spark 2.0.2(Scala)中的平分K-Means獲取集羣ID /數字(不只是集羣中心)

在Spark/Scala的K-Means實現中,可以使用KMeansModel.summary.predictions來檢索集羣。

我想知道是否有來自平分K-Means模型

回答

0

檢索集羣的有效方法(而不是作爲示例使用了聚類中心),我發現這個問題的答案。它應該是KMeansModel.transform(dataset)。這將添加羣集索引作爲數據集中的一部分

0
model.predict(vectordata) 

這對我有用。如果你不想丟失密鑰或其他數據,你可以稱它爲這樣。

val NewData = data.map(t => 
(t._1, 
model.predict(t._2) 
)