提及聚類算法的話,你們可能都知道Kmeans,做爲密度聚類算法中的一種,DBSCAN也是一種較爲經常使用的算法,DBSCAN中重要的參數是Eps和MinPts,那麼這兩個參數該如何肯定呢?算法
(1) Eps的值能夠使用繪製k-距離曲線(k-distance graph)方法得當,在k-距離曲線圖明顯拐點位置爲對應較好的參數。若參數設置太小,大部分數據不能聚類;若參數設置過大,多個簇和大部分對象會歸併到同一個簇中。ide
K-距離:K距離的定義在DBSCAN算法原文中給出了詳細解說,給定K鄰域參數k,對於數據中的每一個點,計算對應的第k個最近鄰域距離,並將數據集全部點對應的最近鄰域距離按照降序方式排序,稱這幅圖爲排序的k距離圖,選擇該圖中第一個谷值點位置對應的k距離值設定爲Eps。通常將k值設爲4。spa
(2) MinPts的選取有一個指導性的原則(a rule of thumb),MinPts≥dim+1,其中dim表示待聚類數據的維度。MinPts設置爲1是不合理的,由於設置爲1,則每一個獨立點都是一個簇,MinPts≤2時,與層次距離最近鄰域結果相同,所以,MinPts必須選擇大於等於3的值。若該值選取太小,則稀疏簇中結果因爲密度小於MinPts,從而被認爲是邊界點兒不被用於在類的進一步擴展;若該值過大,則密度較大的兩個鄰近簇可能被合併爲同一簇。所以,該值是否設置適當會對聚類結果形成較大影響。.net
參考orm
[1]https://blog.csdn.net/zhouxianen1987/article/details/68945844/對象
喜歡就關注一下啦~~~blog