首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么大多数GAN (Generative对抗性网络)实现都有对称鉴别器和生成器架构?

为什么大多数GAN (Generative对抗性网络)实现都有对称鉴别器和生成器架构?
EN

Data Science用户
提问于 2019-02-04 14:46:24
回答 2查看 813关注 0票数 6

例如,如果鉴别器是n层的普通网络,每个层都有n(i)个单元,那么通常情况下,生成器也是n层的普通网络,每个层都有n(n-i)个单元(除了鉴别器的输出,其中n(n) =1,而对于生成器n(0) = NOISE_SIZE)。

如果鉴别器是CNN,则发生器通常是对称的“反褶积网络”,其中第一层是转置卷积层,对称于鉴别器的第n层。

实际上,我看到的所有实现都遵循这种模式,尽管我在理论上看不到为什么必须是这种情况。然而,在MNIST上,我有一个简单的数字绘图GAN的普通实现,它运行得相当好。我试图改进鉴别器,使它成为CNN (与我在识别MNIST数字方面做得很好的架构相同),而不改变生成器。GAN不再工作,并汇聚到一种状态,在这种状态下,发电机总是产生同样的乱画。从直觉上看,一个更好的鉴别器应该能帮助GAN,但事实并非如此。在没有同样改进生成器的情况下,改进鉴别器似乎不起作用(反之亦然)。这就是为什么人们总是选择对称架构的原因吗?以保持对手之间的“技能平衡”?还是有更深层次的原因?

EN

回答 2

Data Science用户

发布于 2020-02-29 22:31:19

主要原因是您希望生成器和鉴别器具有同等的功能。GANs的基本直觉是,这两个网络可以通过竞争来提高自己。如果其中一种比另一种好得多,它们就会陷入某种不必要的平衡,在这种平衡中,一种胜过另一种,甚至几乎所有的时间。

因此,它们通常是对称的。这是确保他们的竞争保持平衡的最简单和最有效的方法。

票数 2
EN

Data Science用户

发布于 2019-02-04 16:37:06

IMHO的原因是,类似的模式更多的是由于卷积层,而不是其他任何东西。密集层的数量可能会出现不平衡。

让我们来看看自动编码器的例子。如果您采取一些简单的东西,如SwissRoll,您将看到,您不需要相同数量的层在编码器和解码器侧(基本上您的鉴别器和生成器)。但是如果你有一个图像,只有密集的层使得生成器很难生成平滑的图像。它将需要更多的时间来训练,同时,鉴别器可以利用这种不平滑来检测它们。另外,你必须记住C层是预处理器,提取器,同样可以说是生成器输出,它们是创建者,它们需要匹配。

所以是的,这是关于平衡的,但只有特征。其余的不一定是对称的,它都是关于函数的复杂性,你必须近似。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/45039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档