1

假设有一个观察序列,例如[1,2,3,5,5,5,2,3,2,3, ..., 3, 4]。我正在尝试使用 Scikit-learn 中 HMM 的当前实现来预测这个观察序列的下一个值。我对此有两个问题。

  1. 给定一系列观察结果,我如何预测下一个观察结果(如上所述)?

  2. 给定n个观察的许多序列和这些序列的n+1个观察,HMM可以用来预测一个新的n个观察序列的第(n+1)个观察吗?如果有怎么办?

我无法从文档中掌握太多关于这一点的信息。

我发现了一个可能的重复,但它没有指定如何在 Scikit-learn 中使用 HMM 来预测序列中的下一个值。

4

2 回答 2

11

HMM 不适合解决这个问题。他们擅长预测一个完全观察到的序列的标签(隐藏状态),而不是完成一个序列。尝试在观察窗口上训练分类器或回归模型,然后将其用于预测。即在训练时,对于每个给定序列中的所有位置,将模型观察结果(i, ..., i + k)作为特征,将观察结果作为目标。在测试时,将最后的观察结果作为特征提供。i + k + 1ik

于 2013-09-29T21:34:45.703 回答
4

这是一个时间序列任务,没有理由相信 HMM 会在这里工作。

我建议你看看时间序列方法——有一个叫做ARIMA的方法家族应该可以很好地工作。

于 2013-09-30T12:54:04.123 回答