ベイズ関連メモ

とある論文を読んでいる最中にとったメモを備忘録として残しておこう。

  • conjugate prior(共役事前): 事後分布p(\theta\mid x)と事前分布p(\theta)が同じ族の関数形となるとき、事前分布p(\theta)は尤度関数p(x\mid\theta)に対して共役であるという。
  • 尤度関数p(x\mid \theta)は対象となるモデルから構築できることが多い。その尤度関数を有するモデルに対して事前分布や事後分布等を導出したいとする。このとき共役な事前分布と事後分布を選ぶことが可能(であるかどうかは別途検討する必要がある)だとすると、尤度関数の形によっては、その後の計算がとても楽になることがある。例えば共役事前分布p(\theta)を導入すると、p(x)を計算するのにp(x)=\int p(x\mid \theta)p(\theta)d\thetaのようにしてパラメタ\theta積分消去できて嬉しいことがある、など。
  • 仮に尤度確率モデルがベルヌイ分布だったとする。このとき共役事前分布、事後分布はベータ分布となる。その他よくある組み合わせは尤度、事前、事後がすべて正規分布、尤度がポアソンで事前と事後がポアソン、尤度が多項で事前と事後がディリクレ(自然言語とかでよく使われるモデル)など。逆にこれらの知られたパターンに当てはまらないとあまりありがたみがない?
  • 上記の積分消去の例の場合\thetaは消えるが、その共役事前分布が持つパラメタ(=ハイパーパラメタ)を決定しなければならない。←これは観測データを元に決める方法があるらしいのだが、まだよくわかっていないところ。例えば共役事前分布がベータ分布 B(\alpha,\beta)であるときに観測データからハイパーパラメタ\alpha, \betaを求めるにはどうすればよいか?
    • とある論文の例では観測値(=バイナリ値をとりうる変数)の平均値m(つまりこの例では経験頻度)を使って、\alpha = cm, \beta = c(1-m) とすれば良いとある。例えばc=2とするらしい。このときベータ分布の平均値は\frac{\alpha}{\alpha+\beta}=mなので、たしかに平均値は一致しているのだけど、パラメタcとこの形がどこから来たのかがよくわからず。平均だけ合わせておいて、その後の文脈に応じてコントロールパラメタのように使えるようにしているということだろうか。しかしc=1でないのはなぜだろう。(どなたかご存知の方こっそりコメント欄にて教えてください)
  • conjugate prior の使い方に関する疑問:結局事前分布をあるハイパーパラメタを持つ分布でモデル化できるという仮定が正しくないとうまくいかないのでは?事前分布に対するモデルが妥当であることを示すにはどうすればいいのか。