データ分析とインテリジェンス

分析手法の疑問点・・・クラスター分析について

■データを用意してツールにかければ答えはでるけれど

データ分析を行う際、データを用意してツールにかければ答えはでるけれども、その手法の背景を理解していなければその結果が正しいのかがわからない。報告を受ける側としても手法の理解があるに越したことはない。報告書を読んだ際に鵜呑みにするのではなく、正しい分析を行っているかについて検証できる能力があれば、でたらめな結論に惑わされることもなくなる。

そこで、その手法を使うに当たって気になることや、レポートを受け取った際に質問したい点について手法別にまとめてみることにした。手法の説明は書籍やサイトがたくさんあるので、そこにあまり書かれていないけれども気になることが中心となる。疑問が解決したら都度追記する。

第1回はクラスター分析である。

■なぜその距離関数を使うのか

クラスター分析を行うためには、まずはデータ間の類似度、つまり距離を決める必要がある。その距離はユークリッド距離でなければならないというわけではあるまい。確かにユークリッド距離の方が解りやすいのだが、もしかしたら他の距離関数を使った方がより良い分類ができたかもしれない。最適な距離関数の決め方はあるのだろうか。

■距離の測り方

階層クラスター分析でクラスター間の距離を決める方法として、次の5つが挙げられることが多い。

  • ・最短距離法
  • ・最長距離法
  • ・群平均法
  • ・重心法
  • ・ウォード法

しかし、分類の方法は紹介されるのだが、「どの方法が一番良いのか」を説明しているレポートはもちろん書籍やサイトにも出会ったことがない。あっても「○○という特徴がある」とか「○○がよく使われている」といった経験則ぐらいで、証明されているわけではない。方法が違えば結果が変わるのであるから、この点に触れられていないのは謎である。もしどれを使っても対して変わらないというのであれば、それはそれできちんと知っておきたいところだ。

■k-meansでのクラスター数はどうやって決めるのか

非階層クラスター分析と言えばk-meansが有名だが、最初にクラスター数を決めなければ実行できない。ではそのクラスター数はどうやって決めたのか。大体とか感ではなく、きちんとした根拠を持っている数値かどうか。自動的に最適なクラスター数を決定するX-meansを使っていたとしても、何を持って最適としているかを説明できなければ結局のところは同じである。

■k-meansでの初期値の違いの影響はどうするのか

同じくk-meansの場合、初期値をランダムに決めるが、この初期値の違いがもたらす結果への影響をどうしているのか。1回実行したその結果だけだとしたら、実は初期値の影響で大きく偏っており、実態と違う結果であったりする可能性をどうするのか。

クラスター分析における初期値の違いによる影響を解決する方法を考える

■あいまいにしても実務には影響ないけれども

以前から気になっているが未解決の項目をまとめたが、実務上は知らなくてもまず影響はでないだろう。そもそもクラスター分析が何をしているのか知らない人がほとんどなので、距離の決め方は問題にならないし、クラスター数も「多すぎず少なすぎずでこれぐらいにした」で特に困ることはあるまい。

とはいえ使う側としてはできる限り理解をしておきたいので、ブログにまとめておくことにする。

このエントリーをはてなブックマークに追加

タグ:分析 クラスター分析


最新のブログ記事5件

定期レポートを効率化する
最悪のデータ分析組織とは
「何を知りたいのか」がわからなければデータ分析は始まらない
データ分析で業務委託を使う・外注する方法
データ分析について考えたことのまとめ

ブログトップ > 分析手法の疑問点・・・クラスター分析について