使用Mahout矢量训练火花k-means

时间:2015-02-07 15:13:41

标签: apache-spark machine-learning mahout k-means apache-spark-mllib

我的hdfs中有一些Mahout向量的序列文件格式。是否有可能以某种方式使用相同的向量来训练Spark中的KMeans模型?我可以将现有的Mahout向量转换为Spark向量(mllib),但我想避免这种情况。

1 个答案:

答案 0 :(得分:1)

Spark不直接支持Mahout向量。你会 - 根据你的关注点 - 将它们转换为Spark Vectors。

val sc = new SparkContext("local[2]", "MahoutTest")
val sfData = sc.sequenceFile[NullWritable, MVector](dir)
val xformedVectors = sfData.map { case (label, vect) =>
  import collection.JavaConversions._
  (label, Vectors.dense(vect.all.iterator.map{ e => e.get}.toArray))
}