在keras中使用自动编码器的编码器部分

时间:2019-02-06 00:08:48

标签: python keras deep-learning face-recognition autoencoder

我想要的是获取编码器(压缩数据)的输出,然后对其进行face_recognition。 训练完此自动编码器后,我想使用训练有素的编码器。

因此,当我尝试运行代码时,出现此错误: 我如何解决该问题并仅提取此自动编码器模型中训练有素的编码器部分?

ValueError: Error when checking target: expected max_pooling2d_3 to have shape (8, 8, 64) but got array with shape (64, 64, 3)

1 个答案:

答案 0 :(得分:0)

正在发生的事情是您的模型输出是encoded部分,并且您正在提供将要编码为目标的图像,这对于自动编码器是正确的。您需要定义

autoencoder = Model(input_img, decoded)

对其进行训练,然后使用单独的类似编码的模型来使用.predict方法来获得减少的输入。