階層的クラスタリング

Hierarchical Clustering

階層的クラスタリング(Hierarchical Clustering)とは、データを階層的な木構造(デンドログラム)に組織化するクラスタリング手法です。クラスタ数を事前に指定する必要がなく、異なる粒度でデータ構造を観察できます。

凝集型と分割型

凝集型(ボトムアップ)は各データ点を個別のクラスタとし、最も近いクラスタ同士を繰り返し結合していきます。分割型(トップダウン)は全データを1つのクラスタとし、順に分割していきます。凝集型が一般的です。

表:階層的クラスタリングの要点まとめ
ひとことで言うと近いもの同士を順にくっつけて、樹形図(デンドログラム)を作る分類手法。
何がうれしいかグループ数を事前に決めなくてよく、どこで切るかを図を見て決められる。
注意点データ件数が多いと計算量が急増する。数千件までが現実的な目安。

結合基準

クラスタ間の距離の計算方法には、最短距離法(Single Linkage)、最長距離法(Complete Linkage)、平均距離法(Average Linkage)、ウォード法(Ward's Method)などがあります。ウォード法がバランスの良いクラスタを生成しやすいとされています。

図:階層的クラスタリングの手順
1全件が個別1件=1グループ
▶
2最も近い2つを結合距離が近い順に
▶
3くり返すだんだん大きな塊に
▶
4樹形図が完成全体が1つになるまで
▶
5好きな高さで切るそこがグループ数

デンドログラム

階層的クラスタリングの結果はデンドログラム(樹形図)で可視化でき、任意の高さで切断することで異なるクラスタ数での分割結果を得られます。