あなたの相関係数、ホントに相関わかりますか

Lab研究員 濱田

相関係数とは

相関係数は、相関を数値化したものです。
相関とは大辞林曰く、

相関説明.PNG

相関が強い = 2つのデータがお互いに強く影響し合っている
相関が弱い = 2つのデータの関連が弱い
ということです。

どのデータ同士が影響しあっているのか、といった解析に相関係数を使うことがあります。
相関係数が1(-1)に近いほど相関は強く、0に近いほど相関は弱いとされます。

相関係数とデータの関係を、具体的に見てみましょう。
弊社の製品YDC SONAR®は散布図と相関係数を簡単に出力してくれます。

20190610_1.png

やはり相関係数が1(-1)に近いとデータ間の関係が強いと言えそうです。

相関係数の欠点

ほかのデータについても見てみましょう。

20190610_2.png

データはいかにも関係が強そうなのに、相関はないという結果になりました。
これが相関係数の欠点です。

※実は相関係数には多くの種類があります。よく使われる相関係数(ピアソンの積率相関係数)にこのような欠点があり、すべての相関係数がそうというわけではありません。
この記事の「相関係数」はすべて「ピアソンの積率相関係数」のことを指します。

実は相関係数は直線的な関係性しか捉えられません。
相関係数だけを考えると、このような曲線の関係性を見落としてしまうということです。

相関係数に代わるもの

曲線の関係もわかるような指標はないものか、

とお困りの方、あります。

それは相互情報量です。
定義式を見てみましょう。

MI定義.PNG

pはデータがある値をとる確率です。

なぜ確率か、「情報量が増える」=「値を特定できる確率が増える」という考え方に基づいているからです。
つまり、「相互情報量が大きい」=「一方の値からもう一方の値を特定しやすい」=「データ間の関係が強い」ということです。

相互情報量の単位は定義中の対数(log)の底によって変わります。底を2とするとbit単位になるのでよく使われています。
曲線の関係の相互情報量を算出してみましょう。今度はPythonで出力してみます。

20190610_3.PNG20190610_4.PNG

画像は実行結果だけです。

相互情報量が1.9bitとは、「一方の値が判明したときに、もう一方の値が特定できる確率が2^1.9≒3.7倍になる」ということになります。確率が3.7倍になるということは、4択問題がほぼ1択になるということです。

そう考えると相互情報量が大きい、ひいては相関が強いと言えそうです。
相互情報量を使うことで、データ間の関係が強そうだという視覚的印象に沿う結果が得られました。

相関係数はいらない?

全部相互情報量でいいのでは、となるかもしれませんが、それは誤りです。
重要なのは指標を得た後に何をするかということです。
たとえば、線形回帰による予測をしたい場合は直線的な相関以外は役に立ちません。
この場合、相互情報量を使うと、使えない相関まで出てきてしまいます。相関に限らず、その後のことを考えて適切な解析手法を選びましょう。

相関係数で解析がうまくいかない、
そんなときにはこの記事を思い出していただけると幸いです。

  • LINE
  • Mail