エルボー法とは

クラスタリングにおいて、最適なクラスタ数を求めるための手法。

直感的な理解

  • クラスタ数が多いほど、個々のクラスタサイズは小さく、同じクラスタのデータは近くに集まる = クラスタの歪みが小さい
  • クラスタ数をどんどん増やしていき、「これ以上増やしても歪みがあまり改善しない」ようなクラスタ数を選択する

方法

1. 様々なクラスタ数で学習

様々なクラスタ数でクラスタリングを行い、それぞれモデルの 歪み(distortion) を計算する。
k-means や FCM では SSE(クラスタ内誤差平方和)を歪みとして用いると良い。

2. クラスタ数と歪みの関係を描画

Distortion

この例だと、クラスタ数 = 4 あたりを超えるとクラスタ数を増やしても歪みがほとんど改善しない。
→ 最適なクラスタ数として4を選ぶ

このグラフを「腕」に見立てると、ちょうど「肘(elbow)」のあたりのクラスタ数を選ぶことになる(エルボー法の名称の由来)。

コード・動作確認

※ k-means, FCM のコードはこちら

data

elbow-kmeans

elbow-fcm