尝试将一层的输出用作另一层的输入。(KERAS tensorflow 后端)

Trying to use output of a layer as an input to another layer.(KERAS tensorflow backend)

我在 Python 3 中使用 Keras。 我正在尝试应用附件中显示的网络model。顺序模型对我没有帮助,因为我的模型顺序被打乱了。例如,X1 的输出用于 Y1 和 X2。我的代码看起来

conv1= (Convolution3D(32, 3, 3, 3, activation='relu', 
border_mode='same', name='conv1',
input_shape=(patch_size, img_rows, img_cols,3)))

input_1=conv1.output

lstm1=(ConvLSTM2D(filters=3, kernel_size=(3, 3),
padding='same', return_sequences=True))(input_1)

conv2= (Convolution3D(32, 3, 3, 3, activation='relu', 
border_mode='same', name='conv1'))(input_1)

input_2= conv2.output

lstm2=(ConvLSTM2D(filters=3, kernel_size=(3, 3),
padding='same', return_sequences=True))(input_2)

conv3= (Convolution3D(32, 3, 3, 3, activation='relu', 
border_mode='same', name='conv1'))(input_2)

input_3= conv3.output

lstm3=(ConvLSTM2D(filters=3, kernel_size=(3, 3),
padding='same', return_sequences=True))(input_3)

然后我将把 LSTM 合并在一起。 我收到很多错误,例如 'Layer conv1 has no inbound nodes'。 在此先感谢您的帮助。

您缺少 functional API 中的概念。在您的情况下,您似乎缺少功能模型所需的 Input 层。您也不需要获取 .output 到 link 层,只需调用它们就足够了 lstm3(conv3).