K-means聚類
將n個觀測點,按一定標准(數據點的相似度),划歸到k個聚類(用戶划分、產品類別划分等)中。
重要概念:質心
K-means聚類要求的變量是數值變量,方便計算距離。
算法實現
R語言實現
k-means算法是將數值轉換為距離,然后測量距離遠近進行聚類的。不歸一化的會使得距離非常遠。
補充:scale歸一化處理的意義
兩個變量之間數值差別太大,比如年齡與收入的數值差別就很大。
步驟
第一步,確定聚類數量,即k的值
方法:肘部法則+實際業務需求
第二步,運行K-means模型
求出分組變量 kmeans_cluster$cluster,做為一個新增變量賦值給原數據survey.sample.data,最終以它作為輸出圖像的分組基礎。
第三步,總結聚類模型結果
k-means聚類的優劣
計算快,可解釋性強,能夠處理多種數據類型。
重要缺點有二:
1.均值聚類只對圓形或者橢圓形的散點分布形狀敏感。如果一些散點圖緊緊地形成了月牙形或者圓環形等不規則的聚類形狀,K均值聚類就會犯錯誤。
2.均值聚類要求每個類別中的散點圖數量都差不多。如果有一個部分點單獨聚成一類,k均值聚類會把它們打散並和其他類合並。