雜訊點(DBSCAN 雜訊概念) 是什麼?
Noise Point:雜訊點(DBSCAN 雜訊概念) 的完整解釋
在 DBSCAN 聚類演算法中,不屬於任何聚類的樣本點,即鄰域內核心點密度不足、也非邊界點的孤立資料點,通常代表離群值或異常值。
DBSCAN 聚類的基礎框架
DBSCAN(Density-Based Spatial Clustering of Applications with Noise)由 Ester 等人於 1996 年提出,是一種基於密度的聚類方法,能夠發現任意形狀的聚類,並能自然地識別雜訊點,不需要預先指定聚類數量(相較於 K-Means 需要指定 K 值)。DBSCAN 的兩個核心超參數是:
- ε(epsilon):鄰域半徑,定義「附近」的範圍
- MinPts:形成核心點所需的最小鄰域樣本數(含自身)
DBSCAN 的三種點類型
DBSCAN 根據每個點的密度特性,將其分為三類:
核心點(Core Point)
若某點的 ε 鄰域(以 ε 為半徑的圓內)包含至少 MinPts 個點(含自身),則稱該點為核心點。核心點處於聚類的密集中心區域,是擴展聚類的起點。
邊界點(Border Point)
不滿足核心點條件(鄰域內樣本數 < MinPts),但在某個核心點的 ε 鄰域內,稱為邊界點。邊界點被納入核心點所在的聚類,但自身不具有擴展能力。
雜訊點(Noise Point)
既非核心點,也不在任何核心點鄰域內的點,即:
- 自身 ε 鄰域的樣本數 < MinPts(非核心點)
- 同時,不被任何核心點的鄰域所覆蓋(非邊界點)
雜訊點是真正「孤立」的點,游離於所有密集區域之外。DBSCAN 最終輸出中,這些點被標記為類別 -1(在 scikit-learn 等實作中)。
雜訊點與離群值偵測
DBSCAN 的一大應用是異常偵測:雜訊點天然代表資料中與其他樣本顯著不同的孤立點,這些點在數值空間中遠離任何密集群組。實務應用包括:
- 金融詐欺偵測:交易行為孤立、與任何正常消費模式聚類都相距甚遠的交易
- 網路安全:不符合任何已知流量模式的異常網路封包
- 工業品質管控:生產參數遠離正常操作範圍的異常量測值
- 地理空間分析:遠離任何人口密集區的孤立地點
DBSCAN 聚類執行流程
- 隨機選取一個未訪問的點
- 計算其 ε 鄰域的點數:若 ≥ MinPts,標記為核心點並開始擴展聚類;若 < MinPts,暫時標記為雜訊點(可能後來被更新為邊界點)
- 從核心點出發,將其 ε 鄰域內所有點加入同一聚類;若鄰域內的點也是核心點,遞迴地繼續擴展
- 重複以上步驟直到所有點都已訪問
- 最終未被納入任何聚類的點即為雜訊點
參數 ε 和 MinPts 對雜訊點數量的影響
- ε 越大:每個點的鄰域範圍越大,越多點能達到 MinPts 閾值成為核心點,雜訊點減少,但可能合併本應分開的聚類
- ε 越小:鄰域縮小,更多點因鄰居太少而成為雜訊點,聚類更細分
- MinPts 越大:需要更多鄰居才能成為核心點,邊界點和雜訊點增加;MinPts 越小,更多點能成為核心點,雜訊點減少
實務上,常用 k-distance Graph(以每個點到第 k 個最近鄰的距離排序,找「膝點」)來輔助選擇 ε;MinPts 一般建議設為 2 × 特徵維度 或更大。
DBSCAN 與其他聚類演算法的比較
相較於 K-Means
- K-Means 要求預先指定 K 值,DBSCAN 不需要
- K-Means 假設聚類為球形,DBSCAN 能發現任意形狀
- K-Means 強迫所有點歸屬某聚類,DBSCAN 允許雜訊點的存在
相較於 HDBSCAN(Hierarchical DBSCAN) HDBSCAN 是 DBSCAN 的階層式改進版,不需要指定 ε 參數,對不同密度區域有更強的適應性,也能輸出雜訊點標記,是 DBSCAN 的現代替代方案。
局限性
- 高維資料中「距離」的概念會失去意義(維度災難),ε 參數難以選擇
- 對密度差異大的聚類效果不佳(各聚類密度不同時,單一 ε 難以同時適應所有聚類)
- 計算複雜度在最差情況為 O(n²)(雖然有樹狀索引可加速)
- 邊界點的歸屬可能不穩定(相同邊界點被不同核心點覆蓋時,歸屬取決於訪問順序)