我有一个大小为(12960,)的数组,并使用了一个非常简单的密集自编码器架构来重现数组,如下所示。
input_img = Input(shape=(12960,))encoded = Dense(units=2000, activation='relu')(input_img)decoded = Dense(units=12960, activation='relu')(encoded)
现在我使用20个epoch和64的批次大小来训练模型。
但是,当我绘制解码后的数组时,许多地方出现了某种噪声(或0值)。我已经附上了原始和解码后的图像。能有人解释一下这是为什么吗?我是深度学习的新手,所以对它的工作原理不太了解。这是因为我使用了非常简单的架构,还是因为我在编码时压缩了太多内容?
回答:
尝试使用LeakyReLU代替ReLU。
这可能是因为ReLU被定义为ReLU(x) = max(0, x)
,对于负值,ReLU总是返回0。