一、概述
1、动机
MCMC是一种随机的近似推断,其核心就是基于采样的随机近似方法蒙特卡洛方法。对于采样的动机而言,有这样的使用需求:
采样作为任务,用于生成新的样本本身就是机器学习的常见任务
求和/求积分
采样结束后,我们需要评价采样出来的样本点是不是好的样本集:
样本趋向于高概率的区域
样本之间必须独立
具体采样中,采样是一个困难的过程:
无法采样得到归一化因子,即无法直接对概率 p ( x ) = 1 Z p ^ ( x ) p(x)=\frac{1}{Z}\hat{p}(x) p ( x ) = Z 1 p ^ ( x ) 采样,常常需要对 CDF 采样,但复杂的情况不行
如果归一化因子可以求得,但是对高维数据依然不能均匀采样(维度灾难),这是由于对 p p p 维空间,总的状态空间是 K p K^p K p 这么大,于是在这种情况下,直接采样也不行
二、平稳分布
定义状态转移矩阵(随机矩阵)
Q = ( Q 11 Q 12 ⋯ Q 1 K ⋮ ⋮ ⋮ ⋮ Q k 1 Q k 2 ⋯ Q K K ) k × k Q=\begin{pmatrix}Q_{11}&Q_{12}&\cdots&Q_{1K}\\\vdots&\vdots&\vdots&\vdots\\Q_{k1}&Q_{k2}&\cdots&Q_{KK}\end{pmatrix}_{k×k} Q = ⎝ ⎛ Q 11 ⋮ Q k 1 Q 12 ⋮ Q k 2 ⋯ ⋮ ⋯ Q 1 K ⋮ Q KK ⎠ ⎞ k × k
这个矩阵每一行代表这一个时刻q ( i ) x q^{(i)}x q ( i ) x 的K(状态空间)种取值可能概率,一行之和为1,不过到底是行等于1还是列等于1,得看矩阵中每个元素即转移概率的定义。是从行上的状态转移到列上的状态,还是从列上的状态转移到行上的状态。此外,随机矩阵的特征值 ≤ 1。假设只有一个特征值为 λ i = 1 \lambda_i=1 λ i = 1 。于是在马尔可夫过程中:
q t + 1 ( x = j ) = ∑ i = 1 K q t ( x = i ) Q i j 这种转换的目的是将状态用矩阵表示 q^{t+1}(x=j)=\sum\limits_{i=1}^Kq^t(x=i)Q_{ij}\\
这种转换的目的是将状态用矩阵表示\\ q t + 1 ( x = j ) = i = 1 ∑ K q t ( x = i ) Q ij 这种转换的目的是将状态用矩阵表示
具体过程如下:
令 q ( t + 1 ) = ( q ( t + 1 ( x = 1 ) q ( t + 1 ) ( x = 2 ) ⋯ q ( t + 1 ) ( x = k ) ) 1 × k 而 q ( t + 1 ) ( x = j ) = ∑ i = 1 k q ( t ) ( x = i ) ⋅ Q i j ∴ q ( t + 1 ) = ( ∑ i = 1 k q ( t ) ( x = i ) Q i 1 ∑ i = 1 k q ( t ) ( x = i ) ⋅ Q i 2 ⋯ ∑ i = 1 k q ( t ) ( x = i ) ⋅ Q i k ) i × k = q ( t ) ⋅ Q ⇔ q ( t ) = ( q ( t ) ( x = 1 ) q ( t ) ( x = 2 ) ⋯ q ( t ) ( x = k ) ) \begin{aligned}
令 q^{(t+1)} & =\left(q^{(t+1}(x=1) \quad q^{(t+1)}(x=2) \cdots q^{(t+1)}(x=k)\right)_{1×k} \\
\text { 而 } & q^{(t+1)}(x=j)=\sum_{i=1}^k q^{(t)}(x=i) \cdot Q_{i j} \\
\therefore q^{(t+1)} & =\left(\sum_{i=1}^k q^{(t)}(x=i) Q_{i 1} \quad \sum_{i=1}^k q^{(t)}(x=i) \cdot Q_{i 2} \cdots \sum_{i=1}^k q^{(t)}(x=i) \cdot Q_{i k}\right)_{i × k} \\
& =q^{(t)} \cdot Q \\
\Leftrightarrow & q^{(t)}=\left(q^{(t)}(x=1) q^{(t)}(x=2) \cdots q^{(t)}(x=k)\right)
\end{aligned} 令 q ( t + 1 ) 而 ∴ q ( t + 1 ) ⇔ = ( q ( t + 1 ( x = 1 ) q ( t + 1 ) ( x = 2 ) ⋯ q ( t + 1 ) ( x = k ) ) 1 × k q ( t + 1 ) ( x = j ) = i = 1 ∑ k q ( t ) ( x = i ) ⋅ Q ij = ( i = 1 ∑ k q ( t ) ( x = i ) Q i 1 i = 1 ∑ k q ( t ) ( x = i ) ⋅ Q i 2 ⋯ i = 1 ∑ k q ( t ) ( x = i ) ⋅ Q ik ) i × k = q ( t ) ⋅ Q q ( t ) = ( q ( t ) ( x = 1 ) q ( t ) ( x = 2 ) ⋯ q ( t ) ( x = k ) )
该过程可持续迭代 ⇒ q ( t + 1 ) = q ( t ) ⋅ Q = q ( 1 ) Q t 该过程可持续迭代\\
\Rightarrow q^{(t+1)}=q^{(t)}\cdot Q=q^{(1)}Q^t 该过程可持续迭代 ⇒ q ( t + 1 ) = q ( t ) ⋅ Q = q ( 1 ) Q t
对于Q而言:
∴ Q = A ⋅ Λ ⋅ A − 1 Λ = ( λ 1 . . . λ k ) ⋅ ∣ λ i ∣ ⩽ 1 , for i = 1 , 2 , , . . . , K 则 : q ( t + 1 ) = q ( 1 ) ⋅ ( A ⋅ ∧ ⋅ A − 1 ) t = q ( 1 ) ⋅ A ∧ t A − 1 存在足够大的 m , s . t . Λ m = ( 0 1 . . . 0 ) 由于随机矩阵特征值的绝对值均 ≤ 1 ,因此可以设 λ i 为 1 ( 简化运算 ) q ( m + 1 ) = q ( 1 ) ⋅ A ⋅ Λ m A − 1 q ( m + 2 ) = q ( m + 1 ) ⋅ A ⋅ Λ ⋅ A − 1 = q ( 1 ) ⋅ A ∧ m A − 1 A ∧ A − 1 = q ( 1 ) ∧ m + 1 A − 1 = q ( m + 1 ) ∴ q ( m + 2 ) = q ( m + 1 ) 当 t > m 时 , q ( m + 1 ) = q ( m + 2 ) = ⋯ = q ( ∞ ) = ⋯ \begin{aligned}
& \therefore Q=A \cdot \Lambda \cdot A^{-1} \\
&
\Lambda=\left(\begin{array}{lll}
\lambda_{1} & \\
& ... & \\
& & \lambda_k
\end{array}\right) \cdot\left|\lambda_i\right| \leqslant 1, \text { for } i=1,2,,...,K \\
& 则: q^{(t+1)}=q^{(1)} \cdot\left(A \cdot \wedge \cdot A^{-1}\right)^t=q^{(1)} \cdot A \wedge^t A^{-1} \\
& 存在足够大的m, s.t. \Lambda^m = \left(\begin{array}{lll}
0 & &&\\
& 1 & &\\
& & ...&\\
& & &0\\
\end{array}\right)\\
& 由于随机矩阵特征值的绝对值均≤1,因此可以设\lambda_i为1(简化运算)\\
& q^{(m+1)}=q^{(1)} \cdot A \cdot \Lambda^m A^{-1} \\
& q^{(m+2)}=q^{(m+1)} \cdot A \cdot \Lambda \cdot A^{-1} \\
& =q^{(1)} \cdot A \wedge^{m} A^{-1} A \wedge A^{-1} \\
& =q^{(1)} \wedge^{m+1} A^{-1}=q^{(m+1)} \\
& \therefore q^{(m+2)}=q^{(m+1)} \\
& \begin{array}{l}
当t > m时,
q^{(m+1)}=q^{(m+2)}=\cdots=q^{(∞)}=\cdots
\end{array} \\
&
\end{aligned} ∴ Q = A ⋅ Λ ⋅ A − 1 Λ = ⎝ ⎛ λ 1 ... λ k ⎠ ⎞ ⋅ ∣ λ i ∣ ⩽ 1 , for i = 1 , 2 ,, ... , K 则 : q ( t + 1 ) = q ( 1 ) ⋅ ( A ⋅ ∧ ⋅ A − 1 ) t = q ( 1 ) ⋅ A ∧ t A − 1 存在足够大的 m , s . t . Λ m = ⎝ ⎛ 0 1 ... 0 ⎠ ⎞ 由于随机矩阵特征值的绝对值均 ≤ 1 ,因此可以设 λ i 为 1 ( 简化运算 ) q ( m + 1 ) = q ( 1 ) ⋅ A ⋅ Λ m A − 1 q ( m + 2 ) = q ( m + 1 ) ⋅ A ⋅ Λ ⋅ A − 1 = q ( 1 ) ⋅ A ∧ m A − 1 A ∧ A − 1 = q ( 1 ) ∧ m + 1 A − 1 = q ( m + 1 ) ∴ q ( m + 2 ) = q ( m + 1 ) 当 t > m 时 , q ( m + 1 ) = q ( m + 2 ) = ⋯ = q ( ∞ ) = ⋯
正因为马尔科夫链有这样一个能够收敛的性质,因此我们可以联想到构造一条马尔科夫链,让最后收敛的平稳分布等于或者逼近我们想要的那种分布,后可从已经收敛的状态中,选择一个状态取出需要数量的样本,达到合理采样的目的
三、蒙特卡洛方法
Monte Carlo Method也就是基于采样的随机近似方法。该方法旨在求得复杂概率分布下的期望值:E z ∣ x [ f ( z ) ] = ∫ p ( z ∣ x ) f ( z ) d z ≈ 1 N ∑ i = 1 N f ( z i ) E_{z|x}[f(z)]=\int p(z|x)f(z)\mathrm{d}z\approx \frac{1}{N} \sum_{i=1}^{N}f(z_{i}) E z ∣ x [ f ( z )] = ∫ p ( z ∣ x ) f ( z ) d z ≈ N 1 ∑ i = 1 N f ( z i ) ,其中z i z_{i} z i 是从概率分布p ( z ∣ x ) p(z|x) p ( z ∣ x ) 中取的样本,也就是说从概率分布中取N N N 个点,从而近似计算这个积分。
这里介绍三种采样方法:
概率分布采样
首先要求得概率密度函数PDF的累计密度函数CDF,然后求CDF得反函数,在0-1之间均匀取样,代入反函数,就得到了取样点。这个方法的缺点就是大部分PDF很难求得CDF:
拒绝采样(Rejection Sampling)
对于较复杂的概率分布 p ( z ) p(z) p ( z ) ,引入简单的提议分布 (proposal distribution) q ( z ) q(z) q ( z ) ,使得任意的 M q ( z i ) ≥ p ( z i ) M q\left(z_i\right) \geq p\left(z_i\right) Mq ( z i ) ≥ p ( z i ) ,然后对 q ( z ) q(z) q ( z ) 进行采样获得样本。具体的采样方法步骤为:
①选择概率密度函数为 q ( z ) q(z) q ( z ) ,作为提议分布,使其对任一 z i z_i z i 满足 M q ( z i ) ≥ p ( z i ) M q\left(z_i\right) \geq p\left(z_i\right) Mq ( z i ) ≥ p ( z i ) ,其中 M > 0 M>0 M > 0 ;
②按照提议分布 q ( z ) q(z) q ( z ) 随机抽样得到样本 z i z_i z i ,再按照均匀分布在 ( 0 , 1 ) (0,1) ( 0 , 1 ) 范围内抽样得到 u i u_i u i ;
③如果 u i ≤ p ( z i ) M q ( z i ) u_i \leq \frac{p\left(z_i\right)}{M q\left(z_i\right)} u i ≤ Mq ( z i ) p ( z i ) ,则将 z i z_i z i 作为抽样结果;否则,返回步骤②;
④直到获得 N N N 个样本,结束。
拒绝采样的优点是容易实现, 缺点是采样效率可能不高。如果 p ( z ) p(z) p ( z ) 的涵盖体积占 M q ( z ) M q(z) Mq ( z ) 的涵盖体积的比例很低,就会导致拒绝的比例很高,抽样效率很低。注意,一般是在高维空间抽样,会遇到维度灾难的问题,即使 p ( z ) p(z) p ( z ) 与 M q ( z ) M q(z) Mq ( z ) 很接近,两者涵盖体积的差异也可能很 大。
重要性采样 (Importance Sampling)
直接对期望 E p ( z ) [ f ( z ) ] E_{p(z)}[f(z)] E p ( z ) [ f ( z )] 进行采样。这里引入另一个分布 q ( z ) q(z) q ( z ) :
E p ( z ) [ f ( z ) ] = ∫ f ( z ) ⋅ p ( z ) d z = ∫ f ( z ) ⋅ p ( z ) q ( z ) ⋅ q ( z ) d z ≈ 1 N ∑ i = 1 N f ( z i ) ⋅ p ( z i ) q ( z i ) ⏟ w e i g h t z i ∼ q ( z ) , i = 1 , 2 , ⋯ , N E_{p(z)}[f(z)]=\int f(z)\cdot p(z)\mathrm{d}z\\ =\int f(z)\cdot \frac{p(z)}{q(z)}\cdot q(z)\mathrm{d}z\\ \approx \frac{1}{N}\sum_{i=1}^{N}f(z_{i})\cdot \underset{weight}{\underbrace{\frac{p(z_{i})}{q(z_{i})}}}\\ z_{i}\sim q(z),i=1,2,\cdots ,N E p ( z ) [ f ( z )] = ∫ f ( z ) ⋅ p ( z ) d z = ∫ f ( z ) ⋅ q ( z ) p ( z ) ⋅ q ( z ) d z ≈ N 1 i = 1 ∑ N f ( z i ) ⋅ w e i g h t q ( z i ) p ( z i ) z i ∼ q ( z ) , i = 1 , 2 , ⋯ , N
重要性采样并不像接受-拒绝采样一样是一种采样方法,只是一种让估计更加精确的积分策略。接受拒绝采样是一种生成我们想要的分布的方法,而重要性采样是利用某种分布(这种分布能区分出被积函数不同点的重要性)更好地积分。本质上二者做的是两件不同的事情。
例如,如果分布相当不同,采用这种方法采样是非常不合理的,越差的拟合效果反而有更大的权重了。
此外采样在q ( z ) q(z) q ( z ) 中采样,并通过权重计算和。重要值采样对于权重⾮常⼩的时候,效率也非常低。
Sampling-Importance-Resampling
重要性采样有⼀个变种
这种方法,首先和上面⼀样进行采样,然后在采样出来的N个样本中,重新采样,这个重新采样,使⽤每个样本点的权重作为概率分布进行采样。在后续章节粒子滤波会详细介绍。
四、马尔可夫链的类型
1. 齐次(一阶)马尔科夫链
考虑一个随机变量的序列X = { X 0 , X 1 , ⋯ , X t , ⋯ } X=\left \{X_{0},X_{1},\cdots ,X_{t},\cdots \right \} X = { X 0 , X 1 , ⋯ , X t , ⋯ } ,这里的X t X_{t} X t 表示t t t 时刻的随机变量,每个随机变量的取值空间相同。
如果X t X_{t} X t 只依赖于X t − 1 X_{t-1} X t − 1 ,而不依赖于过去的随机变量{ X 0 , X 1 , ⋯ , X t − 2 } \left \{X_{0},X_{1},\cdots ,X_{t-2}\right \} { X 0 , X 1 , ⋯ , X t − 2 } ,这一性质称为马尔可夫性,即
P ( X t ∣ X 1 , X 2 , ⋯ X t − 1 ) = P ( X t ∣ X t − 1 ) , t = 1 , 2 , ⋯ P(X_{t}|X_{1},X_{2},\cdots X_{t-1})=P(X_{t}|X_{t-1}),t=1,2,\cdots P ( X t ∣ X 1 , X 2 , ⋯ X t − 1 ) = P ( X t ∣ X t − 1 ) , t = 1 , 2 , ⋯
具有马尔可夫性的随机序列X = { X 0 , X 1 , ⋯ , X t , ⋯ } X=\left \{X_{0},X_{1},\cdots ,X_{t},\cdots \right \} X = { X 0 , X 1 , ⋯ , X t , ⋯ } 称为马尔可夫链(Markov Chain),或马尔可夫过程(Markov Process)。条件概率分布P ( X t ∣ X t − 1 ) P(X_{t}|X_{t-1}) P ( X t ∣ X t − 1 ) 称为马尔可夫链的转移概率分布。
当转移概率分布P ( X t ∣ X t − 1 ) P(X_{t}|X_{t-1}) P ( X t ∣ X t − 1 ) 与t t t 无关,也就是说不同时刻的转移概率是相同的,则称该马尔可夫链为时间齐次的马尔可夫链(Time Homogenous Markov Chain) ,形式化的表达是:
P ( X t + s ∣ X t − 1 + s ) = P ( X t ∣ X t − 1 ) , t = 1 , 2 , ⋯ ; s = 1 , 2 , ⋯ P(X_{t+s}|X_{t-1+s})=P(X_{t}|X_{t-1}),t=1,2,\cdots ;\; \; s=1,2,\cdots P ( X t + s ∣ X t − 1 + s ) = P ( X t ∣ X t − 1 ) , t = 1 , 2 , ⋯ ; s = 1 , 2 , ⋯
2. 转移概率矩阵和状态分布
PS: 以下内容结合这个图会容易理解一点,注意状态分布的定义和大佬的不一样
如果马尔可夫链的随机变量X t ( t = 0 , 1 , 2 , ⋯ ) X_{t}(t=0,1,2,\cdots ) X t ( t = 0 , 1 , 2 , ⋯ ) 定义在离散 空间,则转移概率分布可以由矩阵表示。若马尔可夫链在时刻t − 1 t-1 t − 1 处于状态j j j ,在时刻t t t 移动到状态i i i ,将转移概率记作:
p i j = ( X t = i ∣ X t − 1 = j ) , i = 1 , 2 , ⋯ ; j = 1 , 2 , ⋯ p_{ij}=(X_{t}=i|X_{t-1}=j),i=1,2,\cdots ;\; \; j=1,2,\cdots p ij = ( X t = i ∣ X t − 1 = j ) , i = 1 , 2 , ⋯ ; j = 1 , 2 , ⋯
满足每个行的和为1 1 1 (具体是行还是列根据自己的定义):
p i j ≥ 0 , ∑ i p i j = 1 , p i j = p ( X t + 1 = j ∣ X t = i ) p_{ij}\geq 0,\; \; \sum _{i}p_{ij}=1,\; \;p_{ij}=p(X_{t+1}=j|X_t=i) p ij ≥ 0 , i ∑ p ij = 1 , p ij = p ( X t + 1 = j ∣ X t = i )
马尔可夫链的转移概率可以由矩阵表示:
P = [ p 11 p 12 p 13 ⋯ p 21 p 22 p 23 ⋯ p 31 p 32 p 33 ⋯ ⋯ ⋯ ⋯ ⋯ ] p i j ≥ 0 , ∑ i p i j = 1 P=\begin{bmatrix} p_{11} & p_{12} & p_{13} & \cdots \\ p_{21} & p_{22} & p_{23} & \cdots \\ p_{31} & p_{32} & p_{33} & \cdots \\ \cdots & \cdots & \cdots & \cdots \end{bmatrix}\\ p_{ij}\geq 0,\; \; \sum _{i}p_{ij}=1 P = ⎣ ⎡ p 11 p 21 p 31 ⋯ p 12 p 22 p 32 ⋯ p 13 p 23 p 33 ⋯ ⋯ ⋯ ⋯ ⋯ ⎦ ⎤ p ij ≥ 0 , i ∑ p ij = 1
考虑马尔可夫链X = { X 0 , X 1 , ⋯ , X t , ⋯ } X=\left \{X_{0},X_{1},\cdots ,X_{t},\cdots \right \} X = { X 0 , X 1 , ⋯ , X t , ⋯ } 在时刻X t ( t = 0 , 1 , 2 , ⋯ ) X_{t}(t=0,1,2,\cdots ) X t ( t = 0 , 1 , 2 , ⋯ ) 的概率分布,称为时刻t t t 的状态分布 ,记作:
π ( t ) = [ π 1 ( t ) π 2 ( t ) ⋮ ] \pi (t)=\begin{bmatrix} \pi _{1}(t)\\ \pi _{2}(t)\\ \vdots \end{bmatrix} π ( t ) = ⎣ ⎡ π 1 ( t ) π 2 ( t ) ⋮ ⎦ ⎤
其中π i ( t ) \pi _{i}(t) π i ( t ) 表示时刻t t t 状态为i i i 的概率P ( X t = i ) P(X_{t}=i) P ( X t = i ) ,即:
π i ( t ) = P ( X t = i ) , i = 1 , 2 , ⋯ \pi _{i}(t)=P(X_{t}=i),\; \; i=1,2,\cdots π i ( t ) = P ( X t = i ) , i = 1 , 2 , ⋯
对于马尔可夫链的初始状态分布:
π ( 0 ) = [ π 1 ( 0 ) π 2 ( 0 ) ⋮ ] \pi (0)=\begin{bmatrix} \pi _{1}(0)\\ \pi _{2}(0)\\ \vdots \end{bmatrix} π ( 0 ) = ⎣ ⎡ π 1 ( 0 ) π 2 ( 0 ) ⋮ ⎦ ⎤
其中π i ( 0 ) \pi _{i}(0) π i ( 0 ) 表示时刻0 0 0 状态为i i i 的概率P ( X 0 = i ) P(X_{0}=i) P ( X 0 = i ) 。通常初始分布π i ( 0 ) \pi _{i}(0) π i ( 0 ) 这个向量只有一个分量是1 1 1 ,其余分量为0 0 0 ,表示马尔可夫链是从一个具体状态开始的。
马尔可夫链在时刻t t t 的状态分布,可以由在时刻t − 1 t-1 t − 1 的状态分布以及转移概率分布决定:
π ( t ) = P π ( t − 1 ) \pi (t)=P\pi (t-1) π ( t ) = P π ( t − 1 )
其中:
π i ( t ) = P ( X t = i ) = ∑ m P ( X t = i ∣ X t − 1 = m ) P ( X t − 1 = m ) = ∑ m p i m π m ( t − 1 ) \pi _{i}(t)=P(X_{t}=i)\\ =\sum_{m}P(X_{t}=i|X_{t-1}=m)P(X_{t-1}=m)\\ =\sum_{m}p_{im}\pi _{m}(t-1) π i ( t ) = P ( X t = i ) = m ∑ P ( X t = i ∣ X t − 1 = m ) P ( X t − 1 = m ) = m ∑ p im π m ( t − 1 )
马尔可夫链在时刻t t t 的状态分布,可以通过递推得到:
π ( t ) = P π ( t − 1 ) = P ( P π ( t − 2 ) ) = P 2 π ( t − 2 ) \pi (t)=P\pi (t-1)=P(P\pi (t-2))=P^{2}\pi (t-2) π ( t ) = P π ( t − 1 ) = P ( P π ( t − 2 )) = P 2 π ( t − 2 )
按照上述方式最终递推得到:
π ( t ) = P t π ( 0 ) \pi (t)=P^{t}\pi (0) π ( t ) = P t π ( 0 )
这里的递推式表明马尔可夫链的状态分布由初始分布 和转移概率 分布决定。
这里的P t P^{t} P t 称为t t t 步转移概率矩阵:
P i j t = P ( X t = i ∣ X 0 = j ) P^{t}_{ij}=P(X_{t}=i|X_{0}=j) P ij t = P ( X t = i ∣ X 0 = j )
3.Detail Balance
那么我们如何构造一个马氏链,使得它能收敛到平稳分布呢?Detail Balance,他是平稳分布的充分非必要条件(Detail Balance能推导到平稳分布,平稳分布不能推导到它)
Detail Balance:
p ( x ↦ x ∗ ) ⋅ π ( x ) = P ( x ∗ ↦ x ) ⋅ π ( x ∗ ) p\left(x \mapsto x^*\right) \cdot \pi(x)
= P\left(x^* \mapsto x\right) \cdot \pi\left(x^*\right) p ( x ↦ x ∗ ) ⋅ π ( x ) = P ( x ∗ ↦ x ) ⋅ π ( x ∗ )
其中:x ↦ x ∗ 为 x ∗ ∣ x x \mapsto x^*\;\;为\;\;x^*|x x ↦ x ∗ 为 x ∗ ∣ x
∫ p ( x ↦ x ∗ ) ⋅ π ( x ) d x = ∫ P ( x ∗ ↦ x ) ⋅ π ( x ∗ ) d x = π ( x ∗ ) ⋅ ∫ P ( x ∗ ↦ x ) d x ⏟ 1 = π ( x ∗ ) \begin{aligned}
& \int p\left(x \mapsto x^*\right) \cdot \pi(x) d x \\
&= \int P\left(x^* \mapsto x\right) \cdot \pi\left(x^*\right) d x{} \\
&=\pi\left(x^*\right) \cdot \underbrace{\int P\left(x^* \mapsto x\right) d x}_1 \\
&= \pi\left(x^*\right)
\end{aligned} ∫ p ( x ↦ x ∗ ) ⋅ π ( x ) d x = ∫ P ( x ∗ ↦ x ) ⋅ π ( x ∗ ) d x = π ( x ∗ ) ⋅ 1 ∫ P ( x ∗ ↦ x ) d x = π ( x ∗ )
五、马尔可夫链的性质
以下通过离散状态马尔可夫链介绍马尔可夫链的性质,可以推广到连续状态马尔可夫链。
1. 不可约
在状态空间S S S 中对于任意状态i , j ∈ S i,j\in S i , j ∈ S ,如果存在一个时刻t ( t > 0 ) t(t>0) t ( t > 0 ) 满足:
P ( X t = i ∣ X 0 = j ) > 0 P(X_{t}=i|X_{0}=j)> 0 P ( X t = i ∣ X 0 = j ) > 0
也就是说,时刻0 0 0 从状态j j j 出发,时刻t t t 到达状态i i i 的概率大于0 0 0 ,则称此马尔可夫链是不可约的(irreducible) ,否则称马尔可夫链是可约的(reducible) 。
直观上,一个不可约的马尔可夫链,从任意状态出发,当经过充分长时间后,可以到达任意状态。
举例:
不可约:
可约:
2. 非周期
在状态空间S S S 中对于任意状态i ∈ S i\in S i ∈ S ,如果时刻0 0 0 从状态i i i 出发,t t t 时刻返回状态的所有时间长{ t : P ( X t = i ∣ X 0 = i ) > 0 } \left \{t:P(X_{t}=i|X_{0}=i)> 0\right \} { t : P ( X t = i ∣ X 0 = i ) > 0 } 的最大公约数是1 1 1 ,则称此马尔可夫链是非周期的(aperiodic) ,否则称马尔可夫链是周期的(periodic) 。
直观上,一个非周期性的马尔可夫链,不存在一个状态,从这一个状态出发,再返回到这个状态时所经历的时间呈一定的周期性,也就是说非周期性的马尔可夫链的任何状态都不具有周期性。
举例:
非周期:
周期:
3. 正常返
对于任意状态 i , j ∈ S i, j \in S i , j ∈ S ,定义概率 p i j t p_{i j}^t p ij t 为时刻 0 从状态 j j j 出发,时刻 t t t 首次转移到状态 i i i 的概率,即 p i j t = P ( X t = i , X s ≠ i , s = 1 , 2 , ⋯ , t − 1 ∣ X 0 = j ) , t = 1 , 2 , ⋯ p_{i j}^t=P\left(X_t=i, X_s \neq i, s=1,2, \cdots, t-1 \mid X_0=j\right), t=1,2, \cdots p ij t = P ( X t = i , X s = i , s = 1 , 2 , ⋯ , t − 1 ∣ X 0 = j ) , t = 1 , 2 , ⋯ 。若对所有状态 i , j i, j i , j 都满足 lim t → ∞ p i j t > 0 \lim _{t \rightarrow \infty} p_{i j}^t>0 lim t → ∞ p ij t > 0 ,则称马尔可夫链是正常返的 (positive recurrent) 。
直观上,一个正常返的马尔可夫链,其中任意一个状态,从其他任意一个状态出发,当时间趋于无穷时,首次转移到这个状态的概率不为 0 。
定理:
不可约、非周期且正常返的马尔可夫链,有唯一平稳分布存在。
4.遍历定理
设有马尔可夫链 X = { X 0 , X 1 , ⋯ , X t , ⋯ } X=\left\{X_0, X_1, \cdots, X_t, \cdots\right\} X = { X 0 , X 1 , ⋯ , X t , ⋯ } ,若这个马尔可夫链是不可约、非周期且正常返的,则该马尔可夫链有唯一平稳分布 π = ( π 1 , π 2 , ⋯ ) T \pi=\left(\pi_1, \pi_2, \cdots\right)^T π = ( π 1 , π 2 , ⋯ ) T ,并且转移概率的极限分布是马尔可夫链的平稳分布:
lim t → ∞ P ( X t = i ∣ X 0 = j ) = π i , i = 1 , 2 , ⋯ , j = 1 , 2 , ⋯ \lim _{t \rightarrow \infty} P\left(X_t=i \mid X_0=j\right)=\pi_i, \quad i=1,2, \cdots, \quad j=1,2, \cdots t → ∞ lim P ( X t = i ∣ X 0 = j ) = π i , i = 1 , 2 , ⋯ , j = 1 , 2 , ⋯
也就是:
lim t → ∞ P ( X t = i ) = π i , i = 1 , 2 , ⋯ \lim_{t\rightarrow \infty }P(X_{t}=i)=\pi _{i},\; \; i=1,2,\cdots t → ∞ lim P ( X t = i ) = π i , i = 1 , 2 , ⋯
若 f ( X ) f(X) f ( X ) 是定义在状态空间上的函数, E π [ f ( X ) ] < ∞ E_\pi[f(X)]<\infty E π [ f ( X )] < ∞ ,则:
P { f ^ t → E π [ f ( X ) ] } = 1 P\left\{\hat{f}_t \rightarrow E_\pi[f(X)]\right\}=1 P { f ^ t → E π [ f ( X )] } = 1
这里:
f ^ t = 1 t ∑ s = 1 t f ( x s ) \hat{f}_t=\frac{1}{t} \sum_{s=1}^t f\left(x_s\right) f ^ t = t 1 s = 1 ∑ t f ( x s )
E π [ f ( X ) ] = ∑ i f ( i ) π i E_\pi[f(X)]=\sum_i f(i) \pi_i E π [ f ( X )] = ∑ i f ( i ) π i 是 f ( X ) f(X) f ( X ) 关于平稳分布 π = ( π 1 , π 2 , ⋯ ) T \pi=\left(\pi_1, \pi_2, \cdots\right)^T π = ( π 1 , π 2 , ⋯ ) T 的数学期望, P { f ^ t → E π [ f ( X ) ] } = 1 P\left\{\hat{f}_t \rightarrow E_\pi[f(X)]\right\}=1 P { f ^ t → E π [ f ( X )] } = 1 表示 f ^ t → E π [ f ( X ) ] , t → ∞ \hat{f}_t \rightarrow E_\pi[f(X)], t \rightarrow \infty f ^ t → E π [ f ( X )] , t → ∞ 几乎处处成立或以概率 1 成立。
遍历定理的直观解释: 满足相应条件的马尔可夫链,当时间趋于无穷时,马尔可夫链的状态分布趋近于平稳分布,随机变量的函数的样本均值 f ^ t \hat{f}_t f ^ t 以概率 1 收敛于该函数的数学期望 E π [ f ( X ) ] E_\pi[f(X)] E π [ f ( X )] 。
样本均值可以认为是时间均值,数学期望是空间均值。遍历定理表述了遍历性的含义:当时间趋于无穷时,时间均值等于空间均值。
遍历定理的三个条件:不可约、非周期、正常返,保证了当时间趋于无穷时达到任意一个状态的概率不为 0 。
理论上并不知道经过多少次迭代,马尔可夫链的状态分布才能接近平稳分布,在实际应用遍历定理时,取一个足够大的整数 m m m ,经过 m m m 次迭代之后认为状态分布就是平稳分布,这时计算从第 m + 1 m+1 m + 1 次迭代到第 n n n 次迭代的均值,即:
E π [ f ( X ) ] = 1 n − m ∑ i = m + 1 n f ( x i ) E_\pi[f(X)]=\frac{1}{n-m} \sum_{i=m+1}^n f\left(x_i\right) E π [ f ( X )] = n − m 1 i = m + 1 ∑ n f ( x i )
称为遍历均值。
5. 可逆马尔可夫链
对于任意状态i , j ∈ S i,j\in S i , j ∈ S ,对任意一个时刻t t t 满足:
P ( X t = i ∣ X t − 1 = j ) π j = P ( X t − 1 = j ∣ X t = i ) π i , i , j = 1 , 2 , ⋯ P(X_{t}=i|X_{t-1}=j)\pi _{j}=P(X_{t-1}=j|X_{t}=i)\pi _{i},\; \; i,j=1,2,\cdots P ( X t = i ∣ X t − 1 = j ) π j = P ( X t − 1 = j ∣ X t = i ) π i , i , j = 1 , 2 , ⋯
或简写为:
p i j π j = p j i π i , i , j = 1 , 2 , ⋯ p_{ij}\pi _{j}=p_{ji}\pi _{i},\; \; i,j=1,2,\cdots p ij π j = p ji π i , i , j = 1 , 2 , ⋯
则称此马尔可夫链为可逆马尔可夫链(reversible Markov chain) ,上式又被称作细致平衡方程(detailed balance equation) 。
直观上,如果有可逆马尔可夫链,那么以该马尔可夫链的平稳分布作为初始分布,进行随机状态转移,无论是面向过去还是面向未来,任何一个时刻的状态分布都是该平稳分布。
满足细致平衡方程的状态分布π \pi π 就是该马尔可夫链的平稳分布,即满足P π = π 。 P\pi=\pi。 P π = π 。
证明:
( P π ) i = ∑ j p i j π j = ∑ j p j i π i = π i ∑ j p j i ⏟ = 1 = π i , i = 1 , 2 , ⋯ (P\pi )_{i}=\sum _{j}p_{ij}\pi _{j}=\sum _{j}p_{ji}\pi _{i}=\pi _{i}\underset{=1}{\underbrace{\sum _{j}p_{ji}}}=\pi _{i},\; \; i=1,2,\cdots ( P π ) i = j ∑ p ij π j = j ∑ p ji π i = π i = 1 j ∑ p ji = π i , i = 1 , 2 , ⋯
该定理说明,可逆马尔可夫链一定有唯一平稳分布,给出了一个马尔可夫链有平稳分布的充分条件(不是必要条件)。也就是说,可逆马尔可夫链满足遍历定理的条件。
“开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 11 天,点击查看活动详情 ”