主題
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 中,每個點都被分配到其質心最接近該點的簇。這兩個步驟交替進行,直到滿足停止標準,即資料點的分配不再發生進一步變化時。


另請參閱

全域性最小值區域性最小值最小值

使用 探索

參考文獻

Bishop, C. M. 模式識別的神經網路。 牛津,英格蘭:牛津大學出版社,1995 年。

在 上被引用

K-Means 聚類演算法

以此引用

Weisstein, Eric W. “K-Means 聚類演算法。” 來自 Web 資源。 https://mathworld.tw/K-MeansClusteringAlgorithm.html

學科分類