keras I/0中的Resnet自动编码器问题

keras I/0中的Resnet自动编码器问题,keras,deep-learning,Keras,Deep Learning,我试图在keras中编写一个深度自动编码器。我的图像形状是(4575,32,32,3),目标是(4575,1) 下面是函数 def build_deep_autoencoder(img_shape, code_size): H,W,C = img_shape # encoder encoder = Sequential() encoder.add(L.InputLayer(img_shape)) encoder.add(ResNet5

我试图在keras中编写一个深度自动编码器。我的图像形状是(4575,32,32,3),目标是(4575,1)

下面是函数

def build_deep_autoencoder(img_shape, code_size):
    
    H,W,C = img_shape
    
    # encoder
    encoder = Sequential()

    encoder.add(L.InputLayer(img_shape))
    encoder.add(ResNet50(include_top=False,pooling='avg'))
    encoder.add(Flatten())
    encoder.add(Dense(512, activation='relu'))
    encoder.add(Dropout(0.5))
    encoder.add(BatchNormalization())
    encoder.add(Dense(256, activation='relu'))
    encoder.add(Dropout(0.5))
    encoder.add(BatchNormalization())
    encoder.add(Dense(code_size))

    # decoder
    decoder = Sequential()
    decoder.add(L.InputLayer((code_size,)))
    encoder.add(Flatten())
    decoder.add(Dense(2*2*256))
    decoder.add(Reshape((2, 2, 256)))
    decoder.add(Conv2DTranspose(filters=128, kernel_size=(3, 3), strides=2, activation='elu', padding='same'))
    decoder.add(Conv2DTranspose(filters=64, kernel_size=(3, 3), strides=2, activation='elu', padding='same'))
    decoder.add(Conv2DTranspose(filters=32, kernel_size=(3, 3), strides=2, activation='elu', padding='same'))
    decoder.add(Conv2DTranspose(filters=3, kernel_size=(3, 3), strides=2, activation=None, padding='same'))
    
    return encoder, decoder

        encoder,decoder = build_deep_autoencoder(img_shape,code_size=2)

        inp = L.Input(img_shape)
        code = encoder(inp)
        reconstruction = decoder(code)

        autoencoder = tensorflow.keras.models.Model(inp,reconstruction)

        encoder.summary()


        autoencoder.compile('nadam','mse')
        autoencoder.fit(x=X,y=y,epochs=10)

我得到一个错误:

InvalidArgumentError:不兼容的形状:[31,32,32,3]与[31,1] [{{node training_18/Nadam/gradients/loss_12/sequential_28_loss/MeanSquaredError/sub_grade/broadcastinggradientargs}]

我正在使用tensorflow.python.keras


如有任何帮助,将不胜感激。

添加独立代码以重现此错误。