【发布时间】:2021-07-10 19:13:56
【问题描述】:
我正在尝试在以下代码中训练自动编码器:
encoder_input = keras.layers.Input(shape=(x_Train.shape[1]), name='img')
encoder_out = keras.layers.Dense(1, activation = "relu")(encoder_input)
encoder = keras.Model(encoder_input, encoder_out, name="encoder")
decoder_input = keras.layers.Dense(602896, activation = "relu")(encoder_out)
decoder_output = keras.layers.Reshape((769, 28, 28))(decoder_input)
opt = keras.optimizers.RMSprop(learning_rate=1e-3)
autoencoder = keras.Model(encoder_input, decoder_output, name = "autoencoder")
autoencoder.summary()
autoencoder.compile(opt, loss='mse')
autoencoder.fit(x_Train, x_Train, epochs=10, batch_size=64, validation_split = 0.1)
但是,它返回错误: “tensorflow:模型是用形状 (None, 28) 构建的输入 KerasTensor(type_spec=TensorSpec(shape=(None, 28), dtype=tf.float32, name='img'), name='img', description= "由层 'img' 创建"),但它是在形状不兼容的输入上调用的 (None, 28, 28)。"
我不知道如何处理或调整我的输入。我的 x_train 是一个大小为 [769,28,28] 的向量
有人可以帮我处理错误吗?
谢谢
【问题讨论】:
标签: python tensorflow keras autoencoder