马尔可夫链蒙特卡罗法

马尔可夫链蒙特卡罗法

蒙特卡罗法

思想:假设概率分布的定义已知,然后通过随机抽样获得概率分布的随机样本,通过得到的随机样本对概率分布的特征进行分析。
for example:从随机抽出的样本中计算出样本均值,从而得到总体的期望。
蒙特卡罗方法的核心:随机抽样
主要有直接抽样,接受-拒绝抽样,重要性抽样

随机抽样

接受拒绝抽样
input:抽样的目标概率分布的概率密度函数 p ( x ) p(x) p(x)
output:概率分布的随机样本 x 1 , x 2 , . . . , x n x_1,x_2,...,x_n x1,x2,...,xn
parameters:样本数n
建议分布: q ( x ) q(x) q(x),概率分布: p ( x ) p(x) p(x)
u < = p ( x ∗ ) c q ( x ∗ ) u<= \frac{p(x^* )}{cq(x^ * )} u<=cq(x)p(x)

数学期望估计

样本均值: f n ^ \hat{f_n} fn^
f n ^ = 1 n ∑ i = 1 n f ( x i ) \hat{f_n} = \frac{1}{n}\sum_{i=1}^nf(x_i) fn^=n1i=1nf(xi)
根据大数定律可知,当样本容量增大时,样本均值以概率1收敛于数学期望:
KaTeX parse error: Undefined control sequence: \verfy at position 34: …x)}[f(x)]~,~n->\̲v̲e̲r̲f̲y̲
E p ( x ) [ f ( x ) ] = 1 n ∑ i = 1 n f ( x i ) E_{p(x)}[f(x)] = \frac{1}{n}\sum_{i=1}^nf(x_i) Ep(x)[f(x)]=n1i=1nf(xi)

积分计e算

∫ X h ( x ) d x \int_{\mathcal{X}}h(x)dx Xh(x)dx
h ( x ) h(x) h(x)分解成为一个函数 f ( x ) f(x) f(x)和一个密度函数 p ( x ) p(x) p(x)
∫ X h ( x ) d x = ∫ X f ( x ) p ( x ) d x = E p ( x ) [ f ( x ) ] \int_{\mathcal{X}}h(x)dx = \int_{\mathcal{X}}f(x)p(x)dx = E_{p(x)}[f(x)] Xh(x)dx=Xf(x)p(x)dx=Ep(x)[f(x)]

summery

一般的蒙特卡罗法中的抽样分布是独立的,而马尔可夫链蒙特卡罗法中的抽样样本不是独立的,样本序列形成马尔可夫链

马尔可夫链
基本定义

马尔可夫性:
P ( X t ∣ X 0 , X 1 , X 2 , . . . , X t − 1 ) = P ( X t ∣ X t − 1 )   ,   t = 1 , 2 , . . . , n P(X_t|X_0,X_1,X_2,...,X_{t-1}) = P(X_t|X_{t-1})~,~t=1,2,...,n P(XtX0,X1,X2,...,Xt1)=P(XtXt1) , t=1,2,...,n
马尔可夫链(具有马尔可夫性的随机序列)也称之为马尔可夫过程:
X = { X 0 , X 1 , X 2 , . . . , X t , . . . } X = \lbrace X_0,X_1,X_2,...,X_t,...\rbrace X={X0,X1,X2,...,Xt,...}
马尔可夫链的转移概率分布(决定了马尔可夫链的特性):
P ( X t ∣ X t − 1 )   ,   t = 1 , 2 , 3 , . . . , n P(X_t|X_{t-1})~,~t=1,2,3,...,n P(XtXt1) , t=1,2,3,...,n
时间齐次的马尔可夫链(转移概率分布 P ( X t ∣ X t − 1 ) P(X_t|X_{t-1}) P(XtXt1)与t无关):
P ( X t + s ∣ X t − 1 + s ) = P ( X t ∣ X t − 1 )   ,   t = 1 , 2 , 3 , . . . , n P(X_{t+s}|X_{t-1+s}) = P(X_t|X_{t-1})~,~t=1,2,3,...,n P(Xt+sXt1+s)=P(XtXt1) , t=1,2,3,...,n
另外,还有n阶马尔可夫链,n阶马尔可夫链可以转化成为1阶马尔可夫链。

离散状态马尔可夫链
  • 转移概率矩阵和状态分布
    p i j = ( X t = i ∣ X t − 1 = j )   ,   i = 1 , 2 , . . . p_{ij} = (X_t = i | X_{t-1} = j)~,~i=1,2,... pij=(Xt=iXt1=j) , i=1,2,...满足 p i j > = 0 , ∑ i p i j = 1 p_{ij}>=0,\sum_ip_{ij}=1 pij>=0,ipij=1,且满足这两个条件的矩阵称之为随机矩阵,马尔可夫链 X = { X 0 , X 1 , . . . , X t , . . . } X=\lbrace X_0,X_1,...,X_t,... \rbrace X={X0,X1,...,Xt,...}在时刻t的概率分布称之为t的状态分布,其中, π i ( t ) \pi_i(t) πi(t)指的是时刻t状态为i的概率 P ( X t = i ) P(X_t = i) P(Xt=i)记做,:
    π ( t ) = [ π 1 ( t ) , . . . , π n ( t ) ] T \pi(t) = [\pi_1(t),...,\pi_n(t)]^T π(t)=[π1(t),...,πn(t)]T
  • 平稳分布(P:状态转移矩阵 P = ( p i j ) P = (p_{ij}) P=(pij)
    π = P π \pi = P\pi π=Pπ
    直观上,如果马尔可夫链的平稳分布存在,那么以该平稳分布作为初始分布,而向未来随机状态转移,之后的任何一个状态也是平稳状态。
    平稳分布的充分必要条件
    x i = ∑ j p i j x j x_i = \sum_{j}p_{ij}x_j xi=jpijxj
    x i > = 0 x_i>=0 xi>=0
    ∑ i x i = 1 \sum_ix_i=1 ixi=1
    马尔可夫链X在时刻t的状态分布,可以由在时刻(t-1)的状态分布,以及转移概率决定:
    π ( t ) = P π ( t − 1 ) \pi(t) = P\pi(t-1) π(t)=Pπ(t1)
    π ( t ) = P t π ( 0 ) \pi(t) = P^t\pi(0) π(t)=Ptπ(0),这里的 P t P^t Pt称为t步转移概率矩阵。
连续状态马尔可夫链

转移核 P ( x , A ) P(x,A) P(x,A)定义为:
P ( x , A ) = ∫ A p ( x , y ) d y P(x,A) = \int_Ap(x,y)dy P(x,A)=Ap(x,y)dy
P ( X t = A ∣ X t − 1 = x ) = P ( x , A ) P(X_t = A|X_t-1 = x) = P(x,A) P(Xt=AXt1=x)=P(x,A)

马尔可夫链的额性质
  • 不可约
    P ( X t = i ∣ X 0 = j ) > 0 P(X_t = i|X_0=j)>0 P(Xt=iX0=j)>0
    从任意状态出发,当经过充分长的时间后,可以达到任意一个状态。
  • 非周期
    t : P ( X t = i ∣ X ) = i ) > 0 的最大公约数为1 {t:P(X_t=i|X_)=i)>0}\text{的最大公约数为1} t:P(Xt=iX)=i)>0的最大公约数为1
    一个非周期的马尔可夫链,不存在一个状态,从这一个状态出发,再返回这个状态所经历的时间呈现一定的周期性。
  • 正常返
    lim ⁡ t − > + ∞ p i j t > 0 \lim_{t->+\infty}p_{ij}^t>0 limt>+pijt>0
    一个正常返的马尔可夫链,其中任意一个状态,从其他任何一个状态出发,时间趋于无穷时,首次转移到这个状态的概率不为0
  • 遍历定理
    不可约的非周期的正常返的马尔可夫链,当时间趋于无穷时,马尔可夫链的状态总会趋于平稳分布
  • 可逆马尔可夫链
    p i j π j = p j i π i p_{ij}\pi_j = p_{ji}\pi_i pijπj=pjiπi
    可逆的马尔可夫链,无论是面向未来还是面向过去,任意一个时刻的状态分布均是平稳分布。
  • 细致平衡方程
    P π = π P\pi = \pi Pπ=π
马尔可夫链蒙特卡罗法
基本想法

燃烧期(0~m)
f ( x ) ^ = 1 n − m ∑ i = n − m + 1 n f ( x i ) \hat{f(x)} = \frac{1}{n-m}\sum_{i=n-m+1}^nf(x_i) f(x)^=nm1i=nm+1nf(xi)

基本步骤

step 1:在随机变量 x x x的状态空间里构造一个满足条件的马尔可夫链,使得其平稳分布为目标分布 p ( x ) p(x) p(x)
step 2:从状态空间的某一点 x 0 x_0 x0出发,用构造的马尔可夫链进行随机游走,产生样本序列 x 0 , x 1 , x 2 , . . x_0,x_1,x_2,.. x0,x1,x2,..
step 3:应用马尔可夫链的遍历定理,确定正整数m和n,得到样本集合 x m + 1 , . . . , x n {x_{m+1},...,x_n} xm+1,...,xn得到函数的均值 f ( x ) ^ = 1 n − m ∑ i = n − m + 1 n f ( x i ) \hat{f(x)} = \frac{1}{n-m}\sum_{i=n-m+1}^nf(x_i) f(x)^=nm1i=nm+1nf(xi)
important questions:
one:如何定义马尔可夫链,保证马尔可夫链蒙特卡罗法的条件成立
two:如何确定m,保证样本的无偏性
three:如何确定n,保证遍历均值的精度

Metropolis-Hastings算法
基本原理
  • 马尔可夫链
    Metropolis-Hastings算法采用转移核为 p ( x , x ′ ) p(x,x^{\prime}) p(x,x)
    p ( x , x ′ ) = q ( x , x ′ ) α ( x , x ′ ) p(x,x^{\prime}) = q(x,x^{\prime})\alpha(x,x^{\prime}) p(x,x)=q(x,x)α(x,x)
  • 建议分布 q ( x , x ′ ) q(x,x^{\prime}) q(x,x)和接受分布 α ( x , x ′ ) \alpha(x,x^{\prime}) α(x,x)
    α ( x , x ′ ) = min ⁡ { 1 , p ( x ′ q ( x ′ , x ) ) p ( x ) q ( x , x ′ ) } \alpha(x,x^{\prime}) = \min\lbrace1, \frac{p(x^{\prime}q(x^{\prime},x))}{p(x)q(x,x^{\prime})}\rbrace α(x,x)=min{1,p(x)q(x,x)p(xq(x,x))}
    转移核:
    p ( x , x ′ ) = ? ? p(x,x^{\prime}) = ?? p(x,x)=??
    构造出来了:
    p ( x ) p ( x , x ′ ) = p ( x ′ ) p ( x ′ , x ) p(x)p(x,x^{\prime}) = p(x^{\prime})p(x^{\prime},x) p(x)p(x,x)=p(x)p(x,x)
  • 满条件分布
    $$$$
Metropolis-Hastings算法

input:抽样的目标分布的密度函数 p ( x ) p(x) p(x),函数 f ( x ) f(x) f(x)
output: p ( x ) p(x) p(x)的随机样本 x m + 1 , . . , x n x_{m+1},..,x_n xm+1,..,xn,函数样本的均值
parameters:m,n

单分量Metropolis-Hastings法

Metropolis-Hastings算法需要对多变量分布进行抽样,有时候对多元变量分布的抽样是苦难的,可以对多元变量的每一个变量的条件分布依次进行抽样,这就是单分量Metropolis-Hastings法

吉布斯抽样

基本做法是,从联合概率分布定义满条件概率分布,依次对满条件分布进行抽样,得到样本的序列。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值