解码后的编解码器噪声问题

问题描述

我有一个大小为(12960,)的数组,并且我正在使用非常简单的密集自动编码器体系结构来复制数组,如下所示。

input_img = Input(shape=(12960,))

encoded = Dense(units=2000,activation='relu')(input_img)
decoded = Dense(units=12960,activation='relu')(encoded)

现在我正在使用20个时代和64个批处理大小来训练模型。

但是当我在解码后绘制数组时,在很多地方都会遇到某种噪声(或0值)。我已在下面附加了原始图像和解码图像。有人可以解释一下为什么会这样。我是深度学习的新手,所以我对它的工作并不了解。是因为我使用的是非常简单的体系结构还是在编码时进行了大量压缩?

Original

Decoded

解决方法

尝试使用LeakyReLU代替ReLU。

这可能是因为由于ReLU被定义为ReLU(x) = max(0,x),所以对于负值,ReLU始终返回0。