解码器模块如下:
angular
在训练自动编码器进行一些工作之后,我已经提取了潜在空间表示,现在想再次将其传递给解码器层,以通过以下给定指令预测重构的图像。但是给定的指令给出了这个错误:
x= Conv2D(4, (3, 3), activation='relu',padding='same')(latent_space)
x= Conv2D(8, (3, 3), activation='relu',padding='same')(x)
x= Conv2D(16, (3, 3), activation='relu', padding='same')(x)
x= Conv2D(16, (3, 3), activation='relu', padding='same')(x)
x= UpSampling2D(size=(2, 2))(x)
x= Conv2D(32, (3, 3), activation='relu', padding='same')(x)
x= Conv2D(32, (3, 3), activation='relu', padding='same')(x)
x= Conv2D(32, (3, 3), activation='relu', padding='same')(x)
x= UpSampling2D(size=(2, 2))(x)
x= Conv2D(64, (3, 3), activation='relu', padding='same')(x)
x= Conv2D(64, (3, 3), activation='relu', padding='same')(x)
x= UpSampling2D(size=(2, 2))(x)
x= Conv2D(128, (3, 3), activation='relu', padding='same')(x)
x= Conv2D(128, (3, 3), activation='relu', padding='same')(x)
decoded= Conv2D(3, (3, 3), activation='sigmoid', padding='same')(x)
test_generator.reset()
decoded_imgs=decoder.predict_generator(latent_space,steps=None) #error in this line
请告诉我在编写此代码时我在做什么错。 需要帮助.....
答案 0 :(得分:1)
您需要将步数分配给predict_generator
,因此该函数知道要从生成器获取多少个示例步。仅当您具有实现Sequence接口的生成器时,才可以跳过此参数,因为sequence包含其长度。
答案 1 :(得分:0)
我遇到了相同的错误,并通过确保步长大于0来解决它。
答案 2 :(得分:0)
安装keras 2.1.3
此版本不会产生此错误。
答案 3 :(得分:-1)
出现此错误时,我的Tensorflow版本为1.13.1,而keras版本为2.2.4。
我通过以下命令将keras降级来解决:
pip uninstall keras
pip install keras==2.1.2