聚類分析--k均值聚類
阿新 • • 發佈:2018-11-27
無監督聚類
模型表示
給定樣本集
,針對聚類所得簇劃分
,最小化平方誤差SSE:
其中,
是簇
的均值向量。
演算法描述
重複進行直到收斂{
1.將每個樣本向量按照歐式距離歸入最近的類;
2.重新調整每個聚類中心
}
k的確定
-
手肘法
SSE和k的關係圖是一個手肘的形狀,而這個肘部對應的k值就是資料的真實聚類數。
圖片像一隻手肘,肘處的K即為最佳K值:K=2。 -
輪廓係數法
求出所有樣本的輪廓係數後再求平均值就得到了平均輪廓係數。平均輪廓係數的取值範圍為[-1,1],且簇內樣本的距離越近,簇間樣本距離越遠,平均輪廓係數越大,聚類效果越好。
某個樣本點 的輪廓係數定義如下:
其中,a是 與同簇的其他樣本的平均距離,稱為凝聚度,b是 與最近簇中所有樣本的平均距離,稱為分離度。
初始點選擇方法
選用層次聚類演算法進行初始聚類,然後從k個類別中分別隨機選取k個點,來作為kmeans的初始聚類中心點。
層次聚類演算法
先將n個樣本各自看成一類,計算樣本之間和類與類之間的相似度,選擇最大相似度的兩類合併為一個新類, 重複這一過程,直至所有的樣本都歸為一類為止.