ML10-層次聚類
阿新 • • 發佈:2018-11-11
層次聚類含義:
是構建簇層次結構的演算法。從分配給自己簇的所有的資料點開始,然後兩個距離最近的簇合併成一個簇,重複合併不同的簇,直到最後只剩下一個簇時,演算法終止。
聚類種類:
凝聚:
將每個物件當做一個單一的簇,將相似的簇進行合併,直到形成一個大的簇為止。類似於樹狀圖。
全連線的凝聚層次聚類方法:
- 獲取所有樣本的距離矩陣
- 將每個資料點作為一個單獨的簇
- 基於某一度量距離,合併兩個簇
- 更新矩陣距離
- 重複2-4,直到所有樣本都在同一個簇中
分裂:
分裂聚類正好與凝聚聚類相反。凝聚聚類是從下到上的聚類方法,分裂聚類是從上到下的方法。首先是將所有的物件都置於同一個簇中,然後逐漸細分成越來越小的簇,直到每個物件都獨成一簇,或者到達我們預設的某種終止條件,則分裂聚類結束。
度量距離:
要聚類,肯定需要計算距離,計算點與點之間的距離,聚類與聚類之間的距離。
度量距離的常用方法有:
- Single Linkage將兩個組合中距離最近的點作為這兩個組合間的距離
- Complete Linkage將兩個組合中,距離最大的點之間的距離,作為這兩個組合間的距離
- Average Linkage計算兩組合中的每兩個資料之間的距離,取其平均值,作為兩組合之間的距離
參考文章: