演算法 K Means 聚類

2021-10-23 10:39:43 字數 1638 閱讀 1123

聚類:事先不知道資料會分為幾類,通過聚類分析將資料聚合成幾個群體。聚類不需要對資料進行訓練和學習。屬於無監督學習。

k-means 聚類

聚類演算法有很多種,k-means 是聚類演算法中的最常用的一種.

k-means 聚類演算法的大致意思就是「物以類聚,人以群分」:

首先輸入 k 的值,即我們指定希望通過聚類得到 k 個分組;

從資料集中隨機選取 k 個資料點作為初始大佬(質心);

對集合中每乙個小弟,計算與每乙個大佬的距離,離哪個大佬距離近,就跟定哪個大佬。

這時每乙個大佬手下都聚集了一票小弟,這時候召開選舉大會,每一群選出新的大佬(即通過演算法選出新的質心)。

如果新大佬和老大佬之間的距離小於某乙個設定的閾值(表示重新計算的質心的位置變化不大,趨於穩定,或者說收斂),可以認為我們進行的聚類已經達到期望的結果,演算法終止。

如果新大佬和老大佬距離變化很大,需要迭代3~5步驟。

有6個點,從圖上看應該可以分成兩堆,前三個點一堆,後三個點另一堆。現在我手工地把 k-means 計算過程演示一下,同時檢驗是不是和預期一致:

1.設定 k 值為2

2.選擇初始大佬(就選 p1 和 p2)

3.計算小弟與大佬的距離:

從上圖可以看出,所有的小弟都離 p2 更近,所以次站隊的結果是:

a 組:p1

b 組:p2、p3、p4、p5、p6

4.召開選舉大會:

a 組沒什麼可選的,大佬就是自己

b 組有5個人,需要重新選大佬,這裡要注意選大佬的方法是每個人 x 座標的平均值和 y 座標的平均值組成的新的點,為新大佬,也就是說這個大佬是「虛擬的」。因此,b 組選出新大哥的座標為:p 哥((1+3+8+9+10)/5,(2+1+8+10+7)/5)=(6.2,5.6)。

綜合兩組,新大哥為 p1(0,0),p哥(6.2,5.6),而p2-p6重新成為小弟。

5.再次計算小弟到大佬的距離:

這時可以看到p2、p3離p1更近,p4、p5、p6離p哥更近,所以第二次站隊的結果是:

a 組:p1、p2、p3

b 組:p4、p5、p6(虛擬大哥這時候消失)

6.第二屆選舉大會:

同樣的方法選出新的虛擬大佬:p哥1(1.33,1),p哥2(9,8.33),p1-p6都成為小弟。

7.第三次計算小弟到大佬的距離:

這時可以看到 p1、p2、p3 離 p哥1 更近,p4、p5、p6離 p哥2 更近,所以第二次站隊的結果是:

a 組:p1、p2、p3

b 組:p4、p5、p6

我們可以發現,這次站隊的結果和上次沒有任何變化了,說明已經收斂,聚類結束,聚類結果和我們最開始設想的結果完全一致。

K Means聚類演算法

k means聚類演算法 intergret kmeans演算法的基本思想是初始隨機給定k個簇中心,按照最鄰近原則把待分類樣本點分到各個簇。然後按平均法重新計算各個簇的質心,從而確定新的簇心。一直迭代,直到簇心的移動距離小於某個給定的值。k means聚類演算法主要分為三個步驟 1 第一步是為待聚類...

聚類演算法 K means

演算法接受引數 k 然後將事先輸入的n個資料物件劃分為 k個聚類以便使得所獲得的聚類滿足 同一聚類中的物件相似度較高 而不同聚類中的物件相似度較小。聚類相似度是利用各聚類中物件的均值所獲得乙個 中心物件 引力中心 來進行計算的。k means演算法是最為經典的基於劃分的聚類方法,是十大經典資料探勘演...

k means聚類演算法

說到聚類,得跟分類區別開來,分類是按人為給定的標準將樣本歸到某個類別中去,在機器學習中多是監督學習,也就是訓練樣本要給標籤 正確的類別資訊 而聚類是在某種規則下自動將樣本歸類,在機器學習中是無監督學習,不需要提前給樣本打標籤。k means聚類演算法,就是在某種度量方式下,將樣本自動劃分到k個類別中...