马尔科夫链
在 马尔科夫及其有关的随机过程 中我们介绍过马尔科夫过程,其区别就是时间是否是离散的。整体分类可以见下面表格。
| 可数或有限的状态空间 | 连续或一般的状态空间 |
|---|
| 离散时间 | 在可数且有限状态空间下的马尔可夫链 | Harris chain (在一般状态空间下的马尔可夫链) |
| 连续时间 | Continuous-time Markov process | 任何具备马尔可夫性质的连续随机过程,例如维纳过程 |
马尔可夫链假设某一时刻状态转移的概率只依赖于它的前一个状态。
=P(Xt+1=j∣X0=k0,…Xt−1=kt−1,Xt=i)P(Xt+1=j∣Xt=i)=pij,t=0,1,…,k0,…,kt−1,i,j∈S
则矩阵 P=(pij)m×m 为转移概率矩阵。显然有 ∑j=1mpij=1,i=1,2,…,m。
如果我们给定状态空间为 {s0,s1,s2} 三种状态。并给定有转移概率矩阵:
P=0.60.300.20.40.30.20.30.7假设初始状态分别为 [0.1,0.2,0.7] 。我们模拟一下直到 t=100 时状态概率。
可以看到最后的状态概率收敛到一个固定值,我们尝试进行多次,初始不同的状态概率。

可以看到同样收敛到了一个固定值。
也就是说马尔科夫链模型的状态转移矩阵收敛到的稳定概率分布与初始状态概率分布无关。也就是说,如果我们得到了这个稳定概率分布对应的马尔科夫链模型的状态转移矩阵,则我们可以用任意的概率分布样本开始,带入马尔科夫链模型的状态转移矩阵,这样经过一些序列的转换,最终就可以得到符合对应稳定概率分布的样本。
用数学语言来描述就是
如果一个非周期的马尔科夫有状态转移矩阵 P,并且他的任何两个状态是连通的,那么 limn→∞Pijn 与初始点 i 无关。我们有
n→∞limPijn=π(j)
对于马式链
P(Xt+k=j∣Xt=i)=pij(k),为
k 步转移概率
n→∞limPn=π(1)π(1)⋮π(1)⋮π(2)π(2)⋮π(2)⋮⋯⋯⋮⋯⋮π(j)π(j)⋱π(j)⋱⋯⋯⋮⋯⋮
π(j)=i=0∑mπ(i)Pij
P(Xn+1=j)=i=0∑∞P(Xn=i)P(Xn+1=j∣Xn=i)=i=0∑∞P(Xn=i)Pij然后两边取极限,实际上就是在描述极限状况下,任意状态的概率为所有概率转换到该状态的概率和
π 是 πP=π 唯一非负解,π=[π(1),π(2),⋯,π(j),⋯],并且有 ∑i=1∞π(i)=1,π 被称为马氏链的平稳分布。
马尔科夫链采样
如果我们知道转移概率矩阵,则我们可以非常方便的采样得到平稳分布的样本集。
- 输入马尔科夫链状态转移矩阵 P,