Metropolis–Hastings算法:候选分布选择与接受率分析
1. 候选分布选择的背景与思路
在Metropolis–Hastings算法中,独立Metropolis–Hastings算法虽有研究价值,但实际应用存在问题。由于在复杂环境下提案构建困难,且提案选择对算法性能影响大,因此逐步收集目标信息,即探索马尔可夫链当前值的邻域,是更现实的做法。若探索机制能触及目标函数 $f$ 支撑集的边界,就能揭示目标的复杂性。
2. 随机游走提案
2.1 随机游走的原理
构建Metropolis–Hastings提案更自然的方法是考虑先前模拟的值来生成后续值,即对马尔可夫链当前值的邻域进行局部探索。具体实现为模拟 $Y_t$ ,公式为 $Y_t = X(t) + ε_t$ ,其中 $ε_t$ 是与 $X(t)$ 独立的随机扰动,服从分布 $g$ ,如均匀分布或正态分布。在单维情况下,$Y_t$ 可能服从 $U(X(t) - δ, X(t) + δ)$ 或 $N(X(t), τ^2)$ 。在一般的Metropolis–Hastings算法中,提案密度 $q(y|x)$ 形式为 $g(y - x)$ 。当密度 $g$ 关于零对称(即 $g(-t) = g(t)$ )时,与 $q$ 相关的马尔可夫链是随机游走,但由于额外的Metropolis–Hastings接受步骤,Metropolis–Hastings马尔可夫链 ${X(t)}$ 并非随机游走。
2.2 随机游走Metropolis–Hastings算法步骤
随机游走Metropolis–Hastings算法步骤如下:
1. 给定 $x(t)$ ,生成