🎓 レベル:発展 | 重要度:A(MCMC の土台) 📎 前提:定常分布と収束
要点(BLUF)
- 詳細釣り合い:。状態 の確率流と の確率流が各ペアで釣り合う、という強い条件です。
- 詳細釣り合いを満たせば は自動的に定常分布になります(逆は成り立たない=可逆は十分条件)。このとき連鎖は可逆(時間反転に対して同じ法則)。
- MCMC(メトロポリス法)は、狙った分布 に対して詳細釣り合いを成り立たせる遷移を設計することで、 からのサンプリングを実現します。
概念
定常分布と収束の は「全体としての出入りの釣り合い(大域釣り合い)」でした。詳細釣り合いはもっと強く、「どの2状態のペアでも、行き来の確率流が個別に等しい(局所釣り合い)」を要求します。これは平衡熱力学の可逆性に対応し、満たされれば定常性が自動で従うので、定常分布を「設計」する強力な道具になります。
数式による定式化
分布 と遷移行列 が詳細釣り合いを満たすとは
このとき について和をとると
すなわち 。詳細釣り合い 定常、が示せました。詳細釣り合いを満たす連鎖を可逆と呼びます。定常状態で時間を反転しても遷移法則が同じ、つまり と が同分布だからです。
メトロポリス法:目標分布 に対し、提案 を採択確率
で受理すると、実効遷移 が について詳細釣り合いを満たします。
直観
要するに「各2地点間で人の流れが完全に均衡している」状態です。大域釣り合い(定常)は「各都市の人口が変わらない」だけですが、詳細釣り合いは「都市Aから都市Bへ行く人数と、BからAへ来る人数が一対一で等しい」。後者なら前者は当然成立します。MCMC は採択確率という「料金所」を設けて、この一対一の均衡を人工的に作り出します。
具体例
出生死亡型の可逆連鎖(隣接状態としか行き来しない)で、詳細釣り合いが厳密に成り立つことを確認します。
import numpy as np
Pb = np.array([[0.5, 0.5, 0.0, 0.0],
[0.25, 0.5, 0.25, 0.0],
[0.0, 0.25, 0.5, 0.25],
[0.0, 0.0, 0.5, 0.5]])
vals, vecs = np.linalg.eig(Pb.T)
pi = np.real(vecs[:, np.argmin(np.abs(vals - 1))]); pi /= pi.sum()
print("定常分布 pi =", np.round(pi, 4))
maxdiff = max(abs(pi[i]*Pb[i, j] - pi[j]*Pb[j, i])
for i in range(4) for j in range(4))
print(f"詳細釣り合い |pi_i p_ij - pi_j p_ji| の最大 = {maxdiff:.2e} (0なら可逆)")
# 定常分布 pi = [0.1667 0.3333 0.3333 0.1667]
# 詳細釣り合い |pi_i p_ij - pi_j p_ji| の最大 = 8.33e-17 (0なら可逆)
すべてのペアで確率流が(数値誤差の範囲で)厳密に釣り合っています。隣接状態としか遷移しない一次元的な連鎖は常に可逆です。
他過程との関係
- 連続時間版は定常分布と詳細釣り合いの 。出生死亡過程はその代表例です。
- 可逆性はマルチンゲールの定義と例の時間反転論法や、スペクトルが実数になる(対称化できる)という解析上の利点をもたらします。
数式の直観的意味
可逆連鎖は ()が対称行列になるため、固有値がすべて実数になります。これは定常分布と収束の収束速度(スペクトルギャップ)の解析を容易にし、MCMC の混合時間評価の基礎になります。可逆性は「設計しやすさ」と「解析しやすさ」を同時に与えるのです。
⚠️ よくある誤解
- 可逆は定常の十分条件であって必要条件ではない。定常分布を持つが詳細釣り合いを満たさない連鎖(一方向に循環する流れを持つ非可逆連鎖)はたくさんあります。むしろ非可逆連鎖の方が速く混合することもあり、近年の MCMC 研究のテーマです。
- 「可逆=時間を巻き戻せる」物理的可逆ではない。あくまで定常状態での統計的対称性です。
- メトロポリスの採択確率に提案の非対称 を忘れない。対称提案なら ですが、非対称提案ではヘイスティングス比が必要です。
対応シミュレーション
メトロポリス法の実装(離散分布 を狙って詳細釣り合いを満たす連鎖を構成)は MCMC の実装として ベイズ/シミュレーション分野へ wikilink します。理論(詳細釣り合いが定常を保証する)はここ、推論応用はベイズです。
関連
- 前提:定常分布と収束
- 章のまとめ:マルコフ連鎖 目次
- 応用:定常分布と詳細釣り合い、メトロポリス・ヘイスティングス(→ベイズ・シミュレーション)