【Metropolis-Hastings 算法】基本原理 1.马尔可夫链 理解

本文是将文章【Metropolis-Hastings 算法】中第一部分基本原理中的“1.马尔可夫链”,单独拿出来做一个详细的解析, 便于初学者更好的理解。


1. 问题背景

假设我们想从目标分布 p ( x ) p(x) p(x) 中抽样,但直接采样困难,比如:

  • p ( x ) p(x) p(x) 可能是一个复杂的概率密度函数;
  • p ( x ) p(x) p(x) 的解析表达式难以处理。

为了解决这个问题,Metropolis-Hastings (MH) 算法通过构造一个马尔可夫链,使其平稳分布为 p ( x ) p(x) p(x),从而间接生成符合 p ( x ) p(x) p(x) 的样本。


2. Metropolis-Hastings 算法的核心思想

2.1 马尔可夫链的转移核

MH 算法的关键是定义一个转移核 p ( x , x ′ ) p(x, x') p(x,x),通过它构造马尔可夫链:
p ( x , x ′ ) = q ( x , x ′ ) α ( x , x ′ ) (19.38) p(x, x') = q(x, x') \alpha(x, x') \tag{19.38} p(x,x)=q(x,x)α(x,x)(19.38)

其中:

  • q ( x , x ′ ) q(x, x') q(x,x)建议分布(proposal distribution),决定了从当前状态 x x x 到候选状态 x ′ x' x 的采样方式;
  • α ( x , x ′ ) \alpha(x, x') α(x,x)接受分布(acceptance distribution),决定了是否接受候选状态 x ′ x' x
2.2 接受概率

接受概率定义为:
α ( x , x ′ ) = min ⁡ { 1 , p ( x ′ ) q ( x ′ , x ) p ( x ) q ( x , x ′ ) } (19.39) \alpha(x, x') = \min \left\{ 1, \frac{p(x')q(x', x)}{p(x)q(x, x')} \right\} \tag{19.39} α(x,x)=min{1,p(x)q(x,x)p(x)q(x,x)}(19.39)

  • 含义
    • 如果候选状态 x ′ x' x 的目标分布概率 p ( x ′ ) p(x') p(x) 高于当前状态 x x x 的概率 p ( x ) p(x) p(x),则更有可能接受 x ′ x' x
    • 如果候选状态的概率较低,则仍有一定概率接受,从而避免陷入局部最优。

3. MH 算法的转移核具体形式

MH 算法的转移核 p ( x , x ′ ) p(x, x') p(x,x) 具体为:
p ( x , x ′ ) = { q ( x , x ′ ) , p ( x ′ ) q ( x ′ , x ) ≥ p ( x ) q ( x , x ′ ) , q ( x ′ , x ) p ( x ′ ) p ( x ) , p ( x ′ ) q ( x ′ , x ) < p ( x ) q ( x , x ′ ) . (19.40) p(x, x') = \begin{cases} q(x, x'), & p(x')q(x', x) \geq p(x)q(x, x'), \\ q(x', x) \frac{p(x')}{p(x)}, & p(x')q(x', x) < p(x)q(x, x'). \end{cases} \tag{19.40} p(x,x)={q(x,x),q(x,x)p(x)p(x),p(x)q(x,x)p(x)q(x,x),p(x)q(x,x)<p(x)q(x,x).(19.40)

转移核解释
  • 当候选状态 x ′ x' x 被接受时:
    • 转移概率与建议分布 q ( x , x ′ ) q(x, x') q(x,x) 和目标分布的比值相关;
  • 当候选状态被拒绝时:
    • 当前状态 x x x 保持不变,形成马尔可夫链的“停留”概率。

4. MH 算法的执行过程

4.1 采样步骤
  1. 初始化:选择一个初始状态 x 0 x_0 x0

  2. 迭代更新

    • 从建议分布 q ( x , x ′ ) q(x, x') q(x,x) 中采样候选状态 x ′ x' x
    • 计算接受概率:
      α ( x , x ′ ) = min ⁡ { 1 , p ( x ′ ) q ( x ′ , x ) p ( x ) q ( x , x ′ ) } \alpha(x, x') = \min \left\{ 1, \frac{p(x')q(x', x)}{p(x)q(x, x')} \right\} α(x,x)=min{1,p(x)q(x,x)p(x)q(x,x)}
    • 从均匀分布 u ∼ U ( 0 , 1 ) u \sim U(0, 1) uU(0,1) 中抽样一个随机数:
      • 如果 u ≤ α ( x , x ′ ) u \leq \alpha(x, x') uα(x,x),接受 x ′ x' x 为新状态;
      • 否则,拒绝 x ′ x' x,保持当前状态 x x x
  3. 生成样本:重复上述步骤,生成的样本序列 { x 1 , x 2 , … , x t } \{x_1, x_2, \dots, x_t\} {x1,x2,,xt} 会逐渐收敛到目标分布 p ( x ) p(x) p(x)

4.2 特性
  • MH 算法生成的马尔可夫链是可逆的,满足细致平衡条件;
  • 平稳分布为目标分布 p ( x ) p(x) p(x)

5. MH 算法的性质与推导

5.1 可逆性与细致平衡条件

MH 算法的转移核 p ( x , x ′ ) p(x, x') p(x,x) 满足以下细致平衡条件:
p ( x ) p ( x , x ′ ) = p ( x ′ ) p ( x ′ , x ) (19.41) p(x)p(x, x') = p(x')p(x', x) \tag{19.41} p(x)p(x,x)=p(x)p(x,x)(19.41)

证明过程:

  1. 假设 x ≠ x ′ x \neq x' x=x,带入 α ( x , x ′ ) \alpha(x, x') α(x,x) 的定义:
    p ( x ) p ( x , x ′ ) = p ( x ) q ( x , x ′ ) min ⁡ { 1 , p ( x ′ ) q ( x ′ , x ) p ( x ) q ( x , x ′ ) } p(x)p(x, x') = p(x)q(x, x') \min \left\{ 1, \frac{p(x')q(x', x)}{p(x)q(x, x')} \right\} p(x)p(x,x)=p(x)q(x,x)min{1,p(x)q(x,x)p(x)q(x,x)}

  2. 根据 min ⁡ ( a , b ) \min(a, b) min(a,b) 的性质,重写为:
    p ( x ) p ( x , x ′ ) = min ⁡ { p ( x ) q ( x , x ′ ) , p ( x ′ ) q ( x ′ , x ) } p(x)p(x, x') = \min \{ p(x)q(x, x'), p(x')q(x', x) \} p(x)p(x,x)=min{p(x)q(x,x),p(x)q(x,x)}

  3. 对称性:
    p ( x ) p ( x , x ′ ) = p ( x ′ ) q ( x ′ , x ) min ⁡ { 1 , p ( x ) q ( x , x ′ ) p ( x ′ ) q ( x ′ , x ) } p(x)p(x, x') = p(x')q(x', x) \min \left\{ 1, \frac{p(x)q(x, x')}{p(x')q(x', x)} \right\} p(x)p(x,x)=p(x)q(x,x)min{1,p(x)q(x,x)p(x)q(x,x)}

  4. 化简后得:
    p ( x ) p ( x , x ′ ) = p ( x ′ ) p ( x ′ , x ) p(x)p(x, x') = p(x')p(x', x) p(x)p(x,x)=p(x)p(x,x)

结论
MH 算法的马尔可夫链是可逆的,其平稳分布为目标分布 p ( x ) p(x) p(x)


5.2 平稳分布的推导
  1. 根据细致平衡条件:
    p ( x ) p ( x , x ′ ) = p ( x ′ ) p ( x ′ , x ) p(x)p(x, x') = p(x')p(x', x) p(x)p(x,x)=p(x)p(x,x)

  2. x ′ x' x 积分,得:
    ∫ p ( x ) p ( x , x ′ ) d x ′ = ∫ p ( x ′ ) p ( x ′ , x ) d x ′ \int p(x)p(x, x') dx' = \int p(x')p(x', x) dx' p(x)p(x,x)dx=p(x)p(x,x)dx

  3. 化简后,证明 p ( x ) p(x) p(x) 是平稳分布。


6. MH 算法的总结

  • 算法核心
    通过建议分布 q ( x , x ′ ) q(x, x') q(x,x) 和接受概率 α ( x , x ′ ) \alpha(x, x') α(x,x),构造一个马尔可夫链,该链的平稳分布为目标分布 p ( x ) p(x) p(x)

  • 公式总结

    1. 接受概率:
      α ( x , x ′ ) = min ⁡ { 1 , p ( x ′ ) q ( x ′ , x ) p ( x ) q ( x , x ′ ) } \alpha(x, x') = \min \left\{ 1, \frac{p(x')q(x', x)}{p(x)q(x, x')} \right\} α(x,x)=min{1,p(x)q(x,x)p(x)q(x,x)}
    2. 转移核:
      p ( x , x ′ ) = { q ( x , x ′ ) , p ( x ′ ) q ( x ′ , x ) ≥ p ( x ) q ( x , x ′ ) , q ( x ′ , x ) p ( x ′ ) p ( x ) , p ( x ′ ) q ( x ′ , x ) < p ( x ) q ( x , x ′ ) . p(x, x') = \begin{cases} q(x, x'), & p(x')q(x', x) \geq p(x)q(x, x'), \\ q(x', x) \frac{p(x')}{p(x)}, & p(x')q(x', x) < p(x)q(x, x'). \end{cases} p(x,x)={q(x,x),q(x,x)p(x)p(x),p(x)q(x,x)p(x)q(x,x),p(x)q(x,x)<p(x)q(x,x).
  • 特点

    • 适用于复杂分布的采样;
    • 能够避免陷入局部最优,通过概率接受较差的候选状态;
    • 保证平稳分布与目标分布一致。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彬彬侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值