本記事では以下で「メトロポリスヘイスティング法」を「MH法」と表記します。
詳細釣り合い条件
マルコフ連鎖の記事で取り上げたのは遷移核が明らかな状態で定常分布を求める問題でした。
しかし、やりたいことは、事後分布が明らかな状態で、事後分布に従う乱数を手に入れることです。
事後分布が定常分布になるように、遷移核を設計する必要があります。
サンプリングしたい分布に対して、それを「定常分布」とするマルコフ連鎖を構成する方法を
マルコフ連鎖モンテカルロ法(以下、MCMC法)といいます。
マルコフ連鎖が定常分布に収束させるには、詳細釣り合い条件を満たせばよいです。
詳細釣り合い条件は、任意のに対して、
が成り立ちます。
のが遷移核(未知)で、が目標分布(既知)です。
詳細釣り合い条件は定常分布へ収束するための十分条件です。
定常分布へ収束するためには、をで微分してとおいたマスター方程式
を満たせばいいのですが、これを解くのは難しいようです。
なので、の中身が0になるようにします。これが詳細釣り合い条件です。
(詳細釣り合い条件の詳細については参考リンクをご覧ください。もしくは他の文献をご覧ください。)
詳細釣り合い条件のイメージを下図に示します。
MH法説明のための準備
サンプリングする分布を目標分布といい、とします。
遷移核をいきなり見つけるのは、難しいので、
の代わりに適当な遷移核を提案分布として利用します。
ただし、提案分布は乱数発生が容易なものである必要があります。
ところで、提案分布を適当に決めるため、詳細釣り合い条件が成立しません。
の等式が成り立つようにで補正します。
でとしました。
はより、です。
よって、は、とを遷移核として採用すれば、詳細釣り合い条件を満たす遷移が実現できることを示しています。
MH法ではを確率とみなして、確率的補正を行うことにより、が成り立つようにします。
MH法アルゴリズム
1: 提案分布を利用し、乱数を発生させる。
2: 以下の命題を判定します。
・が真
の不等号条件より、の状態と判定されます。
この場合、提案分布はなのですから、式左辺の係数を使って確率的補正を行う必要があります。
を計算し、
確率でを受容し、とします。
確率でを破棄し、とします。
・が偽
の不等号条件より、の状態と判定されます。
この場合、提案分布はなのですから、式右辺の係数を使って確率的補正を行う必要があります。
確率でを受容し、とします。
事実上補正しません。
3: として、1へ戻ります。
MH法を噛み砕いて説明
私の自身の言葉で噛み砕いてMH法を説明してみたいと思います。(MH法を理解している方は読み飛ばしてください。)
※説明のためにを流れと呼ぶことにします。
から乱数を発生させます。
を提案分布から提案された遷移先の候補と考えます。
以下のようにして採用するか決めます。
・の場合
↓
からへの流れが詳細釣り合い条件より強い。
↓
提案分布が詳細釣り合い条件を満たしていれば、に遷移していなかった可能性がある。
↓
確率的に補正し、採用するか決める。
・の場合
↓
からへの流れが詳細釣り合い条件より弱い。
↓
提案分布が詳細釣り合い条件を満たしていないにもかかわらず、候補である。
↓
提案分布を満たしていれば、確実に遷移している。
↓
無条件に採用する。
MH法のの計算について
目標分布が事後分布であることを考えて、を式変形していきます。
より、事後分布のカーネル(分布を決定づけている因数)のみが現れるので、
正規化定数は計算不要であることが分かります。
偉人の名言
考えることは、才能のない人間の最大の武器である
野村克也
参考リンク
動画
この動画は記事作成前に作成したものなので、本記事とは内容が異なる可能性があります。