主题
Search

K-Means 聚类算法


一种用于将 (或聚类) N 个数据点划分为 K 个不相交子集 S_j 的算法,这些子集包含 N_j 个数据点,目的是最小化平方和准则

 J=sum_(j=1)^Ksum_(n in S_j)|x_n-mu_j|^2,

其中 x_n 是表示第 n 个数据点的向量,而 mu_j几何质心S_j 中的数据点的几何质心。一般来说,该算法无法实现 J 对分配的 全局最小值。事实上,由于该算法使用离散分配而不是一组连续参数,因此它达到的“最小值”甚至不能被恰当地称为局部最小值。尽管存在这些局限性,但由于该算法易于实现,因此仍被相当频繁地使用。

该算法由一个简单的重估计过程组成,如下所示。最初,数据点被随机分配到 K 个集合。对于步骤 1,计算每个集合的质心。在步骤 2 中,每个点都被分配到其质心最接近该点的簇。这两个步骤交替进行,直到满足停止标准,即数据点的分配不再发生进一步变化时。


另请参阅

全局最小值局部最小值最小值

使用 Wolfram|Alpha 探索

参考文献

Bishop, C. M. 模式识别的神经网络。 牛津,英格兰:牛津大学出版社,1995 年。

在 Wolfram|Alpha 上被引用

K-Means 聚类算法

以此引用

Weisstein, Eric W. “K-Means 聚类算法。” 来自 MathWorld--Wolfram Web 资源。 https://mathworld.net.cn/K-MeansClusteringAlgorithm.html

学科分类