隐马尔科夫学习七(四)

出处:http://www.52nlp.cn/hmm-learn-best-practices-seven-forward-backward-algorithm-4

七、前向-后向算法(Forward-backward algorithm)

  隐马尔科夫模型(HMM)的三个基本问题中,第三个HMM参数学习的问题是最难的,因为对于给定的观察序列O,没有任何一种方法可以精确地找到一组最优的隐马尔科夫模型参数(A、B、pi)使P(O|lamda)最大。因而,学者们退而求其次,不能使P(O|lamda)全局最优,就寻求使其局部最优(最大化)的解决方法,而前向-后向算法(又称之为Baum-Welch算法)就成了隐马尔科夫模型学习问题的一种替代(近似)解决方法。
  我们首先定义两个变量。给定观察序列O及隐马尔科夫模型lamda,定义t时刻位于隐藏状态Si的概率变量为:
        fb1
  回顾一下第二节中关于前向变量at(i)及后向变量Bt(i)的定义,我们可以很容易地将上式用前向、后向变量表示为:
   隐马尔科夫学习七(四)_第1张图片
  其中分母的作用是确保:fb3
  给定观察序列O及隐马尔科夫模型lamda,定义t时刻位于隐藏状态Si及t+1时刻位于隐藏状态Sj的概率变量为:
    fb4
  该变量在网格中所代表的关系如下图所示:
 隐马尔科夫学习七(四)_第2张图片
  同样,该变量也可以由前向、后向变量表示:
   隐马尔科夫学习七(四)_第3张图片
  而上述定义的两个变量间也存在着如下关系:
            fb7
  如果对于时间轴t上的所有fb10相加,我们可以得到一个总和,它可以被解释为从其他隐藏状态访问Si的期望值(网格中的所有时间的期望),或者,如果我们求和时不包括时间轴上的t=T时刻,那么它可以被解释为从隐藏状态Si出发的状态转移期望值。相似地,如果对fb11在时间轴t上求和(从t=1到t=T-1),那么该和可以被解释为从状态Si到状态Sj的状态转移期望值。即:
   fb8
   fb9

你可能感兴趣的:(语音识别,隐马尔科夫)