采样之MCMC

注:本文中所有公式和思路来自于邹博先生的机器学习升级版,我只是为了加深记忆和理解写的本文。


马尔科夫模型


说到MCMC(Markov Chain Monte Carlo ),就必须要提一下MC(Markov Chain)模型,我们可以这么描述MC模型:

描述:考虑某随机过程Π,它有n个状态,记第t时刻处于第i状态,它在t+1时刻的状态位于状态j的概率为P(i, j) = P(j | i):即状态转移概率只依赖前一个状态,如下图所示:




马尔科夫随机过程的平稳分布

马尔科夫平稳分布:初始概率不同,但是经过若干次迭代,Π最终收敛在某个分布上

另外,如果一个非周期的马尔科夫随机过程具有转移概率矩阵P,并且它的任意两个状态之间都是连通的,则:


上图中的两种写法实际上是等价的,若概率分布πP=π,则可以说明:多项分布π是状态转移矩阵P的平稳分布。另外从数学的角度看xP=x这个方程的非负解为π,因为P唯一,所以π为方程的唯一非负解,说白了就是无论初值给成什么样,肯定会收敛于唯一的分布,只是收敛速度(迭代次数)会有不同。


细致平稳条件


从未定分布满足πP=π可知,如果非周期马尔科夫随机过程的状态转移矩阵P和分布π(x)满足:


则π(x)是马尔科夫随机过程的平稳条件,又被称为细致平稳条件,公式中的P(i,j)是矩阵中的第i行第j列,所表达的含义就是前一个状态为i时,后一个状态为j的概率:即P(j|i),仅此而已。

这里边的"细致"可以理解为对于任意两个状态i,j,从i转移到j的概率和从j转移到i的概率相等,也就是说每一状态都是平稳的。


那么细致平稳条件和平稳分布有什么关系呢?


根据马尔科夫过程的定义:


根据细致平稳条件:


从而得到:


完美!得到这么一致的结论是不是特别的爽!!!


设定接受率:

假设当前的马尔科夫过程的转移矩阵的为Q,对于给定的分布p,一般来说:


既然是这样,我们可以加入α因子,是的上式满足细致平稳条件:


满足因子的α有很多,根据对称性,可以取:

根据接受率α改造转移矩阵Q:



MCMC:Metropolis-Hastings算法:


根据需要满足的细致平稳条件:


若令α(j,i)=1,则有:


从而的到接受率:


将接受率设置为恒小于1,从而有:


公式化的介绍纠说这么多,接下里解释一下这个算法:

(1):  初始化马尔科夫随机过程初始状态为I=i0

(2):  对t=1,2,3...

(a):第t个时刻马尔科夫过程初始状态为it,采样q=q(j|it)

(b):从均匀分布中采样u∈[0,1]

(c):如果:

     则接收状态j,即it+1=j,否则不接受j,it+1=i



从(2)(c)步骤中可以看得出,MCMC还是有一定的拒绝率,而且α越小,拒绝率越高,那么我们如何改进呢?且听下回分解。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值