org.apache.spark.rdd.RDD[(Long, Seq[org.apache.spark.mllib.linalg.Vector])]
该向量包含X、Y坐标,即成对的双打。我想为每个用户ID标识坐标集群,所以我在RDD上进行映射,并尝试为每个组运行k-means:
val userClusters = userCoordVectors.map {
case (userId, coords) =>
val clusters = 4
val iterations = 30
// Need to convert coords to RDD for input into K-Means
val parsedData = sc.parallelize(coords)
// Apply k-means
val model = KMeans.train(parsedData, clusters, iterations)
...
etc
}
但是当我运行这个时,我从一行中得到了一个NPE:
val parsedData = sc.parallelize(coords)
问题是,我必须将coords转换为RDD来进行K-Means操作。
val userClusters = sc.parallelize(userCoordVectors.collect.map {
...
})
不能在RDD运算符的任何函数中使用SparkContext或RDD。它们不能序列化并通过网络发送。
Matei Zaharia在这里回答:http://apache-spark-user-list.1001560.n3.nabble.com/can-we-get-a-spark-context-inside-a-mapper-td9605.html
您目前不能在Spark任务中使用SparkContext,因此在这种情况下,您必须调用某种本地K-means库。您可以尝试使用的一个示例是Weka(http://www.cs.waikato.ac.nz/ml/Weka/)。然后,您可以使用sparkcontext.wholetextfiles将文本文件作为字符串的RDD加载,并对每个文本文件调用Weka。
$k$均值聚类算法(k-means clustering algorithm) 在聚类的问题中,我们得到了一组训练样本集 ${x^{(1)},...,x^{(m)}}$,然后想要把这些样本划分成若干个相关的“类群(clusters)”。其中的 $x^{(i)}\in R^n$,而并未给出分类标签 $y^{(i)}$ 。所以这就是一个无监督学习的问题了。 $K$ 均值聚类算法如下所示: 随机初始化(
目标 在本章中,我们将了解K-Means聚类的概念,其工作原理等。 理论 我们将用一个常用的例子来处理这个问题。 T-shirt尺寸问题 考虑一家公司,该公司将向市场发布新型号的T恤。显然,他们将不得不制造不同尺寸的模型,以满足各种规模的人们的需求。因此,该公司会记录人们的身高和体重数据,并将其绘制到图形上,如下所示: 公司无法制作所有尺寸的T恤。取而代之的是,他们将人划分为小,中和大,并仅制造这
聚类 聚类,简单来说,就是将一个庞杂数据集中具有相似特征的数据自动归类到一起,称为一个簇,簇内的对象越相似,聚类的效果越好。它是一种无监督的学习(Unsupervised Learning)方法,不需要预先标注好的训练集。聚类与分类最大的区别就是分类的目标事先已知,例如猫狗识别,你在分类之前已经预先知道要将它分为猫、狗两个种类;而在你聚类之前,你对你的目标是未知的,同样以动物为例,对于一个动物集来
我有一个标题和两个坐标x和y的数据集。我只是好奇bufferedReader在Java中是如何工作的,下面的代码是我从Google获得的,用于在字符串变量中分别获得头和数据。 在使用R进行统计时,我们需要纠正一个行代码,其中我们提到Header=True,它自动从第2行开始读取。 谢谢--
我使用Math.random(我必须使用这个)得到随机数,试图找到平均值,但它总是输出错误的平均值,输出的随机数大致相同,我还必须使用switch语句,因为它是我的任务的一部分,谢谢。 我的目标是打印出随机数,并求出这些数字的总平均值,然而它并不像它应该的那样工作,因为它打印出了一个错误的值。我是一个新的java和我第一次使用这个网站,抱歉所有的错误,我犯了,非常感谢。
本文向大家介绍Python聚类算法之基本K均值实例详解,包括了Python聚类算法之基本K均值实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python聚类算法之基本K均值运算技巧。分享给大家供大家参考,具体如下: 基本K均值 :选择 K 个初始质心,其中 K 是用户指定的参数,即所期望的簇的个数。每次循环中,每个点被指派到最近的质心,指派到同一个质心的点集构成一个。然后,根据指