【发布时间】:2017-12-08 10:42:10
【问题描述】:
我正在使用带有 tensorflow 后端的 Keras。我在 Keras 中使用功能层。我想要实现的是我在某个层具有以下架构。
(20,200) 的张量----> LSTM----> 分成两个大小为 (20,100) 的张量,每个
然后将这两个张量用作另一个网络的两个分支。 (我们可以认为这与 Merge 操作相反)
我了解到,目前实现这一目标的唯一方法是使用 Lambda 层,因为 Keras 中没有“拆分”功能。
但是查看 Lambda 函数的文档,似乎 output_shape 功能仅在我们使用 Keras 时才相关。
任何人都可以就如何实现这一目标提供任何建议吗?这是我想要实现的粗略伪代码。
#Other code before this
lstm_1st_layer = LSTM(nos_hidden_neurons, return_sequences=True)(lstm_0th_layer)
#this layer outputs a tensor of size(20,200)
#Split it into two tensors of size (20,100) each (call them left and right)
left_lstm = LSTM(200, return_sequences=True)(left)
right_lstm = LSTM(200, return_sequences=True)(right)
#Other code after this
【问题讨论】:
标签: python tensorflow deep-learning keras keras-layer