特定のパラメーターについて推論するためにMCMCサンプルを取得する場合、対象とする必要のある有効なサンプルの最小数の良いガイドは何ですか?
また、モデルが多少複雑になると、このアドバイスは変わりますか?
特定のパラメーターについて推論するためにMCMCサンプルを取得する場合、対象とする必要のある有効なサンプルの最小数の良いガイドは何ですか?
また、モデルが多少複雑になると、このアドバイスは変わりますか?
回答:
あなたが尋ねている質問は、「収束診断」とは異なります。すべての収束診断を実行し(お気に入りを選択)、後からサンプリングを開始する準備ができたとしましょう。
有効なサンプルサイズ(ESS)に関して2つのオプションがあり、単変量ESSまたは多変量ESSを選択できます。単変量ESSは、各パラメーターの有効なサンプルサイズを個別に提供し、控えめな方法で、最小の推定値を選択します。このメソッドは、コンポーネント間のすべての相互相関を無視します。これはおそらくほとんどの人がしばらく使用しているものです
最近、ESSの多変量定義が導入されました。多変量ESSは、推定する数量の有効なサンプルサイズに対して1つの数値を返します。そして、プロセス内のすべての相互相関を考慮に入れてそうします。個人的には、多変量ESSがはるかに好きです。事後分布の平均のベクトルに興味があるとします。mESSは次のように定義されます 。mESS = n (| Λ | ここに
サンプルの共分散行列を使用してを推定し、バッチ平均共分散行列を使用してΣを推定することにより、mESSを推定できます。これは、Rパッケージmcmcseの関数にコーディングされています。multiESS
この最近の論文は、必要な有効なサンプルの数の理論的に有効な下限を提供します。シミュレーションの前に、決定する必要があります
これらの3つの数量で、必要な有効なサンプルの数がわかります。紙はストップシミュレーションに初めて尋ねる
ここで、はガンマ関数です。この下限は、Rパッケージmcmcseを使用して計算できます。minESS
したがって、事後のパラメータがであり、推定値の95 %の信頼度が必要であり、モンテカルロ誤差が事後の誤差の5%(ϵ = .05)であるとします。
> minESS(p = 20, alpha = .05, eps = .05)
[1] 8716
これは、あらゆる問題に当てはまります(規則性の条件下)。この方法が問題から問題に適応する方法は、ゆっくりと混合するマルコフ連鎖は、mESSが小さくなるため、その下限に到達するのに時間がかかることです。したがってmultiESS
、マルコフ連鎖がその限界に達したかどうかを使用して、数回チェックできます。そうでない場合は、さらにサンプルを取得します。
multiESS
がMATLABなどの他の言語用にコーディングされているかどうか知っていますか?(または再実装するのは難しいでしょうか?)