我看过一个关于 GAN 实现的建议,即生成器 (G) 和鉴别器 (D) 应该有不同的优化器。据我了解,这取决于每个模型(G 和 D)收敛的速度。我想澄清这个问题。为什么可以说,例如,必须为 D 选择 GSD,而为 G 选择 Adam 而不是反之亦然?(欢迎使用直观或数学的解释)
GAN 中生成器和判别器的不同优化器
数据挖掘
优化
甘
2022-02-13 20:15:40
2个回答
也许您可以分享此建议的链接,以便我们了解上下文或论点,因为这对我来说没有多大意义。
您特别问为什么可以选择不同的优化器。鉴别器和生成器之间的关系必须满足的唯一要求是鉴别器必须能够处理生成器的输出。其他一切都可以不同,包括优化器、预测算法、任何正则化等等。你可以有一个生成器的神经网络,而 Mechanical Turk 可以是你的鉴别器。
在生成器和判别器之间有不同的算法或架构是有道理的,本质上是判别器能够发现生成器的弱点。(因为他们不会有同样的弱点,希望如此。)但是让一切都一样,只改变优化器?我看不出这有什么意义。
生成对抗网络总是作为几个模型实现:生成器和判别器。他们的目的是互相对抗,以便通过竞争使他们提高。也就是说,没有什么能阻止科学家为这两个网络尝试不同的优化。即使他们同时玩和学习,它们仍然是单独的模型,只是后来被送到生产中的生成器。
当然,必须实例化两个不同的优化器对象,因为不同的网络(生成器-解码器和分类器)具有不同的架构和参数,并且训练方式也不同。但无论它们是 Adam 还是两种不同的算法,这完全取决于您的选择。
其它你可能感兴趣的问题