首页 文章

隐马尔可夫模型初始猜测

提问于
浏览
1

我正在训练大型英文文本(布朗语料库的前50,000个字符,包括字母和空格)的2状态HMM,我的算法遵循Mark Stamp的教程(www.cs.sjsu.edu/~stamp/RUA/) HMM.pdf) .

由于观察仅包括26个字母和空格,所以最初我给每个观察(在一个状态内)的概率为1/27,然后将每个修改为0.0001,同时保持行随机 .

运行训练器50次迭代使我在log [P(O | lambda)]中进行了非常小的增量改进,其中lambda是更新的模型 . 此外,在最终模型的观察矩阵中,每个观察的概率在两个状态中几乎相同(参见http://pastebin.com/xVVYNhGs) .

我想我是'm stuck on a local maximum, so I altered the initial guess for observation matrix to match Stamp',它实际上给了我一个更新的观察矩阵,在相同的迭代次数内,状态*不同 . (50次迭代:http://pastebin.com/U0AgrJ2N; 100次迭代:http://pastebin.com/yAkruNjs

我的问题是,我改变的初始观察矩阵(发射概率)显然让我摆脱了悲伤的局部最大值;但是我如何才能找到/优化这个初始猜测呢?

1 回答

  • 3

    Rabiner的HMM教程paper给出了答案,第V-C节,第273页:

    基本上,上述问题没有简单或直接的答案 . 相反,经验表明,随机(取决于随机和非零值约束)或先验概率和转移矩阵的统一初始估计足以在几乎所有情况下对这些参数进行有用的重新估计 . 然而,对于排放矩阵,经验表明良好的初始估计值对离散符号情况有帮助,并且在连续分布情况下是必要的(当处理多个混合物时) . **这样的初始估计可以通过多个方法,包括:1)将观察序列手动分割成状态,在状态内平均观察,2)观察的最大似然分割,平均,3)分段k-均值分割与聚类等 .

相关问题