1 马尔可夫链
马尔科夫链(Markov Chain)是一种数学模型,它描述了一系列可能事件的概率,其中每个事件的发生仅依赖于前一个事件的状态。这一特性称为“无记忆性”或“马尔可夫性质”。我将用一个简单的天气预测模型作为例子来解释马尔科夫链。
1.1 天气预测模型
假设我们有一个非常简化的天气系统,它只包含两种状态:晴天(Sunny)和雨天(Rainy)。我们用马尔可夫链来预测明天的天气,依据只有今天的天气状况。这里的状态就是指天气的情况(即晴天或雨天)。
我们需要定义的是状态转移概率,即今天天气状况下,明天天气变化的概率。转移概率可以用以下的矩阵表示:
| 当前\明天 | 晴天(S) | 雨天(R) |
| ------------- | -------------- | -------------- |
| 晴天(S)|. 0.9 | 0.1 |
| 雨天(R) | 0.5 | 0.5 |
这个转移概率矩阵可以这样理解:
如果今天是晴天(S),那么明天继续是晴天的概率是90%(0.9),变为雨天的概率是10%(0.1)。
如果今天是雨天(R),那么明天变成晴天的概率是50%(0.5),继续是雨天的概率也是50%(0.5)。
这个模型就是一个简单的马尔可夫链示例。在这个模型中,我们假设天气的变化仅依赖于当前的天气状态,并不依赖于更早以前的天气情况。这就是所谓的 无记忆性 或 马尔可夫性质。
1.2 更复杂的天气预测模型
这个马尔科夫链模型是一个关于天气状态的简单示例。在这个模型中,每天的天气可以是晴天(Sun)、多云(Cloudy)或雨天(Rain)。状态转移图显示了每种天气状态转换到另一种状态的概率。这些概率表示在给定今天的天气情况下,明天天气状况的可能性。
让我们更详细地分析这个模型:
1. 晴朗(Sun)状态开始的转移概率:
- 有50%的概率明天仍然是晴朗。
- 有20%的概率明天会变多云。
- 有30%的概率明天会下雨。
2. 多云(Cloudy)状态开始的转移概率:
- 有20%的概率明天会变晴朗。
- 有10%的概率明天会下雨。
- 根据马尔科夫链的性质,多云状态变为其他两个状态的总概率是30%(0.2+0.1),这意味着保持多云状态的概率是70%(1-0.3)。
3. 雨天(Rain)状态开始的转移概率:
- 有60%的概率明天会变晴朗。
- 有30%的概率明天会变多云。
- 有10%的概率明天继续下雨。
基于上述信息,我们可以写出这个马尔科夫链的转移矩阵。转移矩阵通常是方形的,行和列分别代表当前状态和下一个状态,矩阵中的每个元素表示相应的转移概率。
对于我们的天气模型,转移矩阵如下:
| 当前\明天 | 晴朗(S) | 多云(C) | 雨天(R) |
| -------------- | ------------- | --------------- | -------------- |
| 晴朗(S) | 0.5 | 0.2 | 0.3 |
| 多云(C) | 0.2 | 0.7 | 0.1 |
| 雨天(R) | 0.6 | 0.3 | 0.1 |
在这个矩阵中,行代表当前的天气状态,列代表明天可能的天气状态。每个单元格中的数字代表从行状态转移到列状态的概率。例如,矩阵中的第一行表示如果今天是晴天,那么明天有50%的概率还是晴天,20%的概率变为多云,30%的概率下雨。
无记忆性:马尔科夫链的一个关键特性是“无记忆性”,即明天的天气只依赖于今天的天气状态,而与过去的天气状态无关。
转移矩阵的每一行之和必须为1:因为概率必须覆盖所有可能的未来状态,所以每一行的概率加起来必须等于100%。
时间齐次性:在这个模型中,转移概率不随时间变化,即它们是恒定的。