用于时间序列预测的卡尔曼滤波器

数据挖掘 时间序列 预言 预报 lstm
2021-09-28 19:57:20

我有 400 名用户在 1 个月(30 天)期间的行为信息。在这 30 天中,我测量了 4 个不同的信息(我们称之为 A、B、C 和 D),因此我总共有 4 个时间序列。我的目标是从第 5 天开始,通过了解 A、B、C 和 D 的过去值来预测 A 的未来值。所以:

A(5) = f(A(1,2,3,4), B(1,2,3,4), C(1,2,3,4), D(1,2,3,4))

理想情况下,我想估计从第 5 天到第 30 天的整个未来值。

我尝试使用 LSTM 通过将过去的系列作为输入来预测未来的趋势。但是,我没有得到很好的结果,我希望我可以使用更简单的方法。我遇到了卡尔曼滤波器的概念,其中时间步 k 的值可以通过使用过去的值来估计。 这里有一些很好的例子,但是我不知道从哪里开始。它是否适合我的问题,如果是的话,我如何将我过去的值拟合到估计 A(k) 的方程中?任何建议表示赞赏。

1个回答

卡尔曼滤波器是一种基于模型的算法,这意味着您需要一个方程系统来描述值 A、B、C、D 如何随时间演变如果你没有那个,那么卡尔曼滤波器不适合你。

例子 为了把它放在上下文中,考虑我们想要预测位置Xķ. 我们从高中物理知道Xķ=Xķ-1+vķδ, 在哪里 v 是速度, ķ 离散时间指数和 δ离散时间步。所以我们有一个模型为了使用卡尔曼滤波器,我们还需要测量,例如位置和/或速度(你有这个)。