1. 程式人生 > >K-MEANS演算法的工作原理及流程

K-MEANS演算法的工作原理及流程

K-MEANS演算法:

輸入:聚類個數k,以及包含 n個數據物件的資料庫。

輸出:滿足方差最小標準的k個聚類。

處理流程:       

(1)  從 n個數據物件任意選擇 k 個物件作為初始聚類中心;

(2)  迴圈(3)到(4)直到每個聚類不再發生變化為止

(3)  根據每個聚類物件的均值(中心物件),計算每個物件與這些中心物件的距離;並根據最小距離重新對相應物件進行劃分;

(4)  重新計算每個(有變化)聚類的均值(中心物件)

k-means 演算法接受輸入量 k ;然後將n個數據物件劃分為 k個聚類以便使得所獲得的聚類滿足:同一聚類中的物件相似度較高;而不同聚類中的物件相似度較小。聚類相似度是利用各聚類中物件的均值所獲得一個“中心物件”(引力中心)來進行計算的。

k-means 演算法的工作過程說明如下:首先從n個數據物件任意選擇 k 個物件作為初始聚類中心;而對於所剩下其它物件,則根據它們與這些聚類中心的相似度(距離),分別將它們分配給與其最相似的(聚類中心所代表的)聚類;然 後再計算每個所獲新聚類的聚類中心(該聚類中所有物件的均值);不斷重複這一過程直到標準測度函式開始收斂為止。一般都採用均方差作為標準測度函式. k個聚類具有以下特點:各聚類本身儘可能的緊湊,而各聚類之間儘可能的分開。