我想出了错误消息
InvalidArgumentError:不兼容的形状:[490]与[500] [[{{node training_10 / Adam / gradients / loss_14 / dense_39_loss / mean_squared_error / weighted_loss / mul_grad / Mul_1}}]]
并且我在多个来源中都看到了此类问题,但是这些修复程序都不适用于我。到目前为止,我尝试使用不同版本的keras定义自定义损失函数,并添加了Flatten()。
我有X.shape(1575500,40)和Y.shape(1575500,1),目标是建立具有10个时间步长和40个特征的时间序列LSTM预测模型。
n_input = 10 #timesteps
generator = TimeseriesGenerator(X, Y, length=n_input, batch_size=500)
lstm = Sequential()
lstm.add(LSTM(64,
batch_input_shape =(500, 10, 40), #(batch_size, timesteps, features)
activation = 'tanh',
stateful=True,
return_sequences=True))
lstm.add(Dropout(0.5))
lstm.add(Dense(32, activation = 'tanh'))
lstm.add(Dropout(0.5))
lstm.add(Flatten())
lstm.add(Dense(1, activation='linear'))
lstm.compile(loss='mse', optimizer = 'Adam', metrics = ['mse']
lstm.fit_generator(generator, epochs = 10)
您能帮助我理解并修复我的模型吗?