使用针对不同时间步长数据训练的模型以不同时间步长进行预测

时间:2019-05-17 15:57:56

标签: keras lstm

我用3个时间步训练了LSTM。接下来是Keras LSTM层。

model.add(LSTM(32, return_sequences=True, input_shape=(None, 3))).

例如:

   X                           Y
   [[1,2,3],[2,3,4],[4,5,6]]   [[4],[5],[7]]

现在,我需要预测具有不同time_steps(例如2)的序列的下一个值

  X= [[1,2]]

使用X= [[1,2]]时出现以下错误

ValueError: Error when checking input: expected lstm_1_input to have shape (None, 3) 
but got array with shape (1, 2)

在训练时,我应该提供相同的形状吗?

或者我仍然可以使用其他时间步长(输入形状)进行预测。

感谢您在此问题上的帮助。

1 个答案:

答案 0 :(得分:0)

我相信在使用模型预测新数据时,您需要使用相同的形状。您的数据经过3个时间步长(train_X)的训练,因此在建模时应将其输入3个时间步长。预测测试数据(test_X)。