K—means演算法實現流程

shuaishuai3409發表於2015-11-14

K-means 演算法實現流程

給定n個物件的資料集D,以及要生成的簇的數目k。把n個對像的集合分成k個簇,使得簇內的相似度高,簇間的相似度低。


1、從資料集D中隨機取k個元素,作為k個簇的各自的中心
2、分別計算剩下的元素到k個簇中心的相似度,將這些元素分別劃歸到相似度最高的簇
3、根據聚類結果,重新計算k個簇各自的中心,取簇中所有元素各自維度的算術平均值
4、將D中全部元素按照新的中心重新聚類
5、重複第4步,直到聚類結果不再變化
6、輸出結果


K-means的缺點:
1. 對於噪聲和離群點資料是敏感的,因為少量這類資料能夠對均值產生極大的影響。
2. 聚類前,使用者必須給出簇的數目k和隨機選取的k個點

相關文章