我有一个包含600个时序点(x(t),y(t))的训练批次,其中x(t)是一个25维向量,y(t)是我的目标(1维)。我想要训练一个LSTM来预测在给定几个额外的x(t)[t> 600]的情况下,该系列将如何继续。我尝试了以下模型:
model = Sequential()
model.add(LSTM(128, input_shape = (600,25), batch_size = 1, activation= 'tanh', return_sequences = True))
model.add(Dense(1, activation='linear'))
model.compile(loss='mean_squared_error', optimizer='adam')
model.fit(trainX, trainY, epochs=20 ,verbose=2) prediction
prediction = model.predict(testX, batch_size = 1)
拟合工作正常,但在预测步骤中我不断遇到以下错误:
Error when checking : expected lstm_46_input to have shape (1, 600, 25) but got array with shape (1, 10, 25)
我缺少什么?
这是我的形状:
trainX.shape = (1,600,25)
trainY.shape = (1,600,1)
testX.shape = (1,10,25)
TimeDistributed(Dense(1))
,因为每个时间步都有一个输出。 - Thomas Jungblut