【问题标题】:Stack two LSTM layers in Keras dimension mismatch在 Keras 维度不匹配中堆叠两个 LSTM 层
【发布时间】:2023-03-17 02:19:01
【问题描述】:

我想使用 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)

【问题讨论】:

  • Nav,如果解决了您的问题,请采纳

标签: python tensorflow keras lstm recurrent-neural-network


【解决方案1】:

如果您要堆叠两个lstm 层,则需要将return_sequence 用于第一层,它会返回每个时间步的输出,该输出将馈送到第二层lstm

这里是explained example,您可以通过它解决您的问题。

【讨论】:

  • 我在以前的版本中设置了 return_sequence(由于其他原因它没有工作),但对于当前版本,这是缺少的难题。谢谢
猜你喜欢
  • 2018-07-08
  • 1970-01-01
  • 2017-12-20
  • 2017-03-12
  • 2018-01-11
  • 1970-01-01
  • 2019-01-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多