马尔可夫蒙特卡洛(MCMC)-Metropolis-Hastings和Gibbs采样

Metropolis-Hastings

算法流程

  1. 从proposal distribution q ( z ∣ z ( ℓ ) ) q(z \mid z^{(\ell)}) q(zz())采样 z ^ \hat z z^
  2. 从0-1区间采样 u u u
  3. 计算接受率 α \alpha α
    如果 u < α u < \alpha u<α,则接受当前从 q ( z ∣ z ( ℓ ) ) q(z \mid z^{(\ell)}) q(zz())采样的 z ^ \hat z z^,否则选取上一个接受的样本作为该时刻的样本
    马尔可夫蒙特卡洛(MCMC)-Metropolis-Hastings和Gibbs采样_第1张图片

应用场景

MH采样可以用于估算intractable的后验概率 p ( z ) p(\mathbf{z}) p(z),利用贝叶斯公式展开 p ( z ) p(\mathbf{z}) p(z)

q q q为马尔可夫链中的状态转移矩阵, q ( z ( ℓ ) ∣ z ^ ) q(z^{(\ell)} \mid \hat{z}) q(z()z^)代表从状态 z ^ \hat{z} z^ 转移到状态 z ( ℓ ) z^{(\ell)} z() 的概率。

马尔可夫蒙特卡洛(MCMC)-Metropolis-Hastings和Gibbs采样_第2张图片

考虑如下例子

马尔可夫蒙特卡洛(MCMC)-Metropolis-Hastings和Gibbs采样_第3张图片

如果状态转移矩阵是对称的,那么就可以简化计算过程
马尔可夫蒙特卡洛(MCMC)-Metropolis-Hastings和Gibbs采样_第4张图片

Gibbs采样

Gibbs采样是MH采样的一种特殊情况,用于维度很高的情况下联合概率 p ( z ) p(\mathbf z) p(z)很难求,但可以通过每次固定其他维度,只对某一维度进行采样的方法对条件概率 p ( z k ∣ z \ k ( ℓ ) ) p\left(z_{k} \mid \mathbf{z}_{\backslash k}^{(\ell)}\right) p(zkz\k())进行采样,即:

sample z k z_k zk from
q k ( z ∣ z ( ℓ ) ) = p ( z k ∣ z \ k ( ℓ ) ) q_{k}\left(\mathbf{z} \mid \mathbf{z}^{(\ell)}\right)=p\left(z_{k} \mid \mathbf{z}_{\backslash k}^{(\ell)}\right) qk(zz())=p(zkz\k())
马尔可夫蒙特卡洛(MCMC)-Metropolis-Hastings和Gibbs采样_第5张图片

如上图所示接受率为1

流程

从1到L时刻,每次分别对某一维度依次采样,依此类推
马尔可夫蒙特卡洛(MCMC)-Metropolis-Hastings和Gibbs采样_第6张图片

总结

MCMC应用场景为target distribution p ( z ) p(\mathbf z) p(z)很难通过抽样得到,构建proposal pdf q k ( z ∣ z ( ℓ ) ) q_{k}\left(\mathbf{z} \mid \mathbf{z}^{(\ell)}\right) qk(zz())进行抽样,得到的样本(概率)构建成一条马尔可夫链

你可能感兴趣的:(Reinforcement,and,Online,Learning,算法,机器学习,人工智能)