ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

MCMC笔记Metropilis-Hastings算法(MH算法)

2021-10-18 22:34:17  阅读:300  来源: 互联网

标签:-% latex MCMC 29% MH 3Ex 28x 算法 29q%


1 前言

        我们在MCMC笔记:齐次马尔可夫链_UQI-LIUWJ的博客-CSDN博客 中介绍了平稳条件,当马尔可夫链达到平稳状态时(也就是各个状态之间的转移概率已经和时间无关了),那我们可以通过此时的马尔可夫链转移概率采集样本。

        比如我一开始时样本x0,那么我就根据x0到其他状态的转移概率采样,然后根据后续样p(x->x*)=

        那么现在的问题在于,什么时候达到平稳条件呢?或者说,我们怎么去找转移概率呢?

        在MCMC笔记:齐次马尔可夫链_UQI-LIUWJ的博客-CSDN博客中,我们知道detailed balance p(x)p(x->x*)=p(x*)p(x*->x)可以推出平稳条件。

        但对于一般随机求得的转移概率q来说,p(x)q(x->x*)\neq p(x*)q (x*->x)

        于是我们需要构造一个系数,使得p(x)q(x->x*) \alpha(x,x*)= p(x*)q (x*->x) \alpha(x*,x)

        我们称\alpha(x,x*)为接受率,当等式成立的时候,q(x->x*) \alpha(x,x*)就是此时平稳条件的p(x->x*)

 2 MH算法

2.1 α(接受率)的选取

我们令\alpha(x,x*)=min(1,\frac{p(x*)q(x*->x)}{p(x)q(x->x*)})

此时p(x)q(x->x*) \alpha(x,x*)=p(x)q(x->x*)min(1,\frac{p(x*)q(x*->x)}{p(x)q(x->x*)})

                                                  =min(p(x)q(x->x*),p(x*)q(x*->x))

                                                 =p(x*)q(x*->x)min(\frac{p(x)q(x->x*)}{p(x*)q(x*->x)},1)

                                                  =p(x*)q(x*->x)\alpha(x*,x)

也即p(x)p(x->x*)=p(x*)p(x*->x)p(x->x*)=q(x->x*) \alpha(x,x*)

所以此时满足detailed balance,所以此时的马尔可夫链满足平稳状态                           

2.2 MH算法流程

 

 接受率是α(x,x*)

参考内容

机器学习-白板推导系列(十三)-MCMC(Markov Chain Monte Carlo)笔记 - 知乎 (zhihu.com)

机器学习-白板推导系列(十三)-MCMC(Markov Chain Monte Carlo)_哔哩哔哩_bilibili

标签:-%,latex,MCMC,29%,MH,3Ex,28x,算法,29q%
来源: https://blog.csdn.net/qq_40206371/article/details/120835469

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有