我最近阅读了k-Means 的 Single Pass Seed Selection Algorithm文章,但并不真正理解该算法,即:
- 计算距离矩阵
Dist,其中表示从到的Dist (i,j)距离ij - 求
Sumv其中th 点到所有其他点Sumv (i)的距离之和。i - 找到是的点
i并min (Sumv)设置Index = i - 添加第一个
C作为第一个质心 - 对于每个点
xi,设置为与最近点D (xi)之间的距离xiC - 找到
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 - 重复步骤 5-8 直到
k居中
尤其是第 6 步,我们仍然Index一遍又一遍地使用相同(相同的点)还是使用新添加的点C?关于第 8 步,是否i必须大于1?