
利用k均值聚類算法進行祖源分析
k均值聚類算法(kmeans)是機器學習中無監(jiān)督學習的一種聚類算法。
原理:
先隨機選取K個對象作為初始的聚類中心。然后計算每個對象與各個種子聚類中心之間的距離,把每個對象分配給距離它最近的聚類中心。聚類中心以及分配給它們的對象就代表一個聚類。一旦全部對象都被分配了,每個聚類的聚類中心會根據(jù)聚類中現(xiàn)有的對象被重新計算。這個過程將不斷重復直到滿足某個終止條件。終止條件可以是以下任何一個:
1)沒有(或最小數(shù)目)對象被重新分配給不同的聚類。
2)沒有(或最小數(shù)目)聚類中心再發(fā)生變化。
3)誤差平方和局部最小。
------
我們以從某處(懂得都懂)獲取到的國內(nèi)人群祖源PCA二維數(shù)據(jù)為例
首先目前k值我們是未知的,所以我們先以CH系數(shù)為衡量聚類效果的標準,CH系數(shù)越高聚類效果越好。所以我們先求從3到20的CH系數(shù)。
代碼:
?
CH系數(shù)可視化:
?
因為k值越小(也就是分的類別越少)我們分析起來就越方便,所以我們遵從的規(guī)則是在保證CH系數(shù)的前提下盡量選擇小k值。根據(jù)可視化結果可以觀察出,k=5或許是個較好的選擇。
?
接著上代碼:
?
可視化聚類結果(紅色五角星為每一簇的質(zhì)心)
?
與原來帶標簽的散點圖對比:
?
將兩圖對比我們可大概分析出
質(zhì)心從左向右分別為:西北地區(qū)少數(shù)民族、西北地區(qū)漢族以及華北地區(qū)和少部分西南地區(qū)、華中東部、西南以及華東地區(qū)、華南地區(qū)。
原理:
先隨機選取K個對象作為初始的聚類中心。然后計算每個對象與各個種子聚類中心之間的距離,把每個對象分配給距離它最近的聚類中心。聚類中心以及分配給它們的對象就代表一個聚類。一旦全部對象都被分配了,每個聚類的聚類中心會根據(jù)聚類中現(xiàn)有的對象被重新計算。這個過程將不斷重復直到滿足某個終止條件。終止條件可以是以下任何一個:
1)沒有(或最小數(shù)目)對象被重新分配給不同的聚類。
2)沒有(或最小數(shù)目)聚類中心再發(fā)生變化。
3)誤差平方和局部最小。
------
我們以從某處(懂得都懂)獲取到的國內(nèi)人群祖源PCA二維數(shù)據(jù)為例
首先目前k值我們是未知的,所以我們先以CH系數(shù)為衡量聚類效果的標準,CH系數(shù)越高聚類效果越好。所以我們先求從3到20的CH系數(shù)。
代碼:
?
CH系數(shù)可視化:
?
因為k值越小(也就是分的類別越少)我們分析起來就越方便,所以我們遵從的規(guī)則是在保證CH系數(shù)的前提下盡量選擇小k值。根據(jù)可視化結果可以觀察出,k=5或許是個較好的選擇。
?
接著上代碼:
?
可視化聚類結果(紅色五角星為每一簇的質(zhì)心)
?
與原來帶標簽的散點圖對比:
?
將兩圖對比我們可大概分析出
質(zhì)心從左向右分別為:西北地區(qū)少數(shù)民族、西北地區(qū)漢族以及華北地區(qū)和少部分西南地區(qū)、華中東部、西南以及華東地區(qū)、華南地區(qū)。
3 個回復
-3.04E-03,3.42E-04
-1.61E-02,-5.71E-02
1.10E-02,-4.41E-03
-6.22E-03,-6.66E-03
3.39E-03,-9.45E-04
贊同來自:
贊同來自:
贊同來自:
要回復問題請先登錄或注冊