隐马尔可夫模型
马尔可夫模型
- 马尔可夫模型描述了什么?
马尔可夫模型描述了一个每个随机变量的值都依赖于这个序列的前面的状态的随机过程。
通常所说的马尔可夫模型是离散的一阶马尔科夫链,指的是系统在时间t下的状态,只与其在时间t-1时的状态有关系。
用数学关系式来描述就是:P(qt=sj∣qt−1=si)=aijP(q_t=s_j|q_{t-1}=s_i)=a_{ij}P(qt=sj∣qt−1=si)=aij
这里的aija_{ij}aij称之为状态转移概率。
马尔可夫模型可以视作转移弧上有概率的非确定性的有限自动机。 - 语言模型和马尔可夫模型之间的关系?
n元语言模型就是n-1阶马尔可夫模型。
隐马尔科夫模型
- 隐马尔科夫模型是什么?与马尔科夫模型有什么区别?
隐马尔可夫模型与马尔可夫模型的核心区别在于,后者可以观察到状态序列,而前者只能够观察到由状态发射的符号,然后再根据符号发射的概率去反推状态,换句话说,观察到的事件是状态随机函数。 - 隐马尔可夫模型的数学描述。
一个HMM用一个五元组表示:μ=(S,K,A,B,π)\mu=(S,K,A,B,\pi)μ=(S,K,A,B,π)
其中,S表示状态集合;K表示输出符号的集合;A为状态转移概率矩阵,有P(qt=sj∣qt−1=si)=aijP(q_t=s_j|q_{t-1}=s_i)=a_{ij}P(qt=sj∣qt−1=si)=aij;B是状态发射符号的概率分布矩阵;π\piπ是初始状态的概率分布。 - 隐马尔科夫模型的基本问题或者说是应用场合。
- 给定观察序列和模型,估计观察到该序列的概率。
- 给定观察序列和模型,选择概率最高的状态序列来解释观察序列。
- 给定观察序列,如何确定模型的参数值。
Q1 前后向算法以及参数估计
基础思路
符号表示
π\piπ表示初始分布;bj(k)b_j(k)bj(k)表示由状态qjq_jqj发射出符号oko_kok的概率;aqiqja_{q_iq_j}aqiqj表示由状态qiq_iqi转移到状态qjq_jqj的概率
公式推导
P(O∣μ)=∑QP(O,Q∣μ)=∑QP(O∣Q,μ)P(Q∣μ)P(O|\mu)=\sum_QP(O,Q|\mu)=\sum_QP(O|Q,\mu)P(Q|\mu)P(O∣μ)=∑