メトロポリス法とメトロポリス・ヘイスティング法

MCMCについて勉強したのでメモ。

MCMCでは、特定の確率分布に従ったサンプリングを行うためのアルゴリズム。 サンプリングに当たっては、現在の状態をベースに(焼きなまし的に)状態遷移させていく。 状態遷移の確率分布は、所定の条件を満たしたものならなんでも良いが、 現在の状態(値)を期待値としたガウス分布や、一様分布などで良い。

MCMCの手法の一つ、メトロポリス・ヘイスティング法の遷移確率は以下となる。

 T = \cfrac{\exp(-S(x')) p(x'|x)}{\exp(-S(x)) p(x|x') } = \exp(S(x')-S(x)) \cfrac{p(x'|x)}{p(x|x')}

ちなみに、メトロポリス・ヘイスティング法(含む)では、状態遷移が満たすべき前提として以下がある。

特に非周期性というと難しくなるのだが、1ステップで自身に遷移できることが必要充分条件だと思う。

 p(x|x) > 0

これに加えて、メトロポリス法では任意のxとx'において、 xからx'への遷移確率 p(x|x')と x'からxへの遷移確率p(x'|x)が以下の通り一致することを前提とする。

 p(x|x') = p(x'|x)

すると、メトロポリス・ヘイスティング法で示した遷移確率は以下のように通分して簡単にできる。

 T = \cfrac{\exp(-S(x')) p(x'|x)}{\exp(-S(x)) p(x|x') } = \cfrac{\exp(-S(x'))}{\exp(-S(x))}=\exp(S(x')-S(x))

歴史的には、メトロポリス法が1953年に発表されていて、1970年に一般化されたメトロポリス・ヘイスティング法が発表されたらしい。