生成对抗网络坦诚?

时间:2017-01-05 16:25:38

标签: tensorflow neural-network deep-learning

我在想,为什么在GAN的大多数模型中(至少在MNIST中),我看到,激活功能(用于鉴别器和发生器)是tanh? 不是ReLu效率更高吗? (我总是把它读作预测网络)

谢谢!

2 个答案:

答案 0 :(得分:3)

来自DCGAN论文[Radford et al。 https://arxiv.org/pdf/1511.06434.pdf] ...

" ReLU激活(Nair& Hinton,2010)用于生成器,但输出除外 使用Tanh函数的图层。我们观察到使用有界激活允许模型 更快地学习以饱和并覆盖训练分布的色彩空间。内 鉴别器我们发现泄漏整流激活(Maas et al。,2013)(Xu et al。,2015)开始工作 好吧,尤其是更高分辨率的建模。这与原始的GAN纸相反 使用maxout激活(Goodfellow等,2013)。"

这可能是tanh的对称性在这里是一个优点,因为网络应该以对称的方式处理较暗的颜色和较浅的颜色。

答案 1 :(得分:2)

有时它取决于您希望激活的范围。每当你听到"盖茨"在ML文献中,你可能会看到一个sigmoid,介于0和1之间。在这种情况下,他们可能希望激活落在-1和1之间,所以他们使用tanh。 This page说使用tanh,但他们没有给出解释。除了生成器的输出之外,DCGAN使用ReLU或泄漏的ReLU。有道理 - 如果你的一半嵌入变成零怎么办?在-1和1之间进行平滑变化的嵌入可能会更好。

我很想听别人的意见,因为我不确定。