写点什么

从头开始(概率)学 HMM:精讲第二课 - 学习问题(BW 算法)

用户头像
herosunly
关注
发布于: 刚刚
从头开始(概率)学HMM:精讲第二课-学习问题(BW算法)

1. 简述

隐马尔可夫的学习问题,根据训练数据只有观测序列还是包含观测序列和状态序列,可以分别非监督学习与监督学习。

2. 监督学习方法

  假设已知训练数据包含 S 个长度相同的观测序列和对应的状态序列,那么可以利用极大似然估计来估计隐马尔可夫的模型参数


  • 转移概率的估计:设样本时刻 t 处于状态 i 时刻 t+1 处于状态 j 的频数为,那么状态转移概率的估计是:

  • 观测概率的估计:设样本中状态为 j 并观测为 k 的频数为,那么状态为 j 观测为 k 的概率的估计是

  • 初始状态概率的估计:为 S 个样本中初始状态为的频率。


  由于监督学习需要使用训练数据,而人工标注训练数据的代价很高,因此经常会适用非监督学习的方法

3. 非监督学习:Baum-Welch 算法

  Baum-Welch 算法简称 BW 算法,其核心是 EM 算法,因此本章需要具有 EM 知识。不过现在还不用掌握 EM,讲述过程中会说明何时去学 EM。


  假设给定训练数据只包含 S 个长度为 T 的观测序列,而没有对应的状态序列,目标是学习隐马尔可夫模型的。用 O 表示观测序列,用 I 表示状态序列。隐马尔可夫模型事实上是一个含有隐变量的概率模型:



  • 使用 EM 算法解决上述问题的步骤如下(暂时可先不掌握 EM):

  • 第一步:确定完全数据的对数似然函数

  • 观测数据,隐藏数据,完全数据。完全数据的对数似然函数是。如何理解对数似然函数的由来:

  • 变量的联合概率函数为

  • 极大似然函数说白了就是联合概率函数,只是我们在计算参数时,会把样本变量带进去。现在的联合概率函数为,因此完全数据的极大似然函数为

  • 第二步:EM 算法的 E 步:求 Q 函数

  • 到此也可以先不用管什么是 EM,先按照我们的流程走下去,至于什么是 Q 函数,怎么得来的,后面讲 EM 会详细说明。这里就先记住有 Q 函数及其公式表达。

  • Q 函数中的就是我们要求的参数,Q 函数中的是利用了迭代的思想。就像梯度下降一样,在第 i 步的时候,我们可以得到参数的一个估计值,然后求导,更新 i+1 步的参数值。这里的就是第 i 步(或者说当前步骤)参数的估计值,因此是已知量。

  • 。Q 函数定义如此,至于为什么这么定义,后续可在 EM 讲解时了解。

  • ①,推导见下:

  • 于是


  • 第三步:EM 算法的 M 步:极大化 Q 函数求模型参数,在已知某一步,如第 t 步值的情况下,最大化包含的 Q 函数,得到的估计值,相当于得到 t+1 的取值。由于要极大化的参数在式 ①中单独地出现在 3 个项中,所以只需要对各项分别最大化。

  • 式 ①的第一项(含有)可以写成:

注意到满足约束条件,利用拉格朗日乘子法,写出拉格朗日函数:

对其求偏导,并令结果为 0:

得到:

对 i 求和得到 gamma:

带入公式,得到:

至于是什么,本章最后的小结进行说明,下述求 A、B 的亦同。

式①的第二项,仅含有 A,与求 $\pi$的方法类似:


  • 第四步:上述过程求得了第 t+1 步的取值,因此可以根据前述方法继续求得第 t+2 步的

  • 第五步:终止条件:

- 方式 1:指定一共要递推多少步,如 n+1 步,因此在 n+1 步确定模型参数

- 对较小的正数,若满足 的含义在 EM 算法中有详细讲述,到此时,我们可以回过头看 EM 算法了,看看为什么该问题能转化成 Q 函数,Q 函数如何得到等。详见后续的 EM 算法详解。不过还是建议大家看完最后的总结。

4. 总结

- 上述其实还遗留了一个问题,即 t+1 步,得到的估计值仍然带有概率的形式,这里我们定义:

- ,详见后续的前后向算法。

- 详见前后向算法中的概率与期望值部分

- 详见前后向算法中的概率与期望值部分。



发布于: 刚刚阅读数: 2
用户头像

herosunly

关注

还未添加个人签名 2018.05.11 加入

还未添加个人简介

评论

发布
暂无评论
从头开始(概率)学HMM:精讲第二课-学习问题(BW算法)