自然语言处理之二:隐马尔科夫模型

来源:互联网 发布:淘宝代销退货 编辑:程序博客网 时间:2024/06/11 09:54

在谈最大熵马尔科夫模型之前,先熟悉一下隐马尔科夫模型

 

 

一个隐马尔可夫模型 (HMM) 是一个五元组:

 

(ΩX , ΩO, A, B, π )

 

其中:

 

  ΩX = {q1,...qN}:状态的有限集合

 

  ΩO = {v1,...,vM}:观察值的有限集合

 

  A = {aij},aij = p(Xt+1 = qj |Xt = qi):转移概率

 

  B = {bik},bik = p(Ot = vk | Xt = qi):输出概率

 

  π = {πi}, πi = p(X1 = qi):初始状态分布

 

 

问题1:给定观察序列O=O1,O2,…OT,以及模型  λ=(π, A, B),  如何计算P(O|λ)? 

问题2:给定观察序列O=O1,O2,…OT以及模型λ,如何选择一个对应的状态序列     S = q1,q2,…qT,使得S能够最为合理的解释观察序列O?即argmaxss∈Q|T|P(T,S|λ).

问题3:如何调整模型参数 λ=(π, A, B)  ,  使得P(O|λ)最大?  

 

1.对于第一个问题使用Forward-Backward过程来解决。

2.对于第二个问题使用Viterbi算法来解决

3.对于第三个问题使用Baum-Welsh来解决。

原创粉丝点击