前回はこちら。
今回は不偏推定量について詳しく見ていきました。いつも以上に盛り上がった!
平均二乗誤差とそのバイアス・バリアンス分解
PRMLなど機械学習の観点でも頻出の話題。
推定量のよさの指標には色々あるが、真のパラメータと推定量の二乗の期待値である平均二乗誤差が小さければ小さいほどよいと定義する。すると、平均二乗誤差はバイアス(の二乗)とバリアンスに分解できる。平均二乗誤差が一定だとすると、バイアスorバリアンスのどちらかをよくしようとすると、どっちかが悪くなってしまうトレードオフの関係にあることは、推定量のよさを考える上では頭に入れておかないといけない。
そして、練習問題も面白かった。
- 独立同一な正規分布からの標本がn個あるとき、分散の推定量を考えたい
- と書けるような推定量のうち、平均二乗誤差を最小にするcを求めよ
という問題。「n-1で割る不偏分散はバイアスの項がゼロだし、c = n - 1
かな〜」と思いながら解いてみると、そんなことはなかった。標本分散でもなく、なんとc = n + 1
が平均二乗誤差を最小にするものだった(ここで驚きの声が上がる!!)。
推定量の「よさ」について
今日の講義の一番の盛り上りポイント。ワクワクしかなくて、いいですね。
「との平均二乗誤差を最小にするのがn+1で割ったものなら、なぜ世の中では不偏推定量(や標本分散)のほうが広く使われているのですか?」と質問してみた。これは
- 何をよいと思うかは状況によって異なる
- 特定の状況を仮定できない一般の状況において、不偏推定量はある程度安心して使える推定量だから
- バイアスは常に0
- バリアンスは下限の存在や小さいバリアンスを求める方法が知られているから
というのが回答だったかなと自分は解釈した。
分散パラメータに対するいくつかの推定量と、そのバイアス・バリアンスをまとめると以下のようになる。
推定量 | 式 | バイアス | バリアンス |
---|---|---|---|
不偏分散 | 0 | ||
標本分散 | |||
平均二乗誤差を最小にする推定量 |
下に行くほど、バイアスが(絶対値で考えて)大きくなり、バリアンスは小さくなる。
真のパラメータについて何も分からない場合
ざっくりした話でいうと、不偏推定量はある種の安心感がある。安心感をもう少しちゃんと書くと、こういうこと。
- 真のパラメータは神のみぞ知る値であって、不偏推定量でない推定量はバイアスの大きさをコントロールできないし、どこまでも大きくなり得る
- 不偏推定量の場合、推定量自身の分散はあるがバイアスは0だから、平均二乗誤差が大きくなりすぎないようにある程度自分でコントロールできる
- コントロールという表現は正しくないかもしれないが、例えばクラメルラオの下限を使って、不偏推定量の中で一番バリアンスが小さい推定量を探すこともできる(場合がある)
このように不偏推定量は「神のみぞ知る」といった自分たちではコントロールできない部分は不偏性によって回避し、バリアンスのようなコントロールできる部分は様々なテクニックを使って小さいものを探す手段がある。真のパラメータについて何も知識がない状況において、初手で使っていいような安心感がある推定量と捉えられる。特定の状況が仮定しにくい統計学の教科書において、不偏推定量が推される理由はこういったところにあるのかなと私は感じた。いいディフォルト値、みたいな感じ。
こういった背景もあり不偏分散に代表される不偏推定量はよく研究されているし、統計検定講座でも不偏推定量の中でもさらに性質のよいUMVUEを導出するための具体的な方法として、クラメルラオの下限を使った方法やLehmann-Scheffeの定理を使った構成方法などで深掘りしていく、というわけだ。
パラメータについて多少知識がある場合
神ではないものの、「パラメータは大体この辺に落ち着くであろう」と知識を持っている場合ももちろん存在する。
- Webの広告クリックでCTRが90%などめっちゃ高い値になることはあまりない
- こういう値が出たら、計測ロジックのほうをまず疑う、みたいな値
- (言語モデルなどのコンテキストで)めっちゃ珍しい単語ではあるが、その単語の生起確率は0ではない
- Webをクロールしまくってくれば、一単語くらいあるであろう
どの推定量を採用するか決める人がこういったドメイン知識を保持している場合、その知識を推定量に取り込むことができる。取り込む方法としては、推定量にあえてバイアスを取り込む、という形。ベイズの事前分布やそれを使ったMAP推定などはまさにそういったもの。自然言語処理の文脈でベイズというと、ゼロ頻度問題への対応など工学的な理由で使う場面も多かったが、統計学のコンテキストでこういった形で紹介されると納得感が深まりますね。
所感
- 不偏推定量は「不偏」という「よい」性質はあるものが、自分がデータ分析したい状況において求めたい「よさ」は何なのかを考えてそれに適した推定量を使う必要がある
- 自分が真のパラメータについて、どれくらい知識を持っているのかによって使える情報や手段は当然違う
機械学習の評価指標でもprecision / recall / それらのトレードオフを考慮したF値が存在するが、一概にF値の高いモデルを現場で採用するかというとそんなことは全くなく、precisionがX以上でrecall最大になるモデルを採用などは普通にやっている。統計学の推定量についてもそういったバランスを考える必要があるんだなと再認した。
この辺に興味がある人は現代数理統計学の基礎の第13章やスタインのパラドックスについて調べてみるとよい、とのこと。
クラメルラオの下限
ここからしばらくは不偏推定量を前提とした話。
あるパラメータについて不偏推定量を考える場合、平均二乗誤差の観点ではバイアスは0になるので、バリアンスが最小になる推定値を考えたい。どうせならバリアンスも0になってくれれば最高なのだが「そういったことはなく、到達できる下限があるよ」と示したのがクラメルラオの下限。不偏推定量のバリアンス(分散)は1 / フィッシャー情報量以下にはできない()、というのが主張。また、この下限に到達した推定量のことを有効推定量と呼ぶ。有効推定量は必ずしも存在するとは限らないことに注意。
練習問題として、指数分布のパラメータの逆数()の推定値として標本平均を考える場合、標本平均がの有効推定量になっていることを示した。具体的には以下をやった。
- 同一の指数分布から独立に生成される場合の標本平均の分散を計算
- フィッシャー情報量を計算
- これらが一致することを示す
フィッシャー情報量
クラメルラオの下限の式の中でフィッシャー情報量が登場するので、意味合いを書いておく。フィッシャー情報量は「同時分布の対数を取った関数をパラメータについて微分したものを二乗した平均」として定義される。
これ、直感的にすごく意味が分かりにくい...。
フィッシャー情報量が元々はかりたかったものとしては「真のパラメータが少し動いたとき、推定量の同時分布はどれくらい動くだろうか。が多少動いたくらいで、推定量の同時分布がガンガン変わってしまうと困るな」というもの。この気持ち + 多少計算の都合を考えると以下のようになる。
- 真のパラメータが少し動いたとき、推定量の同時分布はどれくらい変化するか
- パラメータについて微分する
- 計算しやすいように対数(単調変換)を付けて微分する
- 一点ではなく全域での変化の仕方を知りたいが、微分なのでプラス方向もあればマイナス方向もある
- 単純に積分してしまうと、打ち消しあって変化の総量が分からなくなってしまう
- あとから分かるが、これを実際に積分すると0になってしまう
- 変化の総量を知りたいので、二乗してから積分しよう
元の分布とパラメータを少し動かした分布のKLダイバージェンスの近似式としてフィッシャー情報量を捉えることもできるそうだ。
最良線形不偏推定量
都合のいい推定量があって、たまたまクラメルラオの下限を達成することが証明できればUMVUEを見つけられたことになる。しかし、なかなかそう都合のいい推定量は落ちていない...。そこで、推定量のクラスをある種制限(性質のよいもの)してあげて、その中で分散が最小になるものを探してやろうというアプローチも考えることができる。
性質のよいものとして例えば、推定量を標本の重み付き和(標本の線形和)で書けるものに限定してみる。この推定量のことを線形推定量と呼び、線形推定量かつ不偏推定量になっているものの中で一様に分散が最小のものを考える。もしこういうものが存在すれば、それのことを最良線形不偏推定量と呼ぶ。
最良線形不偏推定量は以下のような制約付き最適化問題に落ちるので、ラグランジュの未乗数法から重みを計算することができる。
- 目的関数: 推定量の分散
- 制約: 推定量が不偏推定量である
練習問題ではこれを示した。
次回
- 最尤推定量の定義および求め方
- 一致性の定義と推定量が一致性を持つことを具体例でいくつか見る
- チェビシェフの不等式を使ったやり方
- 最尤推定量の不変性
- 十分統計量を用いたUMVUEの構成方法
十分統計量についてがっつりやる予定だそうです。