HMM_Forward_Backward
算法原理简述:
本篇博客主要是介绍隐马尔科夫算法中在给定A,B,PI参数的情况下,计算观测序列出现概率的算法。主要包括了前向算法和后向算法。
其中前向算法主要是定义函数alpha(t, i),表示在t时刻,其处在状态i,且(t1,t2,…t)的观测序列为(o1, o2,…)的概率;而后通过递推式,利用动态规划的方法来计算即可。
后向算法是定义函数beta(t, i);表示在t时刻处在状态i,且(t+1, t+2,…T)的观测序列为(o(t+1), o(t+2),…o(T))的概率;也是通过递归公式和动态规划的思想来实现计算过程。
代码如下:
|
|
代码结果:
通过与李航老师书本的结果比较可以知道算法的正确性。