MyEnigma

とある自律移動システムエンジニアのブログです。#Robotics #Programing #C++ #Python #MATLAB #Vim #Mathematics #Book #Movie #Traveling #Mac #iPhone

カイの二乗検定とは?

目次

はじめに

カイの二乗検定は、ロボティクスの分野でも

外れ値検出などによく使用されるのですが、

myenigma.hatenablog.com

冒頭の本を読んでいた時に、

カイの二乗検定の話が結構わかりやすく書いていたので、

それを踏まえて、カイの二乗検定とp値に関してはまとめてみようと思います。

 

カイの二乗検定とは

カイの二乗検定は、

ある観測値が母集団の分布にどれだけ適合しているかを判定する手法です。

また、下記のツイートにある通り、ホテリングのT2法とも呼ばれます。

 

これを利用することにより、

ある観測値と、これまで推定してきた確率分布を利用することにより、

前述のような、観測値の外れ値検知ができます。

一方、この考え方を別の面から利用することにより、

いわゆるA/Bテストという比較テストができます。

 

例えば、

ある方法をためした時の売上と、

試さなかった時の売上を比較したい時に、

このカイの二乗検定を利用することにより、

売上の変化量が、

元の分布における誤差といえるのか?

それともある方法による効果が出ているのか?

を検定することができます。

カイの二乗値の計算

あるデータにおいて、カイの二乗値は下記の式で計算できます。

xは各データ、E(x)はデータの平均値(期待値)です。

ここで、分散(標本分散)V(x)が、データ数nによって

下記の式で計算できることから、

先ほどの式を変形した式

でカイの二乗値を表すこともあります。

カイの二乗検定の方法とp値

先ほどの式で計算されたカイの二乗値は、

データxの誤差が正規分布に従うとすると、

そのデータと事前に計算された正規分布の情報から計算された

マハラノビス距離の二乗の値は、

カイの二乗分布という分布に従います。

(というより、カイの二乗分布に従うので、先ほどの値をカイの二乗値と呼ぶのでしょう)

 

このカイの二乗分布は下記のwikipediaの記事にある通り、

データxの次元(自由度)によって形が変わります。

カイ二乗分布 - Wikipedia

 

実際にカイの二乗検定を実施する時には、

下記のツイートのように、scipyのscipy.stats.chi2.isf関数を使うか、

docs.scipy.org

下記のようなカイの二乗分布の表を使って、

検定用のマハラノビス距離の二乗値の閾値パラメータを決定します。

付表:カイ2乗分布表  chi-square distribution  — 中川雅央(滋賀大学)

   

必要なパラメータは、自由度と、

有意確率と呼ばれるパラメータです。

自由度は、元のデータxの次元のことです。

一次元のデータの場合は1ですし、

ロボットの位置情報の外れ値除去などで使用される場合は、

x-yの二次元であることが多いため、

この自由度は2になります。

 

続いて、有意確率と呼ばれれるパラメータは

このデータが偶然発生する確率のことで、

別名、p値と呼びます。

 

一般的なカイの二乗検定ではp値=5%という値を

使用することが多いようですが

上記の式で計算されたカイの二乗値χ2が、

先ほどの表から選んだカイの二乗分布のp値=5%の値以上の場合、

(例 自由度が1の場合、カイの二乗分布値の閾値は3.84146)

その値が偶然発生する確率は5%以下ということになり、

偶然ではない(データの外れ値、または、何かの効果があった)

と判断することができます。

 

つまり、

実データから計算されたマハラノビス距離の二乗値と

カイの二乗分布表から決めた閾値を利用することにより、

データの有意性(偶然ではない)を判定することができるのが、

カイの二乗検定です。

参考資料

カイ二乗検定 - 大人になってからの再学習

MyEnigma Supporters

もしこの記事が参考になり、

ブログをサポートしたいと思われた方は、

こちらからよろしくお願いします。

myenigma.hatenablog.com