machine-learning - Keras:堆叠多个 LSTM 层

标签 machine-learning neural-network deep-learning keras lstm

我有以下网络,运行良好:

output = LSTM(8)(output)
output = Dense(2)(output)

现在对于相同的模型,我尝试堆叠一些 LSTM 层,如下所示:

output = LSTM(8)(output, return_sequences=True)
output = LSTM(8)(output)
output = Dense(2)(output)

但是我遇到了以下错误:

TypeError                                 Traceback (most recent call last)
<ipython-input-2-0d0ced2c7417> in <module>()
     39 
     40 output = Concatenate(axis=2)([leftOutput,rightOutput])
---> 41 output = LSTM(8)(output, return_sequences=True)
     42 output = LSTM(8)(output)
     43 output = Dense(2)(output)

/usr/local/lib/python3.4/dist-packages/keras/layers/recurrent.py in __call__(self, inputs, initial_state, constants, **kwargs)
    480 
    481         if initial_state is None and constants is None:
--> 482             return super(RNN, self).__call__(inputs, **kwargs)
    483 
    484         # If any of `initial_state` or `constants` are specified and are Keras

/usr/local/lib/python3.4/dist-packages/keras/engine/topology.py in __call__(self, inputs, **kwargs)
    601 
    602             # Actually call the layer, collecting output(s), mask(s), and shape(s).
--> 603             output = self.call(inputs, **kwargs)
    604             output_mask = self.compute_mask(inputs, previous_mask)
    605 

TypeError: call() got an unexpected keyword argument 'return_sequences'

这很令人困惑,因为 return_sequences 是基于 Keras 文档的有效参数:https://keras.io/layers/recurrent/#lstm

我在这里做错了什么?谢谢!

最佳答案

问题在于 return_sequences 应作为参数传递给层构造函数 - 而不是层调用。将代码更改为:

output = LSTM(8, return_sequences=True)(output)

解决了问题。

关于machine-learning - Keras:堆叠多个 LSTM 层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48510318/

相关文章:

neural-network - tensorflow.equal() op 上的不兼容形状用于正确的预测评估

neural-network - InfoGainLoss导致精度和损失为0

python - 如何在 Pytorch 中应用分层学习率?

c++ - 保存 caffe 模型 C++ 源代码?

python - 使用 scikit-learn 的 SVM 分类算法(RBF 内核)时出现意外结果

python - 将数据集划分为训练和测试后将标签转换为指标矩阵

machine-learning - 如何在 Neuroevolution 中进化神经网络的权重?

python - Keras,我训练模型后如何预测?

python - 如何清除/删除 tensorflow 中的张量?

python - sklearn 的metrics.accuracy_score 的结果似乎是错误的