DBSCAN: 密度に基づくクラスタリング
アルゴリズム 1
DBSCANDensity-Based Spatial Clustering of Applications with Noiseは 距離空間 $\left( X , d \right)$ における点の密度に基づいて クラスタリング を行うアルゴリズムだ。二つの ハイパーパラメータ である半径radius $\varepsilon > 0$ と密度の基準となる最小点数minimal number of points $m$ が与えられる。
- 有限集合 $D \subset X$ を データベースdatabaseと呼ぶ。
- $p \in D$ に対して $N_{\varepsilon} \left( p \right) = \left\{ q \in X \mid d \left( p , q \right) \le \varepsilon \right\}$ を $p$ の 近傍neighborhoodと呼ぶ。
- $p \in D$ が $| N_{\varepsilon} \left( p \right) | \ge m$ を満たすなら $p$ を コア点core pointと呼ぶ。
- $p \in D$ がコア点でないが、$N_{\varepsilon} \left( p \right)$ が他のコア点を含むなら $p$ を 境界点border pointと呼ぶ。
- コア点 $q$ に対して $p \in N_{\varepsilon} \left( q \right)$ であれば $q$ は $p$ に 直接到達可能directly reachableであるという。 $$ p = p_{1} , \cdots , p_{n} = q $$ 上のように $p_{k}$ が $p_{k+1}$ に直接到達可能であり $p = p_{1}$ かつ $q = p_{n}$ な シーケンス が存在すれば $p$ は $q$ に 到達可能reachableであるという。
- 二つの $p , q \in D$ に到達可能なコア点 $o \in D$ が存在すれば $p$ と $q$ は 連結connectedしているという。
- 空集合 でない $C \subseteq D$ の全ての $\forall p, q \in C$ が次の二条件を満たすなら クラスタclusterと呼ぶ。
- (i) 最大性: もし $p$ から $q$ へ到達可能なら、$q \in C$ である。
- (ii) 連結性: $p$ と $q$ は連結している。
- どのクラスタにも属さない点を ノイズnoiseと呼ぶ。
| アルゴリズム: 密度に基づくクラスタリング | ||
|---|---|---|
| 入力 | $\varepsilon > 0$, $m \in \mathbb{N}$ データベース $D$ | |
| 1. | これまで未確認の任意の点 $p \in D$ を選択する。 | |
| 2. | $N_{\varepsilon}(p) \ge m$ ならコア点とする。 | |
| 3. | コア点 $p$ の近傍に別のコア点 $q$ が含まれていれば、両コア点を含むクラスタを一つにマージする。 | |
| 4. | $p$ の近傍に未確認の点があればその点を選択して 2 に戻り、未確認点がなければ 1 に戻る。 | |
| 5. | 全ての点を確認したらアルゴリズムを終了する。コア点でない各点について、どのコア点の近傍に含まれるかを確認し、境界点とノイズを区別する。 | |
| 出力 | クラスタの集合 $\left\{ C_{k} \right\}$ |
説明 2
到達可能性と連結性の違いはコア点に限られるかどうかだ。連結性は 対称的 な関係であるのに対し、到達可能である主体になるためにはコア点である条件が必要なので、$p$ が $q$ に到達可能でもその逆が成り立たないことがある。

人気
2025年時点でクラスタリングと言えば、通常DBSCANは終着のアルゴリズムといってよいほど非常に優れた性能を示し、長年広く使われてきた手法だ。 $k$-平均クラスタリング が単純さを武器にし、階層的クラスタリング が直感性を武器にするなら、DBSCANは比較的複雑なデータセットでも高い一貫性を持つ。
DBSCAN以降、クラスタリングアルゴリズムの発展が全くなかったわけではないが、$k$-平均クラスタリングや階層的クラスタリングがそうであったように細かな変形が試みられただけで、その堅固な地位を揺るがすには至らなかった。こうして三つのアルゴリズムはクラスタリング界の三神器と見なされ、EMアルゴリズムなどの手法は教科書で少し触れられる程度にとどまる。
特に 人工知能 の時代が到来してからは 教師あり学習 が圧倒的に優勢となり、クラスタリング手法の革新はほとんど止まったように見える。逆に言えば、クラスタリング自体を研究するつもりがないならDBSCANを最後に学習を終えてもよい、ということでもある。
Ester, M., Kriegel, H. P., Sander, J., & Xu, X. (1996, August). A density-based algorithm for discovering clusters in large spatial databases with noise. In kdd (Vol. 96, No. 34, pp. 226-231). https://cdn.aaai.org/KDD/1996/KDD96-037.pdf ↩︎
https://www.digitalvidya.com/blog/the-top-5-clustering-algorithms-data-scientists-should-know/ ↩︎
