HMMs -- Markov Chains, HMMs(14)

ZaynPei Lv6

之前的贝叶斯网络(如警报系统)处理的是一个“快照”式的静态世界。而现实世界是不断变化的,比如天气、股票价格、机器人的位置等等。马尔可夫模型就是用来描述这种随时间演化的随机过程的经典工具。

马尔可夫模型可以被看作是一种链式的、无限长的贝叶斯网络。它专注于表示变量在时间维度上的依赖关系。现在我们从处理静态的、一次性的概率问题,转变为处理动态的、随时间演化的概率问题中。

马尔可夫模型 (Markov Models)

一个马尔科夫过程是指状态间的转移仅依赖于前n个状态的过程。这个过程被称之为n阶马尔科夫模型,其中n是影响下一个状态选择的(前)n个状态。最简单的马尔科夫过程是一阶模型,它的状态选择仅与前一个状态有关。

这里要注意它与确定性系统并不相同,因为下一个状态的选择由相应的概率决定,并不是确定性的。

在下面的内容中, 我们用一个一阶马尔可夫模型来描述一个随时间变化的状态序列。我们用一系列带时间戳的随机变量来表示状态,如 W0, W1, W2, ...,其中 假设Wi 代表第 i 天的天气。

根据一阶马尔科夫性质, 未来的状态只依赖于当前状态,而与过去的所有状态都无关。这也被称为“无记忆性 (memoryless property)”。数学表示为:P(Wi + 1|Wi, Wi − 1, ..., W0) = P(Wi + 1|Wi)

直观理解:要知道明天的天气,我只需要知道今天的天气就够了,昨天、前天的天气信息对于预测明天不再提供额外帮助。

我们要研究的模型的组成部分:

  • 初始分布 (Initial Distribution):P(W0),描述了在时间起点(第0天)时,系统处于各个状态的概率。

  • 转移模型 (Transition Model):P(Wi + 1|Wi),描述了从一个状态转移到下一个状态的概率。

  • 平稳性假设 (Stationary Assumption):通常我们假设转移模型是不随时间变化的。也就是说,从“晴天”到“雨天”的概率,无论是今天到明天,还是明年到后年,都是一样的。这个假设使得我们只需要一张转移概率表就可以描述整个无限长的过程。

在这样的情景下, 联合概率计算变为为:

这个公式再次体现了紧凑表示的威力。我们只需要初始分布一张转移表,就可以计算任意长度序列的概率,而不需要一个指数级大小的联合分布表。

迷你前向算法 (The Mini-Forward Algorithm)

这是在马尔可夫模型中进行时间推断 (Temporal Inference) 的基础算法。它的目标是计算在未来某个时间点 t,系统处于各个状态的概率分布 P(Wt)。其核心思想为:通过迭代的方式,一步步地将概率分布“向前推进”。

递推公式:P(Wt + 1) = ∑wtP(Wt + 1|wt)P(wt)

首先, 我们从已知的初始分布 P(W0) 开始。利用上面的公式,我们可以计算出 P(W1)。然后,再用刚刚算出的 P(W1) 作为输入,计算出 P(W2)。以此类推,直到我们计算出所需时间点的概率分布。

稳态分布 (Stationary Distribution)

一个自然的问题是:随着时间无限推移,这个系统最终会达到一个什么样的状态?这个最终的、不再变化的概率分布就是稳态分布。

其定义如下: 一个概率分布 P(W) 是稳态的,如果它在经过一次时间转移后保持不变。

其数学表示为:P(Wt + 1) = P(Wt)

利用稳态分布, 我们可以将稳态的定义代入迷你前向算法的递推公式中,得到一个关于未知稳态概率的方程组, 此时结合概率分布和为1的基本约束, 往往就能解出这个稳态概率的值。