在 Keras 维度不匹配中堆叠两个 LSTM 层

Stack two LSTM layers in Keras dimension mismatch

我想使用 Keras 制作一个 LSTM 神经网络,它以四个特征的长度作为输入并预测 10 个以下值。而且我无法设置正确的输入尺寸。 X_train是一个形状为(34,5,4)的数组(重复观察,观察序列,特征)y_train是一个形状为(34,10)的数组。我无法满足要求的尺寸。

知道我做错了什么吗?

X_train = X_train.reshape((X_train.shape[0], X_train.shape[1], 4))
model.add(LSTM(30, dropout=0.2, batch_size=window_size))
model.add(LSTM(10, activation=None))
model.compile(optimizer='adam',loss='mse')
model.fit(X_train,y_train,epochs= epochs,validation_split=0.2,shuffle=True)

如果要堆叠两个 lstm 层,则第一层需要使用 return_sequence,每个时间步的输出 return,将被送入第二层 lstm层。

这里是,可以解决你的问题