GAN 中的最小化和最大化是什么意思?

数据挖掘 深度学习 损失函数 无监督学习 生成模型
2022-03-03 04:28:06

这是一个微妙的变化,它涉及生成器最大化生成图像的鉴别器概率的对数,而不是最小化生成图像的反向鉴别器概率的对数。

这是理解 GAN 损失函数的一条非常棘手和令人困惑的路线,它来自机器学习精通博客。我的问题是关于最小化反判别器概率的对数的术语,从 1 中减去概率不是给你同样的东西(参考损失函数这部分的公式)。请用某种类比或某种例子来澄清它。

1个回答

这基本上归结为梯度消失问题众所周知,梯度消失会限制深度神经网络的学习能力。为 GAN 玩 min-max-game 也会导致这个问题G

当你开始训练 GANG时不会产生很好的结果,即D可以很容易地将这些分类为假的或真实的,它们接近真实的概率0. 因此,表达式log(1D(G(z))收敛到0,也会导致 的梯度消失G,即生成器在尝试最小化它时无法真正学习。

相比之下,logD(G(z))不收敛到0什么时候D(G(z))非常小(因为limx0logx=)。因此,G确实有一个梯度可以学习。

另请参阅作者写道的原始论文:

在学习的早期,当 G 很差时,D 可以以高置信度拒绝样本,因为它们与训练数据明显不同。在这种情况下,log(1D(G(z)))饱和。而不是训练 G 来最小化 log(1D(G(z)))我们可以训练 G 最大化logD(G(z)). 这个目标函数导致 G 和 D 的动态相同的固定点,但在学习早期提供了更强的梯度。

如您所见,这纯粹是为了便于学习G而不是关于表达式的理论等效性的实际考虑。