解决tf报Graph disconnected错误

WARNING:tensorflow:Functional model inputs must come from tf.keras.Input (thus holding past layer metadata), they cannot be the output of a previous non-Input layer. Here, a tensor specified as input to “discriminator” was not an Input tensor, it was generated by layer tf.identity.

在这里插入图片描述我的错误:


def build_discriminator_with_teacher(filters=16):
    inputs = Input(shape = input_shape, name='dis_input')
    x = inputs
    z_teacher = Input(shape= (latent_dim,), name='z_teacher')
    z_teacher = Dropout(rate=0.75)(z_teacher)
    z_embedding = Dense(1024, activation='linear', name='z_embbding_dis')(z_teacher)
    #3层卷积
    for i in range(3):
        filters *= 2
        x = Conv2D(filters=filters,
                kernel_size=kernel_size,
                activation='relu',
                strides=2,
                padding='same')(x)
    x = Flatten()(x)
    #(16*16*128--1024,对16*16*128层施加dropout)
    x = Dropout(rate=0.2)(x)
    x = Dense(1024,activation='relu')(x)

    # 对z_embedding和x进行加和操作

    x = add([x,z_embedding])

    x = Dense(1,activation='linear')(x)

    return Model(inputs=[inputs,z_teacher], outputs=x, name='discriminator')

输入层的变量名不要在后面改了!
应把z_teacher改为z_teacher_input

猜你喜欢

转载自blog.csdn.net/qq_44065334/article/details/120468529