Python 深度学习Keras时间序列的简单RNN,预测多重

Python 深度学习Keras时间序列的简单RNN,预测多重,python,tensorflow,keras,Python,Tensorflow,Keras,我对深度学习非常陌生,因此我研究了如何使用Keras解决时间序列问题。然而,这些是完全不同的。 让我用PYTHON解释我的问题: 随附的我有一个数据框:行代表美国的每个城市(行=样本),每列代表1985-2018年间的时间序列,显示每年的平均温度(列=每年的平均温度)-因此,时间序列的年份是一个单独的特征列 现在的任务是预测每个城市2019年、2020年、2021年和2022年的气温 为此,我想应用滚动窗口技术 1) 现在,要在Python Keras中应用一个简单的RNN,我将如何构造输入和输

我对深度学习非常陌生,因此我研究了如何使用Keras解决时间序列问题。然而,这些是完全不同的。 让我用PYTHON解释我的问题: 随附的我有一个数据框:行代表美国的每个城市(行=样本),每列代表1985-2018年间的时间序列,显示每年的平均温度(列=每年的平均温度)-因此,时间序列的年份是一个单独的特征列

现在的任务是预测每个城市2019年、2020年、2021年和2022年的气温

为此,我想应用滚动窗口技术

1) 现在,要在Python Keras中应用一个简单的RNN,我将如何构造输入和输出维度? X_列车需要是X.shape=(城市、时间步、特征)还是实际上是4维:(批次数量、时间步、特征*城市)

特别是,我如何构建模型来预测每个城市的每年

我不明白这个问题。 非常感谢您的帮助

enter code here

首先,您必须正确定义您的问题,即输入、输出和特性。 关于您的第一个问题,Keras 3d输入形状定义为(batch_size,timesteps,features),其中batch_size是模型在反向传播之前看到的观察数(您必须优化此超参数),timesteps是数据中序列的长度。在您的情况下,可以使用1。Features是您正在使用的功能数量。从你展示的数据图像中,我假设你只使用城市的温度作为特征

当您转换数据表时,这会变得更加直观。因此,您的输入形状可以是Xshape=(10,1,6)


关于你的第二个问题,我建议你遵循许多令人敬畏的时间序列预测中的一个。

请将你的示例数据以文本形式而不是图像形式发布。谢谢你的回答!我以为每年都是一个特写,那么33个特写呢?如果我创建一个4的窗口大小,那么用1985-1988年来预测1989年等等,会怎么样?为什么6作为特征尺寸?我想在每个城市的窗口大小之后预测每年的温度……减小问题的大小可以帮助您理解术语。以洛杉矶的时间序列为例。每一个时间步都被视为对LA中温度的观察。1985年,你抽取了27个样本。保持采样温度时,将创建特征的时间序列或序列。您可以将一个特性视为输入数据的一个特定类别。现在,根据洛杉矶的温度历史,您可以预测2019年洛杉矶的温度。最后,如果你认为其他城市的温度可以帮助你预测你的输出,你可以将它们作为额外的特征添加,因此6。