首页 > 解决方案 > Keras 中的层级联

问题描述

我有个问题。我创建了一个 CNN,其中输出层 * 有 64 个输出通道。我还创建了一个包含 16 个输出的密集层(在同一个 CNN 内)。我知道我可以为 CNN 提供多个输出,但我希望将它们全部放在同一个输出中,以评估我的损失函数。因此,我的想法是向输出层添加 16 个通道*,其中每个通道在每个像素位置都包含密集层的相关输出。我的实现:

denseoutput = denseoutput[:, np.newaxis, np.newaxis]
sliced = Lambda(lambda t: t[:, :, :, 0:16])(intermediate_layer)
sliced_zerod = Lambda(lambda t: t * 0)(sliced)
extra_out = Add()([sliced_zerod, decision])
x = Concatenate(axis=-1)([x, extra_out])

其中 x 是我的初始输出层 *。第一行是扩展密集层的维度。第二和第三是获得正确的尺寸(当我使用不同分辨率图像的数据集时),第四行是获得我想要的额外输出的补充,第五行是连接。

我得到的错误是:

AttributeError: 'NoneType' object has no attribute '_inbound_nodes'

我究竟做错了什么?

标签: pythontensorflowkeras

解决方案


推荐阅读