马尔科夫链细致平衡条件

现象

例子:

有一个概率单纯形向量 v v

v=[0.6,0.4] v = [ 0.6 , 0.4 ]

和一个概率转移矩阵 P P :

P=[0.70.80.30.2] P = [ 0.7 0.3 0.8 0.2 ]

概率单纯形向量表示这个向量每个元素取值[0,1],且元素和为1。概率转移矩阵的每一行也都是一个概率单纯形。这是前提

发现:

v v n n P相乘, n n 趋于无穷大时,发现最后得到的向量会收敛到一个稳定值:

limnvPn=[0.73,0.27]

代码验证:

import numpy as np

v = np.array([0.6, 0.4])

P = np.array([[0.7, 0.3],[0.8, 0.2]])

for n in range(1000):
    v = np.dot(v, P)
    print v

Out:
...
[0.72727273 0.27272727]
[0.72727273 0.27272727]

而且最后这个稳定值跟初始 v v 的取值没有关系,也就是说改变 v v 的值,最后收敛的结果还是一样。

问题

那么问题来了,所有的转移矩阵P都有这种现象吗?需要满足什么条件呢?

细致平衡条件(Detailed Balance Condition):给定一个马尔科夫链,分布 π π 和概率转移矩阵 P P ,如果下面等式成立:

πiPij=πjPji,i,j

则此马尔科夫链具有一个平稳分布(Stationary Distribution) π π

需要注意的是这是一个充分条件,而不是必要条件,也就是说存在具有平稳分布的马尔科夫链不满足此细致平衡条件。

下面证明此条件的充分性:

因为:

iπiPij=iπjPji=πjiPji=πj ∑ i π i P i j = ∑ i π j P j i = π j ∑ i P j i = π j

所以:

πP=π π P = π

当分布是二维时,此条件是充要的,但3维以上时,就不是了。

这里证明二维时条件的必要性,将上面例子形式化表示:

v=[v1,v2] v = [ v 1 , v 2 ]

P=[p11p21p12p22] P = [ p 11 p 12 p 21 p 22 ]

当达到稳定值时,当前 vt v t 等于下一步的 vt+1 v t + 1 ,即:

vtP=[vt1,vt2][p11p21p12p22]=[vt1p11+vt2p21,vt1p12+vt2p22]=[vt+11,vt+12](1) (1) v t P = [ v 1 t , v 2 t ] [ p 11 p 12 p 21 p 22 ] = [ v 1 t p 11 + v 2 t p 21 , v 1 t p 12 + v 2 t p 22 ] = [ v 1 t + 1 , v 2 t + 1 ]

即:

vt1p11+vt2p21=vt+11vt1p12+vt2p22=vt+12 v 1 t p 11 + v 2 t p 21 = v 1 t + 1 v 1 t p 12 + v 2 t p 22 = v 2 t + 1

稳定时, vt1=vt+11 v 1 t = v 1 t + 1 vt2=vt+12 v 2 t = v 2 t + 1 ,我们统一写作 v1,v2 v 1 , v 2 ,所以:

v1p11+v2p21=v1v1p12+v2p22=v2 v 1 p 11 + v 2 p 21 = v 1 v 1 p 12 + v 2 p 22 = v 2

两个等式简化后都是一样的:

v2p21=v1p12 v 2 p 21 = v 1 p 12

证毕。

  • 9
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

手撕机

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

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

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

打赏作者

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

抵扣说明:

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

余额充值