我正在研究Generative Adversarial Networks。最近,在阅读Radford等人的论文时。 here,我发现他们的生成器网络的输出层使用Tanh()。 Tanh()的范围是(-1,1),但是,双精度格式的图像的像素值位于[0,1]。有人可以解释为什么在输出层使用Tanh()以及生成器如何使用正确的像素值生成图像?
答案 0 :(得分:1)
如果查看论文的代码,您会看到作者预处理图像:https://github.com/soumith/dcgan.torch/blob/master/data/donkey_folder.lua#L68,以便在[-1, 1]
中获取图像的值。
然后,在生成部分,他们将图像重新缩放为[0, 1]
:https://github.com/soumith/dcgan.torch/blob/master/generate.lua#L89中的值。