

1.隐马尔可夫模型#
隐马尔可夫模型主要解决三类问题:
- 评估问题:给定模型参数和观察序列,计算该观察序列的概率。
- 解码/预测问题:给定模型参数和观察序列,找到最可能的状态序列。
- 学习问题:给定观察序列,估计模型参数。
1.1前向算法#
用来解决评估问题,计算给定模型参数和观察序列的概率。联合概率可以表示为:
其中,是初始状态的概率,是状态转移概率的乘积,是观察概率的乘积。
就中文分词任务而言,代表BMES标签中的一个标签,代表中文的一个字。
1.2 维特比算法#
用来解决解码/预测问题,找到给定模型参数和观察序列的最可能的状态序列。维特比算法通过动态规划的方法,计算每个时间步的最优路径概率,并记录路径以便回溯。
对于[湿度为1、湿度为2、湿度为3]、[晴天、雨天、多云]的例子,维特比算法会计算每个时间步的最优路径概率,并最终找到最可能的天气序列。