我最近阅读了Single Pass Seed Selection Algorithm for k-Means文章,但并不是真正理解这个算法,它是:
Dist
,其中Dist (i,j)
表示距i
到j
的距离Sumv
,其中Sumv (i)
是从i
点到所有其他点的距离之和。i
点min (Sumv)
并设置Index = i
C
添加为第一个质心xi
,将D (xi)
设置为xi
与C
中最近点之间的距离y
视为n/k
Index
个最近点的距离总和
i
,以便D(x1)^2+D(x2)^2+...+D(xi)^2 >= y > D(x1)^2+D(x2)^2+...+D(x(i-1))^2
xi
添加到C
k
居中特别是第6步,我们是否仍然反复使用相同的Index
(同一点),或者我们使用C
中新添加的点?关于第8步,i
是否必须大于1
?
答案 0 :(得分:4)
老实说,我不担心理解那篇论文 - 它不是很好。
通过学习和理解他们正在比较的k-means ++算法,并从中读取一些历史记录,您将获得更多好处。
如果你真的想了解他们在做什么,我会刷你的matlab并阅读他们提供的matlab代码。但它并不值得。如果你查看分位数种子选择算法,它们基本上是在做一些非常相似的事情。它们不是使用到第一个种子的距离来对点进行排序,而是使用成对距离的总和(这意味着它们不需要初始种子,因此是唯一的解决方案)。
答案 1 :(得分:-1)
单程种子选择算法是一种新颖的算法。单通道意味着没有任何迭代,可以选择第一个种子。 k-means ++的表现取决于第一粒种子。它在SPSS中被克服。请通过同一作者的论文“用于k-means的鲁棒种子选择算法”
John J. Louis