HMM杂记

来源:互联网 发布:开个网络棋牌多少钱 编辑:程序博客网 时间:2024/04/24 01:53

在接触了GMM之后, 选择将HMM进行了了解,网上的基础资料还是挺多的!

http://blog.csdn.net/likelet/article/details/7056068这篇博文就基本说全了整个过程!

HMM主要是:评估,解码,学习,这三个问题!

评估:已知:多个HMM,and 观察的序列O,通过计算模型对O的概率大小来选取或者评估这个模型的好坏,在做出取舍!用到的算法就是前像算法forward algorithm,其中要注意就是初始状态的选取Pi,其中的好坏的总概率是通过各种state求和之后再时间序列上求积或者求和!

解码:已知:已经选择适当的HMM,and 观察的序列O,通过求取对于O概率最大的路径,将潜藏的state解出,这就是解码!用到的技巧就是用指向前项的指针将相邻时间序列相互关联最大的state连接起来!

学习:已知:state的类别个数,and观察的序列O,使用EM和梯度下降及动态规划的思想,引入后向算法backward algorithm,采用前向-后向算法,迭代求取合适HMM参数。需要注意的是t=1,T,及序列的首尾,一定认真选取首末状态,和清楚各个矩阵的各维度的意义,后面迭代公式的意义更要清楚了! 这也是最重要的!

总结:有人说有其他的实现方式,没有了解,不能说!数学原理还是比较费劲,当然应用的选取就是很重要的了,52nlp当中有例子可以参考!

0 0