Density Peak

原文出自:https://blog.csdn.net/LilyXFan/article/details/70598509?locationNum=1&fps=1


參考文獻:2014年發表在Nature上的文章Clustering by fast search and find of density peaks

核心思想:密度比鄰居節點高、與比其密度大的點的距離相對大的點是聚類中心。

1. 兩個定義:

1.1.局部密度ρ


ρi=jχ(dijdc)

其中,χ(x)={1,0,x<0otherwise (cutoff kernal)
也可以採用gassion kernal計算:
ρi=jexp((dijdc)2)

1.2.密度比i大且距i最近的點與i的距離δ
δi=minj:ρj>ρidij

特別的,對於密度最大的點,δi=maxj(dij)

2.聚類中心的選擇
ρ

δ相對較大的點爲聚類中心,通過ρ-δ

散點圖觀察

3.其他點的分配
其餘非聚類中心點,被分配到密度比其大、距離最近的點所屬的類(高密度向低密度傳播,因此適用於流型)

4.分配的可靠性度量

  • 沒有引入noise-signal cutoff.本文爲每個聚類定義了border

  • region(分配到該類但距其他類中點的距離小於dc的點的集合) 對每個聚類,找到其borderregion中點的最大密度ρb


在某個聚類c中,ρi

>ρb
  • ,則i會分配到聚類c中,否則i被稱爲halo(可以被理解爲噪聲)

5.dc的取值
可以去dc,使得平均鄰居數佔數據集中所有點的1%-2%
dc的取值具有魯棒性,dc大,ρ

大,計算δ

和選中心點時只比較相對大小,與具體的數值無關

6.cutoff kernal or gaussion kernal
對與小數據集,ρ

δ 的計算不可避免的受統計誤差影響,因此計算ρ

時採用gaussion kernal要更好些。

7.實驗效果
輸入:距離矩陣/相似度矩陣
(不一定要是歐式距離),只需要點之間的關係(通過MDS多維尺度變換能直觀的展現數據點之間在多種距離上離得多近,還可以產生一個低維的數據點表示,MDS不需要原始數據,只需要衡量點間距離的距離矩陣。)
7.1.Spiral
這裏寫圖片描述
7.2.Flame
這裏寫圖片描述
7.3.Aggregation
這裏寫圖片描述
7.4.Jain
這裏寫圖片描述

8.思考
Q1.當密度分佈不均勻時,聚類效果如何?

效果不好(如Jain數據集),在計算局部密度時並沒有考慮局部結構
Q2.重疊羣組?
不交叉

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章