我应该如何为多变量时间序列预测问题设计 LSTM 架构?

人工智能 深度学习 人工智能设计 长短期记忆 时间序列
2021-11-10 13:35:44

有大量文献详细描述了 LSTM,以及如何将它们用于多变量或单变量预测问题。但是,我找不到任何描述时间序列预测的论文或讨论,其中我们已经关联了预测数据。

一个例子最能说明我的意思。假设我想预测未来 24 小时海滩上的人数,并且我想以小时为单位进行预测。这个人数显然取决于过去海滩上的人数以及天气。现在我可以制作某种 LSTM 架构,以便根据过去发生的事情很容易地预测这些未来的数量。但是,如果我现在也可以访问未来 24 小时的天气预报呢?(以及历史预测数据)。

我提出的架构如下所示:

预测架构

所以我在预测数据上训练左上分支,然后在结果数据上训练右上分支,然后将它们的层冻结并加入它们以形成图片中的最终网络,并在预测和结果上进行训练。(当我说训练时,输出始终是未来 24 小时的预测)。实际上,这种方法确实比单独使用预测或结果具有更好的性能。

我想我的问题是,有没有人看过关于这个主题的任何文献和/或知道解决这类多元时间序列预测问题的更好方法,我的方法可以还是完全有缺陷?

1个回答

我还没有遇到过这样的模型。

如果您还没有尝试过较小的型号,我建议您先尝试一下。

理由:这使您可以使用学习曲线来诊断下一步该做什么。

此外,您可以尝试从 GRU 开始(可能不需要 LSTM 开销)。

起始模型的一个想法

请注意,投票率不会影响天气。因此,天气预报模型将独立于投票率模型,反之则不然。

(注意:我使用 RNN 来表示您选择的循环架构)

同时预测公式

天气

RNNw是你的天气预报模型

w^t=RNNw(w^t1)成为当时的预测天气t

投票率:这里的想法是人们会或不会出于各种原因(人满为患、太热或暴风雨等)去海滩。因此,在海滩人口预测任务中,我们使用所有这些作为特征来预测下一个时间步的人口。这将问题减少到已经开发的任何一种经典模型。

RNNp是您的投票率(海滩人口)预测模型

p^t成为当时的预测投票率t

c^t=[p^t,w^t]是时间 t 的串联

p^t+1=RNNp(c^t)

在有天气预报的情况下制定

只需更换w^t与真实的天气预报f^t.

最后的警告

除非您认为您的 RNN 在天气预报方面比我推荐使用的预测系统更好RNNw在生产应用程序中。

我希望这有帮助。