新しい相関係数の理論的性質
はじめに
あるデータの組み合わせが手元にあるとき、それらがどれほど依存関係にあるのか?というのはデータを触っていると自然に湧いてくる疑問だと思う。
データの依存関係を見る時、「相関係数」なるものを計算するのは大半の人が行うと思うが、この相関係数は「ピアソンの相関係数」を指すことがほとんどであろう。この相関係数は
と、ここまで書いてたのだが、つい先日 Qiita にこんな記事が投稿された。
まさにこういう話をしたかったので完全に先を越されてしまった。悔しい…
だがせっかくなので、実はこの相関係数は「バイアス」があると指摘した論文についてでも紹介しようかと思う。以下はarXivに投稿されたワーキングペーパーをベースにしたものである
注意:以下は夜中に勢いで書いたので、構成とか変わる可能性がある
Chatterjeeの相関係数
近年話題を集めている新しい相関係数は以下の論文が出発点である
- Chatterjee, S. (2021). A new coefficient of correlation. Journal of the American Statistical Association, 116(536), 2009-2022.
- Azadkia, M., & Chatterjee, S. (2021). A simple measure of conditional dependence. The Annals of Statistics, 49(6), 3070-3102.
モチベーションは非常にシンプルで
-
を満たして、-1\leq\xi\leq 1 -
だったらデータ同士に依存関係があり、\xi=\pm 1 -
だったら依存関係がなく、\xi=0 - しかも計算が容易である
をできる限り幅広いデータで満たすような相関係数を提案したいというもの
それに対して次のような指摘がされている
- 最近傍ベースの場合、バイアスが生じる(不偏性がない)
- 一般に
のように推定量の期待値が真値になることを不偏性があるという。これがないということは、推定量には何かしらのバイアスが載っていることになる\mathbb{E}[\hat{\theta}_{n}] = \theta
- 一般に
相関係数の定義
議論の土台として少し定義をしておく
- 観測されているデータは
の組み合わせで、(X,Y) ,X\in\mathbb{R}^{d} とする。つまり関心のある変数がY\in\mathbb{R} で、その他観測されている色んな変数をY でまとめているとイメージすればいいX - このとき母集団における指標 (Dette-Siburg-Stoimenov dependence measureという)は以下で定義される
- ここで、
は指示関数で、中身が真なら1, そうでなければ0を取る関数である1(\cdot)
- ここで、
- Chatterjeeが提案したのはこれをデータから実際に推定する方法で、データの中で一番近いもの同士(最近傍ベース)で計算する。
-
が観測されているとき、各(X_{1},Y_{1}),\cdots,(X_{n},Y_{n}) ごとに以下を計算する。解釈としてはY_{i} はR_{i} 番目のデータi がY_{i} の小さい方から並べて何番目にあるかを表し、Y はN_{i} に一番近い別のデータを選んでいるX_{i}
-
この定義の下でChatterjeeの最近傍ベースの相関係数は以下で定義される
データが手元にあるときに、順位を計算しつつ一番近いデータがどれかという対応さえ作ることができれば計算できてしまうので使い勝手が良いというメリットがあるのが売りポイントである
新しい相関係数の弱点
これに対して実はバイアスがあるというのが Lemma 3.1 で(先行研究の結果を引用する形で)示されている。ざっくり紹介すると次のようなバイアスを持つ
ちょっと複雑だが
-
はY_{N(1)} の最近傍に対応するX_{1} の値Y -
は\tilde{Y}_{1} が与えられたときの、X=X_{1} の条件付き分布から独立にサンプリングした値Y
である。これを読み解くとバイアスが起きる原因は
ただ、幸いなことにバイアスの構造が分かっているので、このバイアス項を引いたもので推定してあげれば不偏性を達成することができるのもこの結果が示唆するところである(いわゆるバイアス修正と呼ばれる操作)。
Bias Correction
細かい説明をすると大変なので、バイアス修正の方法はざっくり解説するに留める。興味がある人は上の元論文を読んでください。
- あるデータ
とその最近傍X_{i} でペアを作るN(i) - 別のデータ
を閾値Y_{j} とするt -
であるかどうかの予測確率をY_{i}\geq t とX_{i} それぞれ使って求めるX_{N(i)} - その積を計算して、
を使って予測した確率の2乗を引くX_{i} - これを全部のペアで計算して平均を取る。それがバイアス項
の推定量L である\hat{L}_{n}
何をしているかと言うと、「もしバイアスが生じるならそれは一番近いデータを探すことで自分自身と少しズレているところが原因で、それが積み重なるとバイアスが大きくなる。もし完全に近隣のデータが一致していれば4で計算したものがゼロになるはずだから、そうでない部分の大きさを計算して平均を取ればバイアスが推定できるはず」というもの
ちなみに予測確率の計算はノンパラメトリックにやるのでそこの部分で少し実装が複雑になってしまうのが弱点ではある。バイアスを認めてシンプルな計算にするか、多少複雑な実装をしてもいいからバイアスを除いたものを計算するかは状況次第であろう。重要なのは 新しい相関係数にはバイアスがあるよ を認識することだと思う。
以下はシミュレーション結果で、高次元 (
あと注目すべきはECP、すなわち被覆率と呼ばれるもので「生成したデータから算出した 95% 信頼区間が真の相関係数の値を含む確率」が95% に近いほど望ましいとされる評価指標なのだが、
この結果は、信頼区間が真の値を含む確率がほぼ理論通りであり、バイアス修正をしないと正確な統計的推論ができない可能性が高い ことも示唆しており、バイアス修正の重要性がわかる結果である。

Discussion