Baum Welch算法的初始隐马尔可夫模型

时间:2014-04-25 16:04:48

标签: c algorithm hidden-markov-models

在尝试为隐马尔可夫模型制作程序时,我对Baum-Welch算法的初始HMM做了最简单的假设:将所有内容都作为均匀分布。也就是说,

A[i][j] = 1/statenumber;
B[i][j] = 1/observationnumber;
P[i]    = 1/statenumber;

高达对数以避免下溢。它的好处是不需要检查标准化。

但到目前为止,我遇到的算法并没有真正做多。发射矩阵在第一次迭代时改变,但在此之后不改变,并且转移矩阵和初始化矢量根本不发展。似乎伽马矩阵根本没有变化。

起初我以为我的算法运行得不好,但在其他HMM库上尝试之后,我似乎得到了相同类型的结果。

使用这样的初始化是否无法收敛到正确的HMM,初始化这些数组的理想方法是什么?

1 个答案:

答案 0 :(得分:1)

Baum Welch算法无法使用统一的初始分布 - 更新将会退化。尝试将其随机化。