生成结果良好的 GAN 收敛失败

问题描述 投票:0回答:1

我正在为一个我无法理解的不寻常的结果而苦苦挣扎。

我训练有条件 GAN。我在训练过程中监控的指标是 D 和 G(二元交叉熵)的损失以及保真度(两个矩阵之间的相似度)。该指标接近 1 时为好,接近 0 时为差。

保真度不断上升,这意味着网络生成的矩阵越来越接近我的目标:

但是损失:

这是为什么呢?有问题还是可以接受?

我的生成器生成了一个与目标矩阵 99.99% 接近的矩阵,但判别器在区分生成矩阵和真实矩阵方面表现得非常完美?

看看生成的样本,和原来差不多是一个ctr+c ctr+v:

enter image description here

生成器损耗不断上升,而鉴别器损耗接近于零并不意味着收敛失败?根据我对收敛失败的理解,情况确实如此,但这也意味着生成器正在生成垃圾。但这里情况并非如此,我有:

  • 发电机损耗大
  • 鉴别器损失非常低
  • 非常好的生成样本

我没有得到什么吗?

python tensorflow generative-adversarial-network
1个回答
0
投票

如果您使用 cGAN,您的成本(损失)函数的形式为: $$J(G,D) = min_G max_D E_x \log(D(x|y)) + E_z \log(1-D(G(z|y)))$$ 因此,假设您使用映射到区间 [0,1] 的判别器,则您的损失位于区间 $[-\infty,0]$ 上。你的损失图似乎有负面影响。

您的对数鉴别器损失收敛到零,因此真实样本的鉴别器值收敛到 1。另一方面,您的发电机损失并未收敛,并且方差似乎在增加。生成的 PDF 矩阵显然非常接近数据 PDF 矩阵,因此您的 cGAN 已经获得了有用的参数设置。如果您期望收敛到某种最佳值,则有必要更多地了解您的实验,特别是数据样本 $n_x$ 和生成器的潜在变量 $n_z$ 的维度输入。

原始 GAN [参考文献 1] 的收敛结果基于一个隐藏的假设,即。 $n_z \geq n_x$。当满足这个维度要求时,可以预期鉴别器和生成器损失将收敛到 2014 年论文中预测的值,即生成器的 log(2) 和生成器的 log(4) 的所谓纳什均衡值判别器。当数据的维度超过潜在变量的维度时(实践中经常出现这种情况),最优判别器([1]的命题1)不存在。其推理包含在 IEEE Access [2] 上发表的一篇论文的第二节末尾。论证的要点是当 $n_z < n_x$, the generator output PDF contains delta functions. This precludes the integrand in the loss function from being continuously differentiable in the integration variable, preventing in turn the application of variational calculus on which Proposition 1 of [1] is based.

[2] 的另一个结论是,收敛不会发生在鞍点(纳什均衡),而是发生在梯度消失的平台上。根据首选最优判别器还是生成器(通常需要最优生成器来模拟数据分布),建议应用早期停止标准。还值得一提的是,GAN 的实现通常基于 {m 随机} 梯度上升下降 (SGAD) 来近似成本函数中的期望。这是一个本质上有噪声的过程,特别是在高维空间中。

Qin 等人的参考文献[3]中提供了进一步的证据。他们提出了对 $n_z = 32$、$n_x = 2$ 的二维高斯混合的模拟;对于 CIFAR-10 数据集,$n_z = 128$,$n_x = 3072$。在第一种情况下 $n_z \geq n_x$ 以及生成器和判别器损失收敛到纳什均衡值。在第二种情况下 $n_z < n_x$ and convergence does not occur within 1.2 million steps.

[1]“生成对抗网络”,I. Goodfellow、J. Pouget-Abadie、M. Mirza、B. Xu、D. Warde-Farley、S. Ozair、A. Courville 和 Y. Bengio。神经信息的进展。过程。系统 27,第 2672–2680 页,2014 年。

[2]“使用误差函数积分的低维生成对抗网络的收敛性和最优性分析” 参见 https://www.researchgate.net/publication/356815736_Convergence_and_Optimality_Analysis_of_Low-Dimensional_Generative_Adversarial_Networks_using_Error_Function_Integrals

[3]“通过求解常微分方程训练生成对抗网络”,C.Qin、Y.Wu、J.T.Springenberg、A.Brock、J.Donahue、T.P.Lillicrap 和 P.Kohli,2020 年。

© www.soinside.com 2019 - 2024. All rights reserved.