我在Keras的网络中使用高斯噪声层,但我认为它只在训练期间工作,在测试阶段处于非活动状态。在测试期间是否有任何方法可以激活它?如果我想在训练期间显示此层的输出,我应该怎么做?我还有一个关于Keras中cropping2D的问题。如果我需要随机裁剪,在不同位置裁剪层的输出,我该怎么办?因为Cropping2D通常会裁剪图像的中心。谢谢。
image = Input((28, 28, 1))
conv1 = Conv2D(64, (5, 5),padding='same', name='convl1e',dilation_rate=(2,2))(image)
bncv1=BatchNormalization()(conv1)
act1=Activation('relu')(bncv1)
decoded_noise = GaussianNoise(0.5)(act1)
#decoded_noise=Cropping2D(cropping=(6,6))(act1)#16
pred_w = Conv2D(1, (1, 1),padding='same', name='reconstructed_W',dilation_rate=(2,2))(decoded_noise)
bncv18=BatchNormalization()(pred_w)
act18=Activation('sigmoid', name='wprim')(bncv18)
img_extraction=Model(inputs=image,outputs=act18)
1条答案
按热度按时间tvokkenx1#
你可以创建一个新的基于高斯噪声的类,只需要做一些小的修改。你只需要稍微调整调用函数。