0

我正在尝试使用 Viterbi 训练来模拟小型 HMM 的参数。我在这里使用维基百科页面中给出的示例. 据我了解,该算法应该提出可以最大限度地从训练数据中获取观察序列的可能性的参数。我的代码实际上确实这样做了,但是以一种非常愚蠢的方式。它将初始概率设置为 [1,0],这意味着链只会进入第一个状态。然后它使该状态吸收,因此不会访问其他状态。然后它设置发射概率以匹配训练数据中观察到的状态的频率。实际上,它抵消了发射概率的所有随机性。在 Wikipedia 示例的上下文中,我学习到的参数本质上是在说总是在下雨,并且 Bob Walks、Shops 和 Cleans 的概率由观察到的频率估计。

这似乎是一个合理的结果,但显然没有得到正确的参数。我读过的许多论文都说,维特比训练虽然不如鲍姆-韦尔奇,但产生了足够好的结果。但是他们都没有谈论我遇到的这个问题。这是应该发生的事情吗?

4

0 回答 0