AMAZON でお買物

データサイエンティストが誰も教えてくれない真実:エルボー法はただの蜃気楼だった

AI

― k-means クラスタリングと”幻想の最適値”をめぐる物語 ―

あれ?なんか…それっぽく見える

データ分析を始めたばかりのころ、あなたはこんな経験をしたことがありませんか?
クラスタリングをしてみて、SSE(誤差)のグラフを描いたら、急にガクッと曲がる”ひじ”のような部分が現れた。
その瞬間、思わず「これだ!」と膝を打ちたくなった。
—まるで正解がそこに浮かび上がったかのように。

私もその一人でした。
あの”エルボー法(elbow method)”が、まるで魔法のコンパスのように思えたのです。
直感的で、シンプルで、グラフさえ描ければすぐに「最適なクラスタ数k」が見つかるなんて、こんなに便利な話はないと信じていました。

けれど、ある時気づいたのです。
あれは魔法でもコンパスでもなく、蜃気楼だったのだと。

k-means って、ほんとはこういうもの

そもそも、k-means クラスタリングとはどんな手法なのでしょうか。
これはデータを「k個のグループ(クラスタ)」に分けるための、非常にシンプルなアルゴリズムです。
全体のデータの中に「重心」となる点をk個配置し、各データ点をもっとも近い重心に割り当てていきます。
そして、それぞれのクラスタの重心を再計算し、また割り当て直す—この繰り返しで、グループが整っていくのです。

使い方はとても簡単で、しかもスピードも速い。
大規模なデータセットにも向いていますし、Python などのライブラリを使えば、実装もあっという間。
ただし、このアルゴリズムにはひとつの大きな前提が必要です。
それは「あらかじめ”k”を決めなければならない」という点。

この「k」の選び方こそが、多くの分析者を惑わせる、最初にして最大の関門なのです。

エルボー法の魅力と、その危うさ

ここで登場するのが「エルボー法」です。
SSE(クラスタ内誤差の合計)をkの値に応じてグラフにすると、通常その値はどんどん小さくなっていきます。
そして、ある地点で急激な減少から緩やかな減少に転じる、その折れ曲がり—まるで肘(elbow)のような形。
そこが「最適なクラスタ数」だとされてきました。

しかし、ここに重大な問題があります。
この方法、実は見た目に大きく依存しているのです。
グラフのスケールや範囲を少し変えるだけで”ひじ”の場所も動いてしまいますし、見る人によって解釈も変わります。
そしてなにより恐ろしいのは、まったくランダムなデータでも”ひじっぽく”見えることがあるという事実です。
つまり、信じていたものが「それっぽく見えた幻想」に過ぎなかった、というケースがとても多いのです。

では、本当に頼れる「kの選び方」はあるのか?

安心してください。
エルボー法よりも、はるかに信頼できる代替手法は確かに存在します。
それは、より数学的な根拠に基づいたアプローチであり、単なる”見た目”ではなく「データの内側」をきちんと評価する方法です。

たとえば「分散比基準(VRC)」という手法では、クラスタ分けによってどれだけ”データのばらつき”が説明できるかを数値で評価します。
これは、1974年に Calinski and Harabasz によって提案された非常に優れた指標で、明確な数式に裏打ちされた信頼性があります。

また「BIC(ベイズ情報量規準)」は、データをどれだけ効率よく”圧縮”して表現できるかという視点から、クラスタ数を評価します。
クラスタが多すぎればモデルは複雑になりますが、少なすぎるとデータをうまく説明できない。
そのバランスを自動的に取ってくれるのがこの方法の強みです。

さらに「Gap 統計量」という手法では、ランダムに生成したデータと比較することで「本当にクラスタ構造があるのか?」を見極めます。
この方法は 2001年に Tibshirani らによって提案されたもので、本物の構造か、それともただのノイズかを識別できるのです。

クラスタ数に”正解”はない。それは問いかけなのだ。

ここで大切なことをお伝えしておきます。

実は「最適なk」というものは、必ずしもひとつに決まるものではありません
たとえば、あるデータセットでは、k = 8 のときに構造的な改善が大きく見られた一方、k = 25 にしたときには最も細かくクラスタ分けができたという事例があります。
つまり「どのクラスタ数が最も”正しい”か」は、あなたが何を知りたいか、何を表現したいかによって変わるのです。

クラスタリングとは、ただ正解を探す作業ではありません。
むしろ「このデータはどう語りかけているのだろう?」と耳を澄ますような作業です。
クラスタ数を決めることは、答えを出す行為というより”問いを立てる”行為なのです。

最後に:見た目の”ひじ”ではなく、データの声を聴いて

データの分析は、つい「それっぽく見えるもの」に飛びつきたくなるものです。
けれど、見た目に頼るのではなく、きちんとデータの中にある”根拠”に耳を傾けてこそ、本当に価値のあるクラスタリングができるのではないでしょうか。

「このグラフのここが曲がってるから、きっとここが最適だ」
そう思ったとき、どうか一歩引いて、もう一度問い直してみてください。
その”ひじ”は本当に曲がるべき場所だったのか?

クラスタ数は、魔法のように与えられる”答え”ではありません。
それはあなたとデータがともに探す”対話のプロセス”なのです。

参考:Stop using the elbow criterion for k-means and how to choose the number of clusters instead

コメント

タイトルとURLをコピーしました