密度聚類是一種基於密度的聚類方法,基於密度的聚類方法的主要思想是尋找被低密度區域分離的高密度區域。
密度度量
乙個點的區域性密度有不同的度量方式:
1. 畫個圈,數圈內其他點個數是一種方法。
2. 用圈內其他點和給點半徑的比值的高斯概率密度形式,對距離核心點距離近的給大權重。
3. 計算圈內距離最小的前n個點到核心點的距離之和。
小時候開玩笑,想要乙個人離自己遠一點,會說:「以我為圓心,5公尺為半徑,畫個圈,圈裡不能有你。」這個規則的後果就是,這個人和我的距離至少有5公尺,他在我周圍的密度就是極小。
密度距離中衡量乙個點的密度,和以上有相似的邏輯。如果給定半徑內包含的點多於給定的閾值,則認為這個點密度大,稱為核心點。而如果這個圈內其他點在同樣的規則下也是核心點,稱這些點密度可達。隨著範圍不斷擴大,不斷判斷出新的核心點,直到遇到給定半徑內,點數小於閾值的點,我們成為邊界點。噪音點是即不能被密度可達有不是核心點的點。
dbscan優點是允許帶雜訊,能發現任意形狀,不需要預先給定簇數。文字中特別稀疏資料聚類效果可能不太理想。
密度最大值聚類
高區域性密度點距離
知道衡量乙個點密度的不同種方法後,確定一種方法,就可以得到樣本每個點的區域性密度。任選乙個點a,設區域性密度比點a高出最小量的點為點b,點b到點a的距離就是點a高區域性密度點距離,記做di。
如果di很大,ρi也很大,說明這點周圍環繞很多其他點,並且比他密度大的點離他距離還很遠,則認為這個點是乙個聚類中心。如圖中點10,和點1。
如果di距離很大,ρi很小,說明他離比他密度高的點比較遠,這點離群索居,區域性密度還不高,則認為這樣的點是雜訊。如圖點26,27,28。
找到聚類中心後,再用其他聚類演算法聚類。這個演算法主要用在尋找聚類中心。
參考:
小象學院,鄒博《機器學習v》聚類
層次聚類:
密度聚類:
k means聚類,密度聚類,層次聚類優缺點
k means 優點 1,簡單,易於理解和實現 2,時間複雜度低 缺點 1,需要對均值給出定義,2,需要指定要聚類的數目 3,一些過大的異常值會帶來很大影響 4,演算法對初始選值敏感 5,適合球形聚類 層次聚類 優點 1,距離和規則的相似度容易定義,限制少 2,不需要預先制定聚類數 3,可以發現類的...
聚類和EM演算法 密度聚類
模型原型 class sklearn.cluster.dbscan eps 0.5,min samples 5,metric euclidean algorithm auto leaf size 30,p none,random state none 引數 eps 引數,用於確定鄰域大小 min s...
機器學習 聚類 密度聚類演算法
一,介紹 密度聚類演算法有多種,我們這裡主要介紹一種著名的密度聚類演算法 dbscan。首先,我們通過下圖了解幾個概念 1 鄰域,與中心x距離不超過 距離,如上圖紅色虛線圈 2 核心物件,確定聚類的初始點,如上圖的x1 3 密度直達,在聚類核心物件鄰域內的點,如上圖x2由x1密度直達 4 密度可達,...