HELLO CYBERNETICS

深層学習、機械学習、強化学習、信号処理、制御工学、量子計算などをテーマに扱っていきます

【今更聞けない、いや今すぐ聞け】一致推定量と不偏推定量

 

 

follow us in feedly

はじめに:推定量とは

今回はいろいろな○○推定量について意味をまとめます。

統計学における推定量とは、現実に測定された標本データをもとに、確率分布の母数として推定した数量、もしくはそれをデータの関数として表す推定関数のことをいう。各母数に対していろいろな種類の推定量がある。これらはそれぞれ異なる基準に従って得られるものであり、必ずしもどれが特に優れているということはできない。(wikipedia)

とあるように、推定量にはいろいろな言葉と種類があります。上記の説明ではなかなか小難しいので、噛み砕いて説明をしましょう。

例えば、データ $X = \{x _ 1, \cdots, x _ N \}$ が手元にあるとしましょう。このデータは正規分布に従って発生していると信ずることにします。このとき、データを無限個手に入れさえすれば、正規分布の形をはっきりと捉えることが可能になり、平均 $\mu$ と標準偏差 $\sigma$ を明らかにできるはずです。ただし、実際には有限個のデータを使って、どんな正規分布に従っているのかを推定しなければなりません。

単純に考えると、平均 $\mu$ はデータ $X$ の標本平均

$$ \hat \mu =\frac{1}{N} \sum _ {n=1} ^ N x _ n $$

で計算し、標準偏差の方は

$$ \hat \sigma =\sqrt{ \frac{1}{N} \sum _ {n=1} ^ N (x _ n - \hat \mu) ^ 2} $$

と計算してみようと考えます。仮にデータ数が10個の場合と、10000個の場合で上記の計算を見てみます。真の平均と真の標準偏差はそれぞれ $mu = 2, \sigma = 1.5$ であるとします。

f:id:s0sem0y:20190620224116p:plain
データ数10個

このように得られたデータに関して標本平均と標本分散のルートで計算してみたところ$\hat \mu = 2.5959734865085338, \hat\sigma =1.1850598405826882$ と得られました。真の平均と標準偏差からは程遠い結果となっています。一方で10000個の場合は、

f:id:s0sem0y:20190620224311p:plain
データ数10000個

$\hat\mu=1.9965233845616848, \hat\sigma=1.5098723746425404$と得られました。こちらのほうが真の値には近いですね。それでもドンピシャというわけにはいかないようです。

このように有限個データでは基本的にピッタリと真の値を得ることはできません。標本平均や標本分散のルートとは、単に何らかの意図が含まれた人為的計算操作であって、今回の場合、正規分布の平均と標準偏差の推定量として使ってみたというだけに過ぎないのです。

このようなデータに基づいた何らかの計算処理のことを推定関数といい、その結果得られる値を推定量といいます。 より具体的にはデータが何らかの分布に従っていると信ずる時に、その分布を定めるパラメータ(正規分布の場合は平均と標準偏差)をデータに基づいて計算する処理のことを推定関数、そしてその推定関数で得られる値を推定量といいます

(※ここで注意すべきは、推定量にはいろいろ種類があるが、どのような推定量を選択し、それがどれだけまともに見えても、それは「データが何らかの分布に従っていると信じた」という仮定のもとでの話であって、その仮定そのものが正しいのかについては推定量は言及してくれません)。

一致推定量

実は先程の計算処理(標本平均と標本分散のルート)は正規分布のパラメータを推定する上で、一致推定量となっています。下記の図を見てください。横軸がデータ数です。データ数を増やして推定をしてみると、それぞれ真の値に収束していっている様子が(雰囲気的に)味わえます。

f:id:s0sem0y:20190620230006p:plain
データを増やした際の平均の推定量

f:id:s0sem0y:20190620230101p:plain
データを増やした際の標準偏差の推定量

一致推定量とは、データを無限に増やした先では真の値に収束するような推定量のことです。「何を馬鹿げた?当たり前のことだろう?」と思うかもしれません。しかし世の中には必ずしもこのような推定量だけとは限りません。他の推定量を使うという選択肢もありうるのです。

データを無限に増やしていれば真の値になっていることが一致推定量では保証されるものの、現実は有限個のデータを扱います。そして有限個の世界ではデータを多くすれば多くするほど、真の値に近づいていくとは言えないことに注意が必要です。というのも1000個から1001個に増やしたからと言って、では推定量として1001個の方が必ず真の値に近いと言えるかを考えてみましょう。(もしかしたら1001個のデータセットには運悪く変な値が紛れ込むことがありうる)。

不偏推定量

そこで不偏推定量というものを見ていきます。不偏推定量は有限個のデータの話が展開されます。 まず100個の観測値を集めたデータ $X ^ 1 = \{x ^1 _ 1, \cdots, x ^ 1 _ {100}\}$ を使って推定した推定量を $\hat \theta ^1$ としましょう。同様に100個の観測値を別に集めたデータ $X ^ 2 = \{x ^2 _ 1, \cdots, x ^2 _ {100}\}$ を使って推定した推定量を $\hat \theta ^2$ としましょう。さて、推定量はデータに依存しているのですから、 一般に

$$ \hat \theta ^ 1 \neq \hat \theta ^ 2 $$

となっているでしょう。

そして同じように100個の観測値を集めた場合に $X ^ k$ というデータに対して $\theta ^k$ という推定量が個々に得られていくことになります(無論これを一人でやる必要はない。同じことを解明したいと思っている研究者たちが、各国各地で、同じようなデータを集めて推定量を導いているようなことを思い浮かべれば良い)。

そうした場合には、$\theta_k$ という推定量自体がどれくらいバラついていそうか?ということを検討することができます(要するに同じ分布から従っているとされるものを、各国各地で独立に集めたデータを用いて推定量を導いた場合に、各国各地の研究者たちの結果がそれぞれ微妙に異なっていた。その異なり具合を評価したいということである。ちなみにこの異なり具合・ばらつきのことを標準誤差と呼ぶ)。

そこで

$$ \mathbb E[\hat \theta ^k] $$

という値を計算してみることにします。これが仮に、真のパラメータ $\theta$ に理論的に一致する

$$ \mathbb E[\hat \theta ^k] = \theta $$

という状況なのであれば、各国各地の研究者たちの結果 $\theta ^ k$ は期待値の意味で真のパラメータに一致する。ということです。そうすれば、個々の結果を持ち寄って期待値を見てみようだとか言うことも考えられ、それぞれの研究にも意味を見いだせるというわけです(いや、別にそうじゃなくても個々の研究に意味はあるけど…)。

このような性質を持つ推定量$\hat \theta$のことを不偏推定量といいます。

ちなみに正規分布の場合は、平均と標準偏差それぞれ

$$ \hat \mu =\frac{1}{N} \sum _ {n=1} ^ N x _ n $$

$$ \hat \sigma =\sqrt{ \frac{1}{N-1} \sum _ {n=1} ^ N (x _ n - \hat \mu) ^ 2} $$

と表されます。平均の方は標本平均を取るだけで一致推定量かつ不偏推定量になっているというスグレモノ(?)です。一方で標準偏差の方は割り算の部分が若干変わっています。すなわち「データ数を無限にすれば真の値に一致する」という性質と「有限個のデータでの得られた推定量持ち寄った場合の期待値が真の値に一致する」という性質が両立しないということになります。

ちなみにどっちがいい!とは、まあ言えません。

最後に

今回、データから確率分布を仮定してパラメータを推定する話をしましたが、

$$ y \sim \mathcal N (f(x, \theta _ \mu), g(x, \theta _ \sigma)) $$

みたいなパラメータがデータ点 $x$ に依存しつつ、出力 $y$ が決まるような回帰問題のケースなどを考えると縮小推定量だとか他の概念も出てきます(これは要するに $x$ が多次元で関係のない変数が紛れ込んだ時に、それに関わるパラメータがうまい具合に働いて、$y$ への影響を小さくしてくれるような推定の仕方であり、よくご存知の正則化とはこれに値する)。

あとはスタイン推定量というベイズモデリングとなんか関係があるらしいものも存在します(下記の書籍参照)。

ベイズモデリングの世界

ベイズモデリングの世界

いろいろ統計は勉強することがいっぱいですが、まず上記の2つ「一致推定量」と「不偏推定量」は是非抑えておいてください。