算法核心邏輯是:
A、指定需要把人群劃分為x個(gè)類
B、算法自動(dòng)把相似的人劃分到對(duì)應(yīng)的類中
C、得到x個(gè)類的人,每個(gè)類的人行為相似
算法實(shí)例
根據(jù)2006年、2010年世界杯,2007亞洲杯中各個(gè)國(guó)家的比賽成績(jī),來(lái)把亞洲的國(guó)家足球?qū)嵙澐殖扇齻€(gè)類別。
初始數(shù)據(jù)如下圖,分別展示了2006年、2010年世界杯,2007亞洲杯中亞洲各個(gè)國(guó)家隊(duì)的成績(jī)

1、先隨機(jī)抽取三個(gè)簇心,分別為
簇心A(日本)0.3 0 0.19
簇心B(巴林)0.7 0.76 0.5
簇心C(泰國(guó))1 1 0.5
2、分別計(jì)算各個(gè)國(guó)家距離簇心A、B、C的歐幾里得距離

計(jì)算結(jié)果為:

3、第一次聚類結(jié)果
簇心A(日本): 日本、韓國(guó)
簇心B(巴林): 伊朗、沙特、烏茲別克、巴林、朝鮮
簇心C(泰國(guó)): 中國(guó)、伊拉、卡塔爾、阿聯(lián)酋、泰國(guó)、越南、阿曼、印尼
4、重新計(jì)算簇心A、B、C的坐標(biāo)(同一個(gè)簇心里各個(gè)元素的平均值)
X =(X1 + X2 + Xn)/n
Y = (Y1 + Y2 + Yn)/n
Z = (Z1 + Z2 + Zn)/n
簇心A =(0.15,0.075,0.16)
Xa =(0.3 + 0)/2 = 0.15
Ya = (0 + 0.15)/ 2 = 0.075
Za = (0.19 + 0.13)/ 2 = 0.16
同理
簇心B =(0.528,0.744,0.412)
簇心C = (1,0.94,0.40625)
5、重復(fù)步驟2,再次計(jì)算各個(gè)國(guó)家距離簇心A、B、C的距離

6、第二次聚類結(jié)果
第二次聚類結(jié)果
簇心A: 日本、韓國(guó)
簇心B: 伊朗、沙特、烏茲別克、巴林、朝鮮
簇心C: 中國(guó)、伊拉克、卡塔爾、阿聯(lián)酋、泰國(guó)、越南、阿曼、印尼
7、重復(fù)上述步驟,直到簇心不變或者變化很小
8、 分別計(jì)算簇心A、B、C距離0點(diǎn)的距離,最近的簇心包含的國(guó)家位于第一梯隊(duì),依次位于第二梯隊(duì)、第三梯隊(duì)
K-means算法公式如下:
