聚类K-means算法用于拉长数据集

时间:2016-11-18 07:05:17

标签: machine-learning cluster-analysis k-means

我在Matlab中编写K-means算法时遇到了问题。为什么K-means算法不适合对细长数据集进行分类?

2 个答案:

答案 0 :(得分:-1)

排序,在纸上画一些粗线。您真的可以用一点来代表每个人吗?单点将如何提供有关方向的信息?

K均值将每个数据点分配给每个最近重心。也就是说,对于每个质心c,与c距离较小的所有点(与所有其他质心相比)都将分配给c。而且,由于(超)球的表面实际上是距中心的距离小于或等于某个值的所有点,因此,我认为很容易看出所得簇如何趋向于球形。 (确切地说,kmeans实际上在向量空间中创建了 Voronoi图

但是,拉长的簇不一定满足所有点都比其他簇的中心更靠近其“质心”的要求。

答案 1 :(得分:-3)

您很难在细长数据集中选择初始聚类中心点,但它会对结果产生强大影响。选择不同点时可能会得到不同的结果。

当您选择3个初始点时,您将只获得一个结果:

enter image description here

但是在细长的数据集中它是不同的。