马尔科夫模型----三

来源:互联网 发布:js循环30除7 编辑:程序博客网 时间:2024/06/05 01:02

前言

上一节我们已经介绍了马尔可夫模型三个基本问题中的第一个问题:概率计算问题,介绍了三种解决方法:直接计算(暴力法)法、前向计算法、后向计算法,忘记的同学可以点击这里回顾一下。z这一节我们将介绍三个基本问题中的第二个问题:学习问题。

  首先我们再把问题陈述一下:已知观测序列,估计模型参数,使得在该模型下观测序列概率最大,即用极大似然估计的方法估计参数。

    例如:知道骰子有几种(隐含状态数量),不知道每种骰子是什么(转换概率),观测到很多次掷骰子的结果(可见状态链),我想反推出每种骰子是什么(转换概率)。    这个问题很重要,因为这是最常见的情况。很多时候我们只有可见结果,不知道HMM模型里的参数,我们需要从可见结果估我们需要从可见结果估计出这些参数,这是建模的一个必要步骤。

  隐马尔可夫模型的学习,根据训练数据是包括观测序列和对应的状态序列还是只有观测序列,可以分别由监督学习与非监督学习实现。本节首先介绍简单的学习:监督学习,而后介绍非监督学习。

监督学习方法

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

这里写图片描述

这里写图片描述

非监督学习算法—Baum-Welch算法

  假设给定训练数据只包括S个长度为T的观测序列而没有对应的状态序列,目标是学习隐马尔可夫模型的参数。我们将观测序列数据看作观测数据O,状态序列数据看作不可观测的隐藏数据I,那么隐马尔可夫模型事实上是一个含有隐变量的概率模型
  


它的参数学习可以由EM算法实现。

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

Baum-Welch算法

这里写图片描述
这里写图片描述

  本节的主要内容来自于书上的介绍,因为一些原理在讲解EM算法的时候我们已经讲过了,在这里的学习过程和EM算法的学习过程是一致的,所以没有继续深入讲解,如果不明白的可以看一下EM算法的内容。
  本节完。

原创粉丝点击