自然语言处理隐马尔可夫模型Ⅰ马尔可夫模型

Posted 不牌不改

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自然语言处理隐马尔可夫模型Ⅰ马尔可夫模型相关的知识,希望对你有一定的参考价值。

有任何的书写错误、排版错误、概念错误等,希望大家包含指正。

由于字数限制,分成六篇博客。
【自然语言处理】隐马尔可夫模型【Ⅰ】马尔可夫模型
【自然语言处理】隐马尔科夫模型【Ⅱ】隐马尔科夫模型概述
【自然语言处理隐马尔科夫模型【Ⅲ】估计问题
【自然语言处理】隐马尔科夫模型【Ⅳ】学习问题
【自然语言处理】隐马尔科夫模型【Ⅴ】解码问题
【自然语言处理】隐马尔科夫模型【Ⅵ】精度问题

1. 马尔可夫模型

在介绍隐马尔可夫模型之前,先来介绍马尔可夫模型。

我们知道,随机过程又称随机函数,是随时间而随机变化的过程。马尔可夫模型(Markov model)描述了一类重要的随机过程。我们常常需要考察一个随机变量序列,这些随机变量并不是相互独立的,每个随机变量的值依赖于这个序列前面的状态。如果一个系统有 N N N 个有限状态 Q = q 1 , q 2 , … , q N Q=\\q_1,q_2,\\dots,q_N\\ Q=q1,q2,,qN,那么随着时间的推移,该系统将从某一状态转移到另一状态。 S = s 1 , s 2 , … , s T S=\\s_1,s_2,\\dots,s_T\\ S=s1,s2,,sT 为一个随机变量序列,随机变量的取值为状态集 Q Q Q 中的某个状态,假定在时刻 t t t 的状态记为 s t s_t st。对该系统的描述通常需要给出当前时刻 t t t 的状态和其前面所有时刻状态的关系:系统在时刻 t t t 的状态 q j q_j qj 的概率取决于其在时刻 1 , 2 , … , t − 1 1,2,\\dots,t-1 1,2,,t1 的状态,该概率为
P ( s t = q j ∣ s t − 1 = q i , s t − 2 = q k , …   ) P(s_t = q_j\\mid s_t-1 = q_i,s_t-2=q_k,\\dots) P(st=qjst1=qi,st2=qk,)
如果在特定条件下,系统在时刻 t t t 的状态只与其在时刻 t − 1 t-1 t1 的状态相关,即
P ( s t = q j ∣ s t − 1 = q i , s t − 2 = q k , …   ) = P ( s t = q j ∣ s t − 1 = q i ) P(s_t = q_j\\mid s_t-1 = q_i,s_t-2=q_k,\\dots)=P(s_t = q_j\\mid s_t-1 = q_i) P(st=qjst1=qi,st2=qk,)=P(st=qjst1=qi)
则该系统构成一个离散的一阶马尔可夫链(Markov chain)。进一步,如果只考虑上式独立于时刻 t t t 的随机过程:
P ( s t = q j ∣ s t − 1 = q i ) = a i j ,      1 ≤ i , j ≤ N P(s_t = q_j\\mid s_t-1 = q_i)=a_ij,\\space\\space\\space\\space 1\\le i,j\\le N P(st=qjst1=qi)=aij,    1i,jN
该随机过程为马尔可夫模型。其中,状态转移概率 a i j a_ij aij 必须满足以下条件:
a i j ≥ 0 ∑ j = 1 N a i j = 1 a_ij\\ge 0 \\\\ \\sum_j=1^N a_ij=1 aij0j=1Naij=1
显然,有 N N N 个状态的一阶马尔可夫过程有 N 2 N^2 N2 次状态转移,其 N 2 N^2 N2 个状态转移概率可以表示成一个状态转移矩阵。例如,一段文字中名词、动词、形容词三类词性出现的情况可由三个状态的马尔可夫模型描述:

状态 q 1 q_1 q1 表示名词,状态 q 2 q_2 q2 表示动词,状态 q 3 q_3 q3 表示形容词。假设状态之间的转移矩阵如下:
A = [ a i j ] =    q 1    q 2    q 3 q 1 q 2 q 3 [ 0.3 0.5 0.2 0.5 0.3 0.2 0.4 0.2 0.4 ] A = [a_ij]=\\space\\space \\beginmatrix \\beginmatrix & q_1&\\space\\space q_2\\space\\space & q_3 \\endmatrix \\\\ \\beginmatrix q_1\\\\q_2\\\\q_3 \\endmatrix \\left[\\beginmatrix 0.3 & 0.5 & 0.2 \\\\ 0.5 & 0.3 & 0.2 \\\\ 0.4 & 0.2 & 0.4 \\\\ \\endmatrix \\right] \\endmatrix A=[aij]=  q1  q2  q3q1q2q30.30.50.4自然语言处理 | 隐马尔可夫模型

机器学习算法之——隐马尔可夫模型(Hidden Markov Models,HMM) 代码实现

隐马尔可夫模型

隐马尔可夫模型

医学中都有哪些问题可以用马尔科夫、隐马尔科夫、贝叶斯模型来建模?

隐马尔可夫(HMM)模型