Spark:在MlLib k-mean聚类中使用来自RDD [(Int,Array [Vector])]的每个Array [Vector]

时间:2016-06-11 16:22:25

标签: apache-spark cluster-analysis rdd apache-spark-mllib

我在[{1}} id中按RDD分组了向量:RDD[(Int,Array[Vector])]。我希望通过id分离对每组向量进行聚类。

MlLib k-mean算法需要RDD[Vector]作为参数:

val kmean = new KMeans().setK(3)
  .setEpsilon(100)
  .setMaxIterations(10)
  .setInitializationMode("k-means||")
  .setSeed(System.currentTimeMillis())    

但显然 - 当我映射我的RDD时 - 我得到没有用RDD包裹的Array [Vector]:

// not work since e._2 is an Array[Vector] not RDD[Vector]! 
rdd.map(e => kmean.run(e._2))

所以问题是 - 我该如何进行这样的聚类?

感谢您提供建议方面的帮助!

0 个答案:

没有答案