LoginSignup
hanamino
@hanamino

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

メトロポリス法で現位置と候補位置が一致する場合の扱いについて

解決したいこと

今日初めてMCMC法のメトロポリス法について学んだ者です。
見当違いの質問をしていたら申し訳ありません。

MCMC法のメトロポリス法において,
①f(θ(x))<f(θ(x'))の際は候補位置を無条件で受理
②f(θ(x))>f(θ(x'))の際は確率r=f(θ(x'))/f(θ(x))で候補位置を受理
すると思うのですが,x=x'のときはどうすればいいですか?

いくつかの文献では上記①か②のいずれかに等号を含めているようです。(いずれに含めたとしても結果を見ると移動しないことになるので,この二つのどちらにすべきかという疑問はありません。)
しかし,x=x'という設定をそもそも許すか許さないかで出力結果が変わってくるように思います。x=x'があり得る場合,x'は一様にランダムに決まるので,想定するモデル(分布)を底上げするような形になってしまうのではないでしょうか。つまり,分布がより平均化されるというか,分布の両端にある度数が少ない辺りへのプロットが相対的に多くなってしまうのではないでしょうか。

どなたかご教授いただけますと幸いです。

0

2Answer

統計的機械学習を研究で用いている者です。(MCMCはメインではありませんが…)

まず、x=x′となる確率は理想的には0です。
なのでそのケースは、特段気にしていないものと考えています。

マルコフ遷移をどのような設定で考えるかにもよりますが、最も基本的なランダムウォークを例にします。
平均0, 分散1のガウシアンで遷移させます。
つまり候補x′は
x′ = x +ε, ε ~ N(0, 1)
で生成されるとします。
この時、ε = 0ならx=x′となりますが、数学的にはε = 0となる確率は0です。(特定の一点を取る確率は0)

しかしながら、コンピュータでは数字の精度に限界があり、偶然の偶然にx=x′が起き得ます。
先の解答者は恐らくそれを指摘しています。

0Like

Comments

  1. @hanamino

    Questioner

    ご返信が遅れました。
    わかりやすいご説明をありがとうございます。
    数学的にはx=x'となりうる確率は0なのですね。
    また,コンピュータ上では確率は0ではないにしろ,限りなく低いという理解をしました。

現位置と候補位置が一致する場合

64bit PCでは受理でしょうか?
数学者にはその境界に入ることはないのでは?(実数の定義)

正しくは、偶然、選出された(有効桁数の多い)実数なので近似値候補であるが一致しない。

 π に境界があるからアルキメデスは

π は 223/71 と 22/7 の間である

と言ったのでしょうか?

233/71 - 22/7 = 0.1388329...

アルキメデスさん、0.1388329...は緩いです 
しかし、日本では 22/7 はアニメのタイトルになっていますよ!

0Like

Comments

  1. @hanamino

    Questioner

    すみません,何の話ですか?

  2. モンテカルロ法にπ(無理数)の話があり蛇足ですみません。

    x=x'という設定をそもそも許すか許さないかで出力結果が変わってくる

    現位置が有理数の場合、x=x'という設定を許す

    現位置が無理数の場合、x=x'という設定を許さない(一致が無い)

  3. @hanamino

    Questioner

    現位置が無理数というのはプログラム上ありえるのですか。

  4. 64bit PCでは受理でしょうか?
    数学者にはその境界に入ることはない

    よって、便宜上、pcでは現位置は有理数(2^64の限界で)となる
    しかし、数学者は無理数を堅持する。

  5. @hanamino

    Questioner

    ごめんなさい,よく理解できませんでした…
    ありがとうございました

Your answer might help someone💌