概念整理:ベイズ信頼区間とベイズ予測区間

Stanで統計モデリングをするにあたり、「信頼区間と予測区間を用語として意識して使い分けよう」と思ったので、下記書籍p14の辺りを復習。

例えば、lambda = 3のポアソン分布に従う乱数を50個抽出すると、ヒストグラムは下図のごとくになります。

f:id:sakatoken:20190227133751p:plain
R言語でのpoisson分布からの乱数

これに対してパラメータの最尤推定をすると、lambda は3前後となる道理です。
一方、ベイズ推定の枠組みではlambdaの値は事後分布  p(\lambda|{\bf Data}) に従うと考えます。

ここで想定されるlambda(より一般にはパラメータ)について、各自がお好きなパーセンタイル点において(MCMCサンプルを)区切ったものを、ベイズ信頼区間といいます。

続いて、ベイズ予測区間について。
ベイズ予測区間とは、「パラメータの確率的な生成を加味した上で、目的変数yの予測の幅」を意味します。
最尤推定では「唯一のパラメータに基づき、yの予測の幅が決まる」と考えたところを、「パラメータが生成され、それに基づきyの予測の幅が決まる」のように考えるわけです。

先ほどのポアソン分布の例で言うと、yは次の確率分布に従うということです。
 poisson(y|\lambda) * p(\lambda|{\bf Data})

では、上記の確率分布を計算するにはどうすればよいのでしょうか?
ポアソン分布例では以下のいずれかの方策を取ります。

  • lambdaについて周辺化志向で考える。MCMCではサンプリング結果を「すべてのlambdaが得られた」と考え、そのlambdaによる確率分布の和を考える。
  • 実際に事後分布  p(\lambda|{\bf Data}) にしたがって lambdaを生成して、ランダムなyの生成を繰り返す。(「lambdaを生成して」の部分にはMCMCサンプルからのランダムサンプリングを利用する)

とにかく「パラメータは分布する」をキーワードとしたデータ生成でもって確率分布を考えるわけですね。
大変すっきりしました。