马尔可夫过程(一)详细版

马尔可夫过程(一)

马尔可夫链的定义

马尔可夫链(Markov Chain)是一个具有马尔可夫性的随机过程。这意味着,对于一个给定的随机过程,它的未来状态只依赖于当前状态,而与过去的状态无关。具体地说,如果我们有一个状态序列 { X 0 , X 1 , X 2 , …   } \{X_0, X_1, X_2, \dots\} {X0,X1,X2,},那么这个序列满足:

P ( X n + 1 = x n + 1 ∣ X n = x n , X n − 1 = x n − 1 , … , X 0 = x 0 ) = P ( X n + 1 = x n + 1 ∣ X n = x n ) P(X_{n+1} = x_{n+1} \mid X_n = x_n, X_{n-1} = x_{n-1}, \dots, X_0 = x_0) = P(X_{n+1} = x_{n+1} \mid X_n = x_n) P(Xn+1=xn+1Xn=xn,Xn1=xn1,,X0=x0)=P(Xn+1=xn+1Xn=xn)

这意味着只要知道当前状态 X n X_n Xn,就可以预测下一个状态 X n + 1 X_{n+1} Xn+1,而无需知道之前的状态。

时间齐次性(Time Homogeneity)

一个马尔可夫链如果是时间齐次的,那么它的转移概率不随时间变化。这意味着从状态 i i i 转移到状态 j j j 的概率 P ( X n + 1 = j ∣ X n = i ) P(X_{n+1} = j \mid X_n = i) P(Xn+1=jXn=i) 在不同的时间步长 n 上都是相同的。

形式化地,如果马尔可夫链是时间齐次的,那么对于任意的时间步长 n 和 m,有:
P ( X n + 1 = j ∣ X n = i ) = P ( X m + 1 = j ∣ X m = i ) P(X_{n+1} = j \mid X_n = i) = P(X_{m+1} = j \mid X_m = i) P(Xn+1=jXn=i)=P(Xm+1=jXm=i)

这种情况下,我们可以用一个固定的转移概率矩阵 P 来表示这个马尔可夫链,其中矩阵 P P P 的元素 P i j P_{ij} Pij 表示从状态 i i i 转移到状态 j j j 的概率,即:
P i j = P ( X n + 1 = j ∣ X n = i ) P_{ij} = P(X_{n+1} = j \mid X_n = i) Pij=P(Xn+1=jXn=i)

一步转移概率(One-step Transition Probability)

一步转移概率 是指在一个时间步长内,马尔可夫链从一个状态转移到另一个状态的概率。对于一个时间齐次的马尔可夫链,从状态 i i i 转移到状态 j j j 的一步转移概率 P i j P_{ij} Pij 可以表示为:
P i j = P ( X n + 1 = j ∣ X n = i ) P_{ij} = P(X_{n+1} = j \mid X_n = i) Pij=P(Xn+1=jXn=i)
这一步转移概率构成了整个马尔可夫链的转移概率矩阵 P P P,这个矩阵的每一行之和为1,因为从任意一个状态转移到所有可能状态的概率总和为1。
举例说明

  1. 假设我们有一个简单的天气模型,只有两种天气状态:晴天(Sunny, S S S)和雨天(Rainy, R R R)。我们用一个马尔可夫链来描述天气的变化,其中的转移概率矩阵 P P P 可能如下:
    P = ( 0.8 0.2 0.4 0.6 ) P = \begin{pmatrix} 0.8 & 0.2 \\ 0.4 & 0.6 \end{pmatrix} P=(0.80.40.20.6)

这里,矩阵中的 P S S = 0.8 P_{SS} = 0.8 PSS=0.8 表示如果今天是晴天,明天继续晴天的概率是0.8;而 P S R = 0.2 P_{SR} = 0.2 PSR=0.2 表示今天晴天,明天变成雨天的概率是0.2。类似地, P R S = 0.4 P_{RS} = 0.4 PRS=0.4 表示今天是雨天,明天变成晴天的概率是0.4。
在这个简单的例子中,我们可以看到马尔可夫链如何用一个转移概率矩阵来描述系统的演化,而只需关注当前状态,就可以预测下一状态,而无需了解更早的历史。

  1. 下图是一个具有 6 个状态的马尔可夫过程的简单例子。其中每个绿色圆圈表示一个状态,每个状态都有一定概率(包括概率为 0)转移到其他状态,其中 S 6 S_6 S6通常被称为终止状态(terminal state),因为它不会再转移到其他状态,可以理解为它永远以概率 1 转移到自己。状态之间的虚线箭头表示状态的转移,箭头旁的数字表示该状态转移发生的概率。从每个状态出发转移到其他状态的概率总和为 1。例如, S 1 S_1 S1有 90%概率保持不变,有 10%概率转移到 S 2 S_2 S2,而 S 2 S_2 S2在又有 50%概率回到 S 1 S_1 S1,有 50%概率转移到 S 3 S_3 S3

在这里插入图片描述
我们可以写出这个马尔可夫过程的状态转移矩阵: P = [ 0.9 0.1 0 0 0 0.5 0 0.5 0 0 0 0 0.6 0.4 0 0 0 0 0.3 0.7 0 0.2 0.3 0.5 0 0 0 0 0 1 ] P = \begin{bmatrix} 0.9 & 0.1 & 0 & 0 & 0 \\ 0.5 & 0 & 0.5 & 0 & 0 \\ 0 & 0 & 0.6 & 0.4 & 0 \\ 0 & 0 & 0 & 0.3 & 0.7 \\ 0 & 0.2 & 0.3 & 0.5 & 0 \\ 0 & 0 & 0 & 0 & 1 \end{bmatrix} P= 0.90.500000.10000.2000.50.600.30000.40.30.500000.701
其中每行表示从状态 i i i j j j的转移概率。
给定一个马尔可夫过程,我们可以从某个状态出发,根据已知的状态转移矩阵生成一种状态序列(episode),这个过程也被叫做采样(sampling)。例如,从状态 M 1 M_1 M1出发,可以生成序列 s 1 → s 2 → s 3 → s 6 → s 1 → s 2 → s 3 → s 4 → s 5 → s 3 → s 6 s_1 \rightarrow s_2 \rightarrow s_3 \rightarrow s_6 \rightarrow s_1 \rightarrow s_2 \rightarrow s_3 \rightarrow s_4 \rightarrow s_5 \rightarrow s_3 \rightarrow s_6 s1s2s3s6s1s2s3s4s5s3s6等。生成这些序列的概率和状态转移矩阵有关。

总结

  • 马尔可夫链 是一种随机过程,具有“无记忆性”,即未来只依赖当前,不依赖过去。
  • 时间齐次性 意味着转移概率不随时间变化,可以用固定的转移概率矩阵描述。
  • 一步转移概率 是指马尔可夫链在一个时间步内从一个状态转移到另一个状态的概率,通常用转移概率矩阵表示。

转移图(Transition Diagram)

一个均匀的有限马尔可夫链完全由其初始状态分布和其转移矩阵 S = [ p i j ] S = [p_{ij}] S=[pij] 定义,其中 p i j = P ( X 1 = i ∣ X 0 = j ) p_{ij} = P(X_1 = i \mid X_0 = j) pij=P(X1=iX0=j) 是从状态 j j j 到状态 i i i 的转移概率。
马尔可夫链的图形表示是一个转移图,这与其转移矩阵等效。
马尔可夫链 X X X 的转移图是一个单一的加权有向图,其中每个顶点代表马尔可夫链的一个状态,并且如果转移概率 p i j > 0 p_{ij} > 0 pij>0,则从顶点 j j j 到顶点 i i i 有一个有向边;这条边的权重/概率为 p i j p_{ij} pij

Example 1

一个马尔可夫链有状态 1, 2, 3, 4, 5 和 6,以下是其转移矩阵:

S = [ 0.4 0 0.3 0.3 0 0 0.5 0 0.5 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 ] S = \begin{bmatrix} 0.4 & 0 & 0.3 & 0.3 & 0&0 \\ 0.5 & 0 & 0.5 & 0 & 0&0 \\ 0 & 1 & 0 & 0 & 0&0 \\ 0 & 0 & 0 & 1 & 0 &0\\ 0 & 0 & 0 & 0 & 0&1 \\ 0 & 0 & 0 & 1 & 0&0 \\ \end{bmatrix} S= 0.40.500000010000.30.500000.300101000000000010
这是它的转移图。在图1中,每条边的概率显示在它旁边。例如,从状态 1 到状态 1 的循环概率为 0.4 = p 11 = P ( X 1 = 1 ∣ X 0 = 1 ) p_{11} = P(X_1 = 1 \mid X_0 = 1) p11=P(X1=1X0=1),从状态 2 到状态 3 的边的概率为 0.5 = p 32 = P ( X 1 = 3 ∣ X 0 = 2 ) p_{32} = P(X_1 = 3 \mid X_0 = 2) p32=P(X1=3X0=2)
Example 1 中的马尔可夫链的转移图
Example 1 中的马尔可夫链的转移图
在图形术语中,一个长度为 n 的边序列是一个有序的边集合 e 1 , e 2 , . . . , e n e_1, e_2, ..., e_n e1,e2,...,en,其中 e i e_i ei e i + 1 e_{i+1} ei+1 对于所有 i = 1, 2, …, n-1 都是相邻的。
一条路径是一个边序列,其中所有边都是不同的。路径可以有相同的起点和终点顶点(除了可能的起点和终点顶点之外)。一个循环是一条简单的路径,其起始顶点和结束顶点是相同的。
在转移图中,边序列的概率等于其边概率的乘积。

N-Step 转移概率(Transition Probability )
n步转移概率定义为:
P i j ( n ) = P ( X n = i ∣ X 0 = i ) P_{ij}^{(n)}=P(X_n=i \mid X_0=i) Pij(n)=P(Xn=iX0=i)
它等于从状态 j j j到状态 i i i准确地在n步内到达的概率。它可以通过矩阵 S ( n ) S^{(n)} S(n)的相应元素来计算,但通常从转移图中找到这个概率更简单,作为从 j j j i i i长度为 n n n的所有边序列概率的总和。

Example 2

在 Example 1 的链中,从 2 到 1 的三步转移概率为:
在这里插入图片描述

p 12 ( 3 ) = a 1 + a 2 p_{12}^{(3)} = a_1 + a_2 p12(3)=a1+a2

其中:

  • a 1 = 0.5 × 1 × 0.5 = 0.25 a_1 = 0.5 \times 1 \times 0.5 = 0.25 a1=0.5×1×0.5=0.25 是路径 2321 的概率
  • a 2 = 0.5 × 0. 4 2 = 0.08 a_2 = 0.5 \times 0.4^2 = 0.08 a2=0.5×0.42=0.08 是边序列 2111 的概率

这些概率从图 1 中很容易找到。因此:
p 12 ( 3 ) = 0.25 + 0.08 = 0.33 。 p_{12}^{(3)} = 0.25 + 0.08 = 0.33。 p12(3)=0.25+0.08=0.33

Probability of Visiting a State for the First Time

让我们考虑一个随机变量:
T i = min ⁡ { n ≥ 1 : X n = i } . T_i = \min \{n \geq 1 : X_n = i\}. Ti=min{n1:Xn=i}.
它表示第一次访问状态 i 所需的步数。这被称为状态 i i i 的首次通过时间。相关概率是:
f i j ( m ) = P ( T i = m ∣ X 0 = j ) f_{ij}^{(m)} = P(T_i = m \mid X_0 = j) fij(m)=P(Ti=mX0=j) f i j = P ( T i < ∞ ∣ X 0 = j ) f_{ij} = P(T_i < \infty \mid X_0 = j) fij=P(Ti<X0=j)
显然:
f i j = ∑ m = 1 ∞ f i j ( m ) f_{ij} = \sum_{m=1}^{\infty} f_{ij}^{(m)} fij=m=1fij(m)
这些概率可以解释如下:

  • f i j ( m ) f_{ij}^{(m)} fij(m) 是从 j j j 开始,在第 m m m 步第一次访问 i i i 的概率;
  • f i j f_{ij} fij 是从 j j j 开始,以有限步数访问 i i i 的概率。
    在转移图的术语中, f i j f_{ij} fij 等于从 j j j i i i 的所有边序列的概率总和,这些序列在起点和终点之间不包括顶点 i i i f i j ( m ) f_{ij}^{(m)} fij(m) 对应于仅长度为 m m m 的边序列的类似总和。
    对于有限马尔可夫链,这些概率从它们的转移图中找到比其他方法更容易。

Example3
从图 1 的转移图中,我们可以计算以下概率:
在这里插入图片描述

  • f 64 ( 2 ) = 1 f_{64}^{(2)} = 1 f64(2)=1 作为路径 456 的概率;
  • f 64 ( n ) = 0 f_{64}^{(n)} = 0 f64(n)=0 对于 n ≠ 2 n \neq 2 n=2 f 64 = 1 f_{64} = 1 f64=1

对于顶点 1 和 2 我们有:

  • f 21 ( 1 ) = 0 f_{21}^{(1)} = 0 f21(1)=0
  • f 21 ( 2 ) = 0.3 f_{21}^{(2)} = 0.3 f21(2)=0.3 作为路径 132 的概率;
  • f 21 ( 3 ) = 0.4 × 0.3 = 0.12 f_{21}^{(3)} = 0.4 \times 0.3 = 0.12 f21(3)=0.4×0.3=0.12 作为路径 1132 的概率;
  • 并且通常,对于任何 n ≥ 0 n \geq 0 n0 f 21 ( n + 2 ) = 0. 4 n × 0.3 f_{21}^{(n+2)} = 0.4^n \times 0.3 f21(n+2)=0.4n×0.3 作为边序列 1…132( n + 1 n+1 n+1次)环绕 1 的概率。
    因此:
    f 21 = ∑ m = 1 ∞ f 21 ( m ) = ∑ n = 0 ∞ 0. 4 n × 0.3 = 0.3 × 1 1 − 0.4 = 0.5 。 f_{21} = \sum_{m=1}^{\infty} f_{21}^{(m)} = \sum_{n=0}^{\infty} 0.4^n \times 0.3 = 0.3 \times \frac{1}{1 - 0.4} = 0.5。 f21=m=1f21(m)=n=00.4n×0.3=0.3×10.41=0.5

持久态和暂态(Persistent and Transient States )

马尔可夫链中的一个状态 i i i 被称为持久态如果 f i i = 1 f_{ii} = 1 fii=1,否则称为暂态。
因此,如果链从一个持久态开始,它几乎肯定会返回到这个状态。如果链从一个暂态开始,存在一个正概率永远不返回到这个状态。通过转移图,我们可以评估概率 f i i f_{ii} fii,从而确定状态 i i i 是持久的还是暂态的。

Example 4
对于例 1 中马尔可夫链的每个状态 1 和 4,确定该状态是持续状态还是短暂状态。
解答

  • f 44 = f 44 ( 3 ) = 1 f_{44} = f_{44}^{(3)} = 1 f44=f44(3)=1 作为循环 456 的概率。因此状态 4 是持久的。
  • f 11 ( 1 ) = 0.4 f_{11}^{(1)} = 0.4 f11(1)=0.4 作为围绕状态 1 的循环的概率。
  • f 11 ( 2 ) = 0 f_{11}^{(2)} = 0 f11(2)=0
  • f 11 ( 3 ) = 0.3 × 1 × 0.5 = 0.15 f_{11}^{(3)} = 0.3 \times 1 \times 0.5 = 0.15 f11(3)=0.3×1×0.5=0.15 作为循环 1321 的概率。
    更一般地,对于任何 n ≥ 1 n \geq 1 n1
    f 11 ( 2 n ) = 0 f_{11}^{(2n)} = 0 f11(2n)=0
  • f 11 ( 2 n + 1 ) = 0.3 × 0. 5 n f_{11}^{(2n+1)} = 0.3 \times 0.5^n f11(2n+1)=0.3×0.5n 作为边序列 1 32…32 1 ( n n n 次)的概率。
    因此:
    f 11 = ∑ m = 1 ∞ f 11 ( m ) = 0.4 + 0.3 × ∑ n = 1 ∞ 0. 5 n = 0.4 + 0.3 × 0.5 1 − 0.5 = 0.7 f_{11} = \sum_{m=1}^{\infty} f_{11}^{(m)} = 0.4 + 0.3 \times \sum_{n=1}^{\infty} 0.5^n = 0.4 + 0.3 \times \frac{0.5}{1-0.5} = 0.7 f11=m=1f11(m)=0.4+0.3×n=10.5n=0.4+0.3×10.50.5=0.7

由于 f 11 = 0.7 < 1 f_{11} = 0.7 < 1 f11=0.7<1,状态 1 是暂态的。

引理 1
假设 i i i j j j 是马尔可夫链中的两个不同状态。如果 p i j > 0 p_{ij} > 0 pij>0 并且 f i j = 0 f_{ij} = 0 fij=0,那么状态 i i i 是暂态的。□
这个引理可以很容易地从 f i j f_{ij} fij 的定义中推导出来。这个引理可以用转移图的术语来重新表述:如果链可以从状态 i i i 在一步内到达状态 j j j p i j ≥ 0 p_{ij} \geq 0 pij0)但不能回到状态 i i i f i j = 0 f_{ij} = 0 fij=0),那么状态 i i i 是暂态的。
引理 1 提供了一种不需要任何计算就能从转移图中找到暂态状态的方法。例如,从Example1的图片中我们可以看到 p 41 = 0.3 > 0 p_{41} = 0.3 > 0 p41=0.3>0 并且 f 14 = 0 f_{14} = 0 f14=0 因为链不能从状态 4 返回到状态 1。因此根据引理 1,状态 1 是暂态的。这与示例 4 的结果是一致的。

马尔可夫过程还有好多内容要讲,我们后续更新

### 关于马尔可夫链在计算机科学中的应用 #### 马尔可夫链简介 马尔可夫链是种随机过程,在该过程中下个状态仅依赖于当前状态而与过去的状态无关。这种特性被称为无记忆性或马尔可夫性质[^1]。 #### 计算机科学中的具体应用场景 ##### 中文分词 汉语不同于英语有明显的单词边界,因此自动处理中文文本时需要先进行分词操作。基于隐马尔可夫模型(Hidden Markov Model, HMM)的方法被广泛应用于此任务之中。通过构建字到词语的概率转换图谱并训练参数,可以高效准确地完成句子级别的切分工作[^3]。 ```python import pycantonese as pc from hmmlearn import hmm # 构建简单的HMM用于演示目的 model = hmm.MultinomialHMM(n_components=3) model.startprob_ = np.array([0.6, 0.3, 0.1]) model.transmat_ = np.array([[0.7, 0.2, 0.1], [0.3, 0.5, 0.2], [0.3, 0.3, 0.4]]) model.emissionprob_ = np.array([[0.5, 0.2, 0.3], [0.2, 0.6, 0.2], [0.4, 0.1, 0.5]]) X = [[0], [1], [0]] logprob, seq = model.decode(X, algorithm="viterbi") print(f"最可能的状态序列是 {seq}") ``` ##### 语音识别 对于连续音频流的数据解析同样适合采用类似的思路——即假设发声单元之间存在定的转移规律,并据此建立相应的声学模型来进行解码预测。这里不仅限于孤立词汇辨识还包括连贯话语理解等多个层面的任务解决[^2]。 ##### 自然语言生成 当涉及到创造性的自然语言生产活动比如聊天机器人回复创作或是诗歌自动生成的时候,也可以借助于马尔可夫链的思想去模拟人类说话习惯从而实现较为流畅的文字输出效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值