1. 程式人生 > >Science發表的超讚聚類演算法

Science發表的超讚聚類演算法

作者(Alex Rodriguez, Alessandro Laio)提出了一種很簡潔優美的聚類演算法, 可以識別各種形狀的類簇, 並且其超引數很容易確定.

演算法思想
聚類過程
那些有著比較大的區域性密度ρi和很大的δi的點被認為是類簇的中心. 區域性密度較小但是δi較大的點是異常點.在確定了類簇中心之後, 所有其他點和距離其最近的密度大於該點的點屬於同一個類簇. 圖例如下:



左圖是所有點在二維空間的分佈, 右圖是以ρ為橫座標, 以δ為縱座標, 這種圖稱作決策圖(decision tree). 可以看到, 1和10兩個點的ρiδi都比較大, 作為類簇的中心點. 26, 27, 28三個點的
δi也比較大, 但是ρi較小, 所以是異常點.
聚類分析
在聚類分析中, 通常需要確定每個點劃分給某個類簇的可靠性. 在該演算法中, 可以首先為每個類簇定義一個邊界區域(border region), 亦即劃分給該類簇但是距離其他類簇的點的距離小於dc的點. 然後為每個類簇找到其邊界區域的區域性密度最大的點, 令其區域性密度為ρh. 該類簇中所有區域性密度大於ρh的點被認為是類簇核心的一部分(亦即將該點劃分給該類簇的可靠性很大), 其餘的點被認為是該類簇的光暈(halo), 亦即可以認為是噪音. 圖例如下

[url=http://www.kemaswill.com/wp-content/uploads/2014/06/Screen-Shot-2014-06-28-at-%E4%B8%8B%E5%8D%8809.27.11.png]


A圖為生成資料的概率分佈, B, C二圖為分別從該分佈中生成了4000, 1000個點. D, E分別是B, C兩組資料的決策圖(decision tree), 可以看到兩組資料都只有五個點有比較大的ρi和很大的δi. 這些點作為類簇的中心, 在確定了類簇的中心之後, 每個點被劃分到各個類簇(彩色點), 或者是劃分到類簇光暈(黑色點). F圖展示的是隨著抽樣點數量的增多, 聚類的錯誤率在逐漸下降, 說明該演算法是魯棒的.

最後展示一下該演算法在各種資料分佈上的聚類效果, 非常贊.

[url=http://www.kemaswill.com/wp-content/uploads/2014/06/Screen-Shot-2014-06-28-at-%E4%B8%8B%E5%8D%8809.27.22.png][/url]


參考文獻:

[1]. Clustering by fast search and find of density peak. Alex Rodriguez, Alessandro Laio

from:http://www.kemaswill.com/machine-learning/science%e5%8f%91%e8%a1%a8%e7%9a%84%e8%b6%85%e8%b5%9e%e8%81%9a%e7%b1%bb%e7%ae%97%e6%b3%95/