隐马尔可夫模型
2008/09/03 16:44 [学习 ]
近在网上找到一个很好的介绍 HMM 的网站,是由一个 MSRA 的牛牛翻译的,看到之后就忍不住转过来了……
原文网址:http://www.comp.leeds.ac.uk/roger/HiddenMarkovModels/html_dev/main.html
网站内容言简意赅深入浅出,特别介绍了在一阶 HMM 模型下的两个常用算法:Viterbi algorithm 和
Forward-Backward Algorithm。
小实验程序:
http://www.comp.leeds.ac.uk/roger/HiddenMarkovModels/html_dev/viterbi_algorithm/s3_p
g3.html
Viterbi 算法在模式识别领域有很广的应用空间,这个网站对于入门级的研究人员有很大帮助。(作者语)
隐马尔科夫模型 HMM 自学 (1)
介绍
崔晓源 翻译
我们通常都习惯寻找一个事物在一段时间里的变化规律。在很多领域我们都希望找到这个规律,比如计算机
中的指令顺序,句子中的词顺序和语音中的词顺序等等。一个最适用的例子就是天气的预测。
首先,本文会介绍声称概率模式的系统,用来预测天气的变化
然后,我们会分析这样一个系统,我们希望预测的状态是隐藏在表象之后的,并不是我们观察到的现象。比
如,我们会根据观察到的植物海藻的表象来预测天气的状态变化。
最后,我们会利用已经建立的模型解决一些实际的问题,比如根据一些列海藻的观察记录,分析出这几天的
天气状态。
Generating Patterns
有两种生成模式:确定性的和非确定性的。
确定性的生成模式:就好比日常生活中的红绿灯,我们知道每个灯的变化规律是固定的。我们可以轻松的根
据当前的灯的状态,判断出下一状态。
非确定性的生成模式:比如说天气晴、多云、和雨。与红绿灯不同,我们不能确定下一时刻的天气状态,但
是我们希望能够生 成一个模式来得出天气的变化规律。我们可以简单的假设当前的天气只与以前的天气情
况有关,这被称为马尔科夫假设。虽然这是一个大概的估计,会丢失一些信 息。但是这个方法非常适于分
析。
马尔科夫过程就是当前的状态只与前 n 个状态有关。这被称作 n 阶马尔科夫模型。最简单的模型就当 n=1
时的一阶模型。就当前的状态只与前一状态有关。(这里要注意它和确定性生成模式的区别,这里我们得到
的是一个概率模型)。下图是所有可能的天气转变情况: