Chapter 6. Hidden Markov and Maximum Entropy Models

来源:互联网 发布:学校网上缴费软件 编辑:程序博客网 时间:2024/05/01 12:06

Chapter 6. Hidden Markov and Maximum Entropy Models

这篇文章是我在看 Speech and Language Processing
An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition 时,写的一些笔记。如果你也在看这本书,希望下面我所写的关于这一章的小结能对你理解此书产生一点帮助。

1 马尔可夫链 Markov Chain

首先 要明确马尔科夫链的定义:
马尔可夫链其实就是一个我们熟悉的有限状态自动机的变种,在转移的边上添加上了概率权值,如下图:

正式定义看下面:
](./屏幕快照 2017-11-24 下午4.01.32.png![这里写图片描述

此外,马尔可夫链有一个非常重要的假设。在一阶马尔可夫链(first-order Markov chain)中,下一状态的概率分布只由当前状态决定,即是说,

P(qi|qi1...q1)=P(qi|qi1)

2 隐含马尔可夫模型-HMM

注意到,马尔可夫链中的转移概率矩阵,以及状态等都是确定的,已知的,因而马尔可夫链是确定的,我们从最初的状态开始能确定 t时刻下 状态q 的概率分布。而隐含马尔可夫模型,简单来说就是在马尔可夫链的基础上增加未知变量而得的一个模型。
HMM 的形式化定义

冰淇淋的例子

书中给出的形式化定义,或许不太好一下子理解,但书中举的那个关于冰淇淋的例子,对理解这一定义有很大的帮助,建议看定义的时候,对应着那个例子的图来看,并去找到定义中对应在例子图中的部分,相信你很快就能明白这个定义的意义。

之后是提及隐含马尔可夫模型的三类基本问题:

  • 1 Computing Likelihood:Given an HMM λ = (A,B) and an observation sequence O, determine the likelihood P(O|λ).

即马尔可夫模型的参数已知,A:转移概率矩阵,B:读一下上面定义,每个状态下关于 observations 的概率分布已知.即上图 冰淇淋例子中的 B1,B2已知。

  • 2 Decoding:Given an observation sequence O and an HMM λ = (A, B), discover the best hidden state sequence Q.

照着第一个的来理解,之后的小节会有例子具体讲,到时再具体理解也行。

  • 3 Learning:Given an observation sequence O and the set of states in the HMM, learn the HMM parameters A and B.

模型的参数未知,需要学习 HMM 的参数。
之后详细介绍这三类问题及其求解方法。

3 Computing Likelihood: The Forward Algorithm

这部分挺好理解,作者解释得太好了,只要你只字不差地阅读,相信不会有什么问题。注意到,提出 The Forward Algorithm 的原因,(算法就是为了加快问题求解速度的) 依次计算不同的状态下的(observation) 3 1 3 的概率然后累加得到结果,这一过程的计算复杂度太高了。而 the forward algorithm 计算复杂度更低的原因在于:他利用了求解不同状态下3 1 3 概率这一过程的公共部分,公共部分只要计算一次,之后用就好了,在图中很容易就能看出来。

For an HMM with N hidden states and an observation sequence of T observations, there are N T possible hidden sequences.

the forward algorithm. O(N2T)

这里写图片描述

未完待续。

原创粉丝点击