我必须用生成器和鉴别器训练 GAN 网络。我的发电机网络如下。
def Generator(image_shape=(512,512,3):
inputs = Input(image_shape)
# 5 convolution Layers
# 5 Deconvolution Layers along with concatenation
# output shape is (512,512,3)
model=Model(inputs=inputs,outputs=outputs, name='Generator')
return model, output
我的鉴别器网络如下。鉴别器网络的第一步是我必须将鉴别器的输入与生成器的输出连接起来。
def Discriminator(Generator_output, image_shape=(512,512,3)):
inputs=Input(image_shape)
concatenated_input=concatenate([Generator_output, inputs], axis=-1)
# Now start applying Convolution Layers on concatenated_input
# Deconvolution Layers
return Model(inputs=inputs,outputs=outputs, name='Discriminator')
启动架构
G, Generator_output=Generator(image_shape=(512,512,3))
G.summary
D=Discriminator(Generator_output, image_shape=(512,512,3))
D.summary()
我的问题是当我传递concatenated_input
给convolution
图层时,它会出现以下错误。
Graph disconnected: cannot obtain value for tensor Tensor("input_1:0", shape=(?, 512, 512, 3), dtype=float32) at layer "input_1". The following previous layers were accessed without issue: []
如果我删除连接层,它可以完美地工作,但是为什么它在连接层之后不起作用,尽管连接中的输入和 Generator_output 的形状也是相同的,即(512,512,3)
。