2012-12-13 39 views
4

我有可变长度的许多序列。对于这些,我想训练一个隐马尔可夫模型,我想稍后用它来预测(部分)序列的可能延续。我发现两种方法利用HMM到目前为止,预测未来:如何使未来的预测与隐马尔可夫模型

1)产生幻觉的延续,并得到该序列持续的可能性。选择最可能的那个作为你的预测。这种方法需要明确知道可能的临时值。

2)使用维特比算法(部分)序列,以获得最可能的隐藏状态序列。以该序列中的最后隐藏状态的发射分布并预测例如该分布的平均值(通常是高斯)。

现在我的问题是:是否有任何其他的,可能更条理化,如何利用HMM预测未来?

谢谢!

回答

0

在HMM马尔可夫假设指出,在时间T + 1的状态是独立之前T总状态,空调的T.

你选择2接近我的建议,除非你正在使用最后一个状态的最大似然赋值。相反,计算序列中最后一项的隐藏状态分布。这相当于用维特比算法中的“总和”替换“最大值”。 (参见https://www.coursera.org/course/pgm,并搜索“和积”算法,也称为置信传播)。

然后,采样以后,你做的是第一个样品最后的状态,考虑到其分布。然后使用转换矩阵采样下一个隐藏状态,并重复播放nauseum。由于在序列中的最后一个点之后没有实际的观察结果,因此您是从马尔可夫链中抽样的。这将为您提供未来的样本,并提供有关部分序列的所有信息。这与维特比不同的原因是,即使对部分分配的隐藏变量的最可能的分配可能性也很低。通过使用的最后状态下的整个分布,可以得到以下的(未观察到的未来)状态的更好的估计。