クラスタリングの手法の種類について

AI実装検定のご案内

クラスタリングは正解ラベルを持たないデータを、類似性に基づいて自動的にグループ化する教師なし学習手法です。

本稿では、アルゴリズムの思想ごとに分類し、それぞれの前提条件・強み・制約を明確に整理します。

目次

クラスタリング手法の体系的分類

クラスタリング手法は、概ね以下の6系統に整理できます。

  1. 分割型(Partitioning-based)
  2. 階層型(Hierarchical)
  3. 密度ベース(Density-based)
  4. モデルベース(Model-based)
  5. グラフ・スペクトラル系
  6. その他・発展的手法

以下、各カテゴリを順に解説します。

分割型クラスタリング(Partitioning-based)

基本思想

  • クラスタ数を事前に指定
  • データを複数のグループに直接分割
  • 各クラスタは代表点(重心や実データ点)で表現される

K-means法

原理

  1. クラスタ数 k を指定
  2. 各クラスタの重心を初期化
  3. 各データ点を最も近い重心に割り当て
  4. 割り当て結果から重心を再計算
  5. 収束するまで反復

特性

  • ユークリッド距離と平均との差を最小化
  • 同程度の分散を持つ凸形状のクラスタに適合しやすい

注意点

  • クラスタ数 k を事前に決める必要がある
  • 初期値依存性がある
  • 分散差・非凸形状・外れ値に弱い

K-medoids(PAM)

特徴

  • クラスタ代表点として「実データ点」を使用
  • K-meansより外れ値に対してロバスト

制約

  • 計算コストが高く、大規模データには不向き

※ PAMはK-medoidsを実現する代表的アルゴリズムの一つ。

階層型クラスタリング(Hierarchical)

基本思想

  • データ間の距離関係をもとに階層構造を構築
  • クラスタ数は後から決定可能
  • 結果はデンドログラム(樹形図)として表現される

凝集型(Agglomerative)

  • 各データを1クラスタとして開始
  • 距離が近いクラスタ同士を逐次統合

主なリンク法

  • Single linkage(最近傍距離)
  • Complete linkage(最遠距離)
  • Average linkage(平均距離)
  • Ward法(クラスタ内分散増加最小)

Ward法は通常ユークリッド距離前提であり、任意の距離尺度にそのまま適用できるわけではない点に注意。

計算特性

  • 距離行列保持により メモリ計算量 O(n²) が発生
  • 実装次第では時間計算量が O(n³) 方向に悪化する場合もある
  • 中〜小規模データ向け

密度ベースクラスタリング(Density-based)

基本思想

  • データ密度が高い領域をクラスタとして抽出
  • 低密度領域はノイズとして扱う

DBSCAN

主なパラメータ

  • ε(近傍半径)
  • minPts(最小近傍点数)

特徴

  • クラスタ数を事前指定しない
  • 任意形状のクラスタを検出可能
  • 外れ値を自然に分離できる

制約

  • 単一の密度基準のため、密度が異なるクラスタ混在には弱い
  • パラメータ調整が難しい

HDBSCAN

  • DBSCANを階層的に拡張した手法
  • 複数密度レベルを扱える
  • クラスタの安定性に基づいて抽出

※ 単なる改良版というより、密度ベース+階層構造のハイブリッドと捉える方が正確。

モデルベースクラスタリング(Model-based)

基本思想

  • データは確率分布から生成されていると仮定
  • 統計モデルを用いてクラスタを推定

Gaussian Mixture Model(GMM)

原理

  • 各クラスタを正規分布として仮定
  • EMアルゴリズムでパラメータ推定

特徴

  • 楕円形状のクラスタに対応
  • 各データの所属確率が得られる(ソフトクラスタリング)

注意点

  • 正規分布仮定に依存
  • 外れ値により平均・共分散が影響を受けやすい
  • 計算コストはやや高め

グラフ・スペクトラル系クラスタリング

基本思想

  • データをグラフ構造として表現
  • 類似度行列を分割することでクラスタを抽出

スペクトラルクラスタリング

特徴

  • 非線形構造のクラスタに強い
  • 複雑な形状を扱える

制約

  • 類似度行列作成・固有値分解が必要
  • 計算量・メモリ使用量が大きく、大規模データには不向き

その他・発展的クラスタリング手法

Mean Shift

  • 密度のピークを探索
  • クラスタ数は自動決定
  • 帯域幅(bandwidth)の設定に強く依存
  • 計算コストが高い

OPTICS

  • DBSCANの拡張
  • 密度変化に強く、クラスタ構造を連続的に捉える

BIRCH

  • 大規模データ向け
  • 階層型と分割型のハイブリッド

深層学習ベース手法

  • AutoEncoderなどで特徴表現を学習
  • 低次元空間でクラスタリングを実行

手法選択の整理

条件適した系統
高速処理が必要分割型
外れ値が多い密度ベース
クラスタ数が不明階層型・密度ベース
非線形構造スペクトラル
確率的解釈が必要モデルベース
大規模データBIRCH等

まとめ

  • K-means:高速・単純だが形状制約あり
  • 階層型:構造理解に優れるが計算量に注意
  • 密度ベース:ノイズ耐性が高い
  • GMM:柔軟で確率的だが仮定に依存
  • スペクトラル:複雑構造向けだが計算負荷大

クラスタリングではデータの構造・分布・規模・距離尺度を踏まえた手法選択が不可欠です。

以上、クラスタリングの手法の種類についてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次