天天看點

推薦算法-聚類-DBSCAN

DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一個比較有代表性的基于密度的聚類算法,類似于均值轉移聚類算法,但它有幾個顯著的優點。

推薦算法-聚類-DBSCAN
  1. DBSCAN以一個從未通路過的任意起始資料點開始。這個點的領域是用距離ε(所有在ε的點都是鄰點)來提取的。
  2. 如果在這個鄰域中有足夠數量的點(根據minPoints),那麼聚類過程就開始了,并且目前的資料點成為新聚類中的第一個點。否則,該點将被标記為噪聲(稍後這個噪聲點可能會成為聚類的一部分)。在這兩種情況下,這一點都被标記為(visited)。
  3. 對于新聚類中的第一個點,其ε距離附近的店也會成為同意了聚類的一部分。這一過程在ε臨近的所有點都屬于同一個聚類,然後重複所有剛剛添加到聚類組的新點。
  4. 步驟2和步驟3的過程将重複,直到所有點都被确定,就是說在聚類附近的所有點都已被通路和标記。
  5. 一旦我們完成了目前的聚類,就會檢索并處理一個新的未通路點,這将導緻進一步的聚類或噪聲的發現。這個過程不斷地重讀,直到所有的點被标記為通路。因為在所有的點都被通路過之後,每一個點都被标記為屬于一個聚類或者是噪聲。

DBSCAN的主要缺點是,當聚類具有不同的密度時,它的性能不像其他聚類算法那樣好。這是因為當密度變化時,距離門檻值ε和識别臨近點的minPoints的設定會随着聚類的不同而變化。這種缺點也會出現在非常高緯的資料中心,因為距離門檻值ε變得難以估計。