首页 > 其他分享 >[论文阅读] Dist-GAN: An Improved GAN using Distance Constraints

[论文阅读] Dist-GAN: An Improved GAN using Distance Constraints

时间:2023-11-08 16:01:03浏览次数:41  
标签:Distance Improved 判别 样本 生成器 GAN AE 我们

[1803.08887] Dist-GAN: An Improved GAN using Distance Constraints (arxiv.org)

Tran N T, Bui T A, Cheung N M. Dist-gan: An improved gan using distance constraints[C]//Proceedings of the European conference on computer vision (ECCV). 2018: 370-385.

引用:102

原文代码:tntrung/gan: Tensorflow code of Dist-GAN, GN-GAN and other GAN methods (github.com)

摘要

我们引入了生成对抗网络(GAN)的有效训练算法来缓解模式崩溃和梯度消失。在我们的系统中,我们通过自编码器(AE)约束生成器。我们提出了一个公式,将来自AE的重构样本视为判别器的“真实”样本。这将AE的收敛与判别器的收敛耦合起来,有效地减缓了判别器的收敛并减少了梯度消失。重要的是,我们提出了两种新的距离约束来改进生成器。首先,我们提出了一个潜在数据距离约束来强制潜在样本距离和相应的数据样本距离之间的兼容性。我们使用这个约束来显式防止生成器模式崩溃。其次,我们提出了一个判别器-分数距离约束,通过判别器分数将生成样本的分布与真实样本的分布对齐。我们使用这个约束来指导生成器合成类似于真实样本的样本。我们提出的使用这些距离约束的GAN,即Dist-GAN,可以在基准数据集中获得比最先进的方法更好的结果:合成、MNIST、MNIST- 1k、CelebA、CIFAR-10和STL-10数据集。

1 简介

生成对抗网络[12](GAN)已经成为学习生成模型的主导方法。它可以产生非常视觉上吸引人的样本,而对模型的假设很少。GAN可以在不明确估计数据分布的情况下产生样本,例如以分析形式。GAN有两个相互竞争的主要组件,它们通过竞争而改进。第一个组件是生成器G,它将低维随机噪声$z\sim P_z$作为输入,并将它们映射到高维数据样本,$x\sim P_x$。先验分布$P_z$通常是均匀的或正态的。同时,GAN使用第二个组件,一个判别器D,来区分样本是从生成器分布$P_G$还是数据分布$P_x$中抽取的。训练GAN是一个对抗性的过程:当判别器D学会更好地区分真实或虚假样本时,生成器G学会混淆判别器D接受其输出为真实。生成器G使用判别器的分数作为反馈,随着时间的推移改进自己,最终可以近似数据分布。

尽管结果令人鼓舞,但众所周知GAN很难训练,需要仔细设计模型架构[11,24]。例如,判别器和生成器容量之间的不平衡通常会导致收敛问题,例如梯度消失和模式崩溃。梯度消失发生在判别器的梯度饱和时,生成器没有信息梯度可以学习。它发生在判别器可以很好地区分“真实”和“虚假”样本时,然后生成器可以近似数据分布。模式崩溃是另一个至关重要的问题。在模式崩溃中,生成器被折叠成一个典型的参数设置,它总是生成小多样性的样本。

已经提出了几种GAN的变体[24,22,26,4,29]来解决这些问题。其中一些是基于自动编码器(AE)的GAN。AE显式地将数据样本编码到潜在空间中,这允许以较低的维度表示数据样本。它不仅具有稳定GAN的潜力,还适用于其他应用,例如维降。AE还被用作生成模型的重要类别的一部分,即变分自动编码器(VAE)[17,25,6],它对于学习推理/生成模型具有吸引力,可以带来更好的对数可能性[28]。这些鼓励了许多遵循这一方向的最新工作。他们将编码器/解码器作为推理模型来改进GAN训练[10,9,19],或者使用AE来定义判别器目标[30,5]或生成器目标[7,27]。其他人提议将AE和GAN[21,18]结合起来。

在这项工作中,我们提出了一种新的设计来统一AE和GAN。我们的设计可以稳定GAN训练,缓解梯度消失和模式崩溃问题,并更好地逼近数据分布。我们的主要贡献是改进生成器的两个新颖的距离约束。首先,我们提出了<u>潜在数据距离约束</u>。这加强了潜在样本距离和相应数据样本距离之间的兼容性,因此,防止生成器产生许多彼此接近的数据样本,即模式崩溃。其次,我们提出了<u>判别器-分数距离约束</u>。这将假样本的分布与真实样本的分布对齐,并引导生成器合成类似于真实样本的样本。我们提出了一种新颖的公式,通过判别器分数对齐分布。与使用合成和基准数据集的最先进方法相比,我们的方法实现了更好的稳定性、平衡性和竞争性标准分数。

2 相关工作

不收敛问题一直是GAN研究的一个重要问题,而梯度消失和模态坍塌是其中最重要的问题[11,3]。为了解决这些问题,人们提出了许多GAN的重要变种。改进的GAN[26]引入了特征匹配、小批量识别和历史平均等技术,大大减少了模式崩溃。展开GAN[22]试图改变优化过程来解决收敛和模态崩溃问题。[4]分析了GAN算法的收敛性。他们提出的GAN变体WGAN利用了Wasserstein距离,并证明了其比Jensen Shannon (JS)发散更好的收敛性,后者此前在vanilla GAN[12]中使用过。然而,WGAN要求鉴别器必须位于1-Lipschitz函数的空间上,因此,它必须通过减重技巧对鉴别器施加规范批评。[13]通过惩罚插值样本的梯度范数来改变权重剪取来稳定WGAN。最近的工作SN-GAN[23]提出了一种权重归一化技术,称为谱归一化,以减慢鉴别器的收敛速度。该方法通过对网络层权矩阵的谱范数进行归一化来控制Lipschitz常数。

其他工作已经将AE集成到GAN中。AAE[21]通过AE学习推理,并通过编码器和判别器之间的极小极大博弈将编码的潜在分布匹配到给定的先验分布。用AE损失正则化生成器可能会导致模糊问题。这种正则化不能保证生成器能够近似井数据分布并克服模式缺失。VAE/GAN[18]将VAE和GAN组合成一个模型,并使用特征方面的距离进行重构。由于依赖于VAE[17],VAEGAN还需要反向传播的重新参数化技巧,或者需要访问先验分布的精确函数形式。InfoGAN[8]通过最大化诱导潜在代码的互信息来学习解开表示。EBGAN[30]引入了基于能量的模型,其中判别器被认为是通过重构误差最小化的能量函数。BEGAN[5]通过优化AE损失分布之间的Wasserstein距离来扩展EBGAN。ALI[10]和BiGAN[9]将数据编码为潜在的,并在GAN框架中联合训练数据/潜在样本。该模型可以在训练后隐式学习编码器/解码器模型。MDGAN[7]需要两个鉴别器用于两个单独的步骤:流形和扩散。流形步骤倾向于学习一个好的AE,扩散目标与原始GAN目标相似,不同之处在于使用构建的样本而不是真实样本。

在文献中,VAEGAN和MDGAN在使用AE改进生成器方面与我们的工作最相关。然而,我们的设计明显不同:(1)VAEGAN结合KL发散和重构损失来训练推理模型。在这种设计中,它需要一种精确的先验分布形式和重新参数化技巧,以通过反向传播解决最优化的问题。相比之下,我们的方法通过数据和潜在样本距离来约束AE。我们的方法适用于任何先验分布。(2)与MDGAN不同,我们的设计不需要两个判别器。(3)VAEGAN认为重构样本是“假的”,MDGAN在其流形步骤中也采用了这一点。相比之下,我们将它们用作“真实的”样本,这对于抑制判别器以避免梯度消失很重要,因此,减少模式崩溃。(4)其中两种方法仅通过重构损失来正则化G。这不足以解决模式崩溃。我们进行了分析并解释了为什么AE需要额外的正则化。实验结果表明,我们的模型优于MDGAN和VAEGAN。

image-20231107172111939

图1.(a)MNIST数据集的数据样本观察到的模式崩溃,以及(b)它们对应的均匀分布的潜在样本。当网络容量较小或发生器/判别器网络设计不平衡时,模式崩溃经常发生。

image-20231107192524426

图2。潜在空间可视化:通过(a)DCGAN,(b)WGANGP,(c)我们的Dist-GAN2(没有潜在数据距离)和(d)我们的Dist-GAN3(我们提出的潜在数据距离)获得的55K二维潜在变量的标签。GAN设置在实验结果部分中定义。

3 提出的方法

模式崩溃是GAN的一个重要问题。在本节中,我们首先提出了一种可视化模式崩溃的新方法。基于可视化结果,我们提出了一种新的模型,Dist-GAN来解决这个问题。

3.1 在潜在空间中可视化模式崩溃

模式崩溃发生在“生成器崩溃到它总是发出相同点的参数设置。当崩溃到单一模式迫在眉睫时,判别器的梯度可能指向许多相似点的相似方向。”[26]。以前的工作通常通过可视化几个崩溃的样本(从先验分布的随机潜在样本生成)来检查模式崩溃。图1a是一个例子。然而,数据空间是高维的,因此很难可视化数据空间中的点。另一方面,潜在空间是低维且可控的,并且可以可视化整个2D/3D空间。因此,在潜在空间中检查模式崩溃可能是有利的。然而,问题是GAN不可逆地将数据样本映射回潜在空间。因此,我们提出以下方法来可视化样本并检查潜在空间中的模式崩溃。我们应用了一个现成的分类器。这个分类器预测生成样本的标签。我们根据潜在样本可视化这些类标签,见图1b。这是可能的,因为对于许多数据集,如MNIST,预训练的分类器可以达到高准确率,例如0.04%的错误率。

3.2 距离约束:动机

图1b是使用这种技术的潜在样本可视化,潜在样本均匀分布在[−1,1]的2D潜在空间中。图1b清楚地表明了模式崩溃的程度:来自潜在空间大区域的许多潜在样本被折叠成同一个数字,例如“1”。即使一些潜在样本彼此相距很远,它们也映射到同一个数字。这表明,当有许多潜在样本映射到数据空间的小区域时,具有参数θ的生成器$G_θ$具有模式崩溃:

image-20231107201511292

这里{$z_i$}是潜在样本,{$x_i$}是$G_θ$对应的合成样本。$f$是数据空间中的某个距离度量,$δ_x$是数据空间中的一个小阈值。因此,我们建议使用潜在空间中的距离度量$g$和该度量的一个小阈值$δ_z$来抑制$G_θ$,如下所示:

image-20231107201745135

然而,确定两个不同维度空间的好函数$f$,$g$及其阈值$δ_x$,$δ_z$并不简单。此外,将这些约束应用于GAN并不简单,因为GAN只有从潜在到数据样本的单向映射。在下一节中,我们将提出新颖的公式来表示潜在数据距离中的这种约束,并将其应用于GAN。

我们还尝试将这种可视化应用于MNIST数据集上的两种最先进的方法:DCGAN[24],WGANGP[13](使用[13]的代码)。请注意,我们所有的实验都是在无监督设置中进行的。这里使用现成的器来确定生成样本的标签,仅用于可视化目的。图2a和图2b分别表示DCGAN和WGANGP的55K潜在变量在70K迭代时的标签。图2a揭示了DCGAN分类是部分折叠的,因为它根据其潜在变量在先验分布的右下角左上角附近生成非常少的数字“5”和“9”。相比之下,WGANGP没有模式折叠,如图2b所示。然而,对于WGANGP,每个数字对应的潜变量在许多子区域中都是碎片化的。这对WGANGP来说是一个有趣的观察。我们将对此进行研究,作为我们未来的工作。

3.3 利用距离约束改进GAN

我们应用公式2的思想通过AE来改进生成器。我们应用AE将数据样本编码为潜在变量,并使用这些编码的潜在变量来指导生成器从整个潜在空间的映射。首先,我们训练一个AE(编码器$E_ω$和解码器$G_θ$),然后我们训练判别器$D_γ$和生成器$G_θ$。这里,生成器是AE的解码器, ω, θ, γ 分别是编码器、生成器和判别器的参数。训练AE的两个主要原因是:(i)在每个训练迭代处正则化参数θ,(ii)指导生成器合成类似于真实训练样本的样本。我们引入一个额外的潜在数据距离约束来训练AE:

image-20231107202840548

其中$L_R(\omega, \theta)=\left|\mathrm{x}-G_\theta\left(E_\omega(\mathrm{x})\right)\right|2^2$是常规AE目标。潜数据距离约束$L_W(\omega, \theta)$是为了正则化生成器并防止它被折叠。这个术语将在后面讨论。这里,$\lambda{\mathrm{r}}$是常数。重构样本$G_\theta\left(E_\omega(\mathrm{x})\right)$ 可以近似为$G_\theta\left(E_\omega(\mathrm{x})\right)=\mathrm{x}+\varepsilon$,,其中 $\varepsilon$ 是重构误差。通常 $E$ 和 $G$ 的容量足够大,因此很小(如噪声)。因此,将那些重构样本视为“真实”样本是合理的(加上噪声 $\varepsilon$ )。像素级重构可能会导致模糊。为了规避这一点,我们改为使用特征级距离[18]或类似的特征匹配[26]:$L_R(\omega, \theta)=\left|\Phi(\mathrm{x})-\Phi\left(G_\theta\left(E_\omega(\mathrm{x})\right)\right)\right|2^2$。这里$\Phi(\mathrm{x})$是从深度网络的一些中间层得到的高级特性,在我们的实现中 $\Phi(\mathrm{x})$ 是判别器 $D\gamma$最后一个卷积层的特征输出,注意在第一次迭代中,判别器的参数是随机初始化的,用这个判别器产生的特征来训练AE。

我们的框架如图3所示,我们建议按照以下顺序训练编码器 $E_\omega$、生成器$G_\theta$和判别器 $D_\gamma$ :(i)固定 $D_\gamma$ 并训练 $E_\omega$和$G_\theta$以最小化重构损失Eq. 3(ii)固定 $E_\omega$,$G_\theta$,并训练 $D_\gamma$ 以最小化(Eq. 5),以及(iii)固定 $E_\omega$,$D_\gamma$并训练 $G_\theta$ 以最小化(Eq. 4)。

生成器和判别器目标在训练生成器时,最大化常规生成器目标$\mathbb{E}{\mathrm{z}} \sigma\left(D\gamma\left(G_\theta(\mathrm{z})\right)\right)$[12]往往会在高密度模式下产生样本,而这容易导致模式崩溃。在这里,σ表示Sigmoid函数,E表示期望。相反,我们用我们提出的“判别器-分数距离”来训练生成器。我们用L1距离将合成样本分布与真实样本分布对齐。对齐是通过别判器分数,参见Eq. 4。理想情况下,生成器合成与从真实分布中抽取的样本相似的样本,这也有助于减少模式缺失问题。

image-20231107203854387

image-20231107203913499

图3。Dist-GAN的结构包括编码器(E)、生成器(G)和鉴别器(D),重构后的样本被认为是“真实的”。利用输入样本、重构样本和生成样本,以及输入噪声和编码潜噪声,共同构造对AE的潜数据距离约束(使AE有规律)。

判别器的目标函数如Equ 5所示。它在两个方面不同于GAN的原始判别器。首先,我们将重构样本指示为“真实的”,用术语 $L_C=\mathbb{E}{\mathrm{x}} \log \sigma\left(D\gamma\left(G_\theta\left(E_\omega(\mathrm{x})\right)\right)\right)$ 表示。将重构样本考虑为“真实的”可以系统地减慢判别器别的收敛,使得来自判别器的梯度不会过快饱和。特别是,判别器的收敛与AE的收敛相耦合。这是一个重要的约束。相比之下,如果我们在我们的模型中将重构视为“假的”,这会加快判别器收敛,判别器收敛速度比生成器和编码器都快。这导致 $D_\gamma$的梯度饱和。其次,我们对判别器目标(Equ 5)应用梯度惩罚 $L_P=\left(\left|\nabla_{\hat{\mathrm{x}}} D_\gamma(\hat{\mathrm{x}})\right|2^2-1\right)^2$ ,其中 $\lambda{\mathrm{p}}$ 是惩罚系数,并且$\hat{\mathrm{x}}=\epsilon \mathrm{x}+(1-\epsilon) G(\mathrm{z}), \epsilon$是一个均匀的随机数 $\epsilon \in U[0,1]$。这个惩罚被用来强制Wasserstein-1距离的Lipschitz约束[13]。在这项工作中,我们还发现这对JS发散和稳定我们的模型很有用。应该注意的是,单独使用这个梯度惩罚不能解决收敛问题,类似于WGANGP。当将此与我们在Eq 4中提出的生成器目标相结合时,问题得到了部分解决,即,判别器-分数距离。但是,问题不能完全解决,例如,具有2D潜在输入的MNIST数据集上的模式崩溃,如图2c所示。因此,我们将提出的潜在数据距离约束作为AE: $L_W(\omega, \theta)$的附加正则化项,将在下一节中讨论。

image-20231107205221876

通过潜在数据距离约束正则化自动编码器:在本节中,我们讨论了潜在数据距离约束$L_W(ω, θ)$ 正则化AE以减少生成器(AE中的解码器)中的模式崩溃。特别是,我们使用噪声输入来约束编码器的输出,同时重构样本以约束生成器的输出。当生成器在给定不同潜在输入的情况下合成数据空间中样本的低多样性时,就会发生模式崩溃。因此,为了减少模式崩溃,我们旨在实现:如果潜在空间中任意两个潜在变量$g(z_i,z_j)$的距离小(大),则数据空间中相应的距离$f(x_i,x_j)$应该小(大),反之亦然。我们提出了一个潜在数据距离正则化$L_W(ω, θ)$:

image-20231107205740833

其中$f$和$g$是在数据和潜在空间中计算的距离函数。$λ_w$是由于维数的差异而产生的比例因子。在不同维数的空间中比较距离并不是直接的。因此,我们不使用直接的距离函数,例如欧几里得、L1范数等,而是比较真实和虚假分布的匹配分数$f(x, G_θ(z))$和两个潜在分布的匹配分数$g(E_ω(x), z)$。我们使用均值作为匹配分数。具体来说

image-20231107210111073

image-20231107211501272

图4.(a)不同维数均匀分布的$M_d$输出的一维频率密度。(b)模式崩溃时密度的一个例子。(c)通过不同方法获得的真实数据和生成数据的一维密度:DCGAN(kldiv: 0.00979)、WGANGP(kldiv:0.00412)、DIST-GAN2(没有AE的数据潜在距离约束,kldiv:0.01027)和DIST-GAN(kldiv:0.00073)。

image-20231107211627833

其中$M_d$计算输入的所有维度的平均值。图4a说明了由$M_d$从不同维度的[−1,1]均匀分布映射的10000个随机样本的1D频率密度。我们可以看到来自高维空间的$M_d$的输出值很小。因此,我们规定(公式6)中的$λ_w$来解释维度的差异。经验上,我们发现$λ_w=\sqrt \frac {d_z} {d_x}$是合适的,其中$d_z$和$d_x$分别是潜在和数据样本的维度。图4b显示了模式崩溃情况的频率密度。我们可以观察到生成样本的1D密度与真实数据的1D密度明显不同。图4c比较了不同方法生成的55K MNIST样本的1D频率密度。我们的GAN方法可以比DCGAN和WGANGP更好地估计生成样本和真实样本密度之间的KL散度(kldiv)。

整个算法在algorithm . 1中给出。

4 实验结果

4.1 合成数据

我们所有的实验都是使用无监督设置进行的。首先,我们使用合成数据来评估我们的距离GAN能够很好地近似数据分布。我们在类似于[10]的网格布局中使用25个高斯模式的合成数据集。我们的数据集包含2D中的50K训练点,我们绘制2K生成的样本进行测试。为了公平比较,如果可能的话,我们在相同的实验条件下对所有方法使用等效的架构和设置。架构和网络大小类似于8高斯数据集上的[22],除了我们使用了一个更多的隐含层。我们使用全连接层和RELU的单元(线性流函数)激活输入和隐藏层,Sigmoid输出层。编码器、生成器和判别器的网络大小呈现在补充材料的表1中,其中$d_{in}=2$,$d_{out}=2$,$d_h=128$分别是输入、输出和隐藏层的维度。$N_h=3$是隐藏层的数量。编码器的输出维度是潜变量/隐变量的维度。我们的先验分布是均匀的[−1,1]。我们使用学习率lr=0.001的Adam优化器,第一矩$β_1$的指数衰减率=0.8。学习率每10K步衰减一次,基数为0.9。迷你批次大小为128。训练在500个纪元后停止。为了进行公平的比较,我们仔细微调其他方法(如果这获得更好的结果,并在训练期间使用权重衰减),以确保它们在合成数据上达到最佳结果。对于评估,如果注册到该模式的生成样本少于20个,则错过一个模式,该模式由其均值和0.01的方差[19,22]测量。如果有缺失模式,一种方法会模式崩溃。在本实验中,我们固定参数$λ_r=0.1$(Eq3),$λ_p=0.1$(Eq5),$λ_w=1.0$(Eq6)。对于每种方法,我们重复八次运行并报告平均值。

image-20231107212206976

图5.从左到右的数字:(a),(b),(c),(d)。合成数据集上两种不同设置的我们方法的注册模式(a)和点(b)的数量。我们将我们的Dist-GAN与基线GAN[12]和同一数据集上的其他方法进行比较,这些方法由注册模式(类)(c)和点(d)的数量测量。

首先,我们强调我们的模型能够近似合成数据的分布$P_x$。我们进行了消融实验,以了解不同设置下每个提出的组件的影响:

  • Dist-GAN1:对生成器目标(LG)和AE损失LR使用“判别器-分数距离”,但不使用数据潜在距离约束项(LW)和梯度惩罚(LP)。此设置有三个不同的版本,即在判别器目标中使用重构样本(LC)作为“真实”、“虚假”或“无”(不使用它)。
  • Dist-GAN2:通过添加梯度惩罚LP改进Dist-GAN1(将重建样本视为“真实”)。
  • Dist-GAN:改进了Dist-GAN2,增加了数据潜在距离约束LW。(详见补充资料表3)。

image-20231107214104476

图6.不同方法得到的模式平衡。

定量结果如图5所示。图5a是在训练过程中发生变化的配准模式数。DIST-GAN1遗漏了少数模式,而DIST-GAN2和DEF-GAN在大约50个纪元后生成了所有25个模式。由于它们几乎不遗漏任何模式,因此比较配准点数是合理的,如图5b所示。将重构样本视为“真实”比将它们视为“虚假”或“无”获得更好的结果。当不使用判别器中的重构样本(“无”选项)时,DIST-GAN1获得类似的结果作为基线GAN是合理的。其他结果显示了将梯度惩罚添加到判别器(DIST-GAN2)时的改进。当与DIST-GAN2进行比较时,Dist-GAN证明了使用所提出的潜在数据约束的有效性。

为了突出我们对生成器提出的“鉴别器-评分距离”的有效性,我们使用它来改进基线GAN[12],表示为GAN1。然后,我们提出了GAN2,通过添加梯度惩罚来改进GAN1。我们可以看到,结合我们提出的生成器目标和梯度惩罚可以提高GAN的稳定性。我们将我们的最佳设置(Dist-GAN)与之前的工作进行了比较。ALI[10]和DAN-2S[19]是最近在其模型中使用编码器/解码器的作品。VAE-GAN[18]引入了类似的模型。WGAN-GP[13]是当前最先进的技术之一。图5c和图5d分别给出了覆盖模态数和注册点数。上个纪元的数量见补充材料的表2。在这个表格中,我们还报告了Total Variation分数来衡量模式平衡。每种方法的结果都是八次运行的平均值。我们的方法在覆盖模式的数量上优于GAN[12]、DAN-2S[19]、ALI[10]和VAE/GAN[18]。虽然WGAN-GP有时会丢失一个模态并发散,但我们的方法(Dist-GAN)在所有八次运行中都不会遭遇模式崩溃。此外,我们获得了比WGAN-GP和其他所有人更高的注册样本数量。我们的方法也比Total Variation (TV)[19]的其他方法更好。图6为所生成的25种模式样本的细节比例。(在补充材料的第2节中有更多生成样品的可视化)。

image-20231107214615435

图7.一个迷你批次中的真实样本和我们生成的样本。以及我们的方法在MNIST数据集上获得的每个类的生成样本数。我们通过KL散度将生成样本的频率与真实情况进行比较:KL=0.01。

4.2 MNIST-1K

对于图像数据集,我们使用Φ(x)代替x作为重构损失和潜在数据距离约束,以避免模糊。我们将$λ_p = 1.0$和$λ_r = 1.0$的参数固定在所有运行良好的图像数据集上。根据特征Φ(x)和潜在样本的维数自动计算$λ_w$。我们的MNIST模型实现使用了WGAN-GP[13]发布的代码。图7从左到右分别为我们的标准MNIST方法生成的真实样本、生成的样本以及每个数字的频率。结果表明,该方法能较好地逼近MNIST数字分布。此外,我们生成的样本看起来逼真与不同的风格和笔触,类似于真实的。此外,我们按照[22]中的步骤构建更具挑战性的1000类MNIST (MNIST- 1k)数据集。它有1000种模式,从000到999。我们总共创建了25,600张图像。我们通过计算覆盖模式的数量(至少有一个样本[22])和计算KL散度来比较方法。为了公平起见,我们采用了[22]提出的等效网络结构(低容量发生器和两个残疾鉴别器K/4和K/2)。表1给出了比较方法的模态数和KL散度。结果表明,我们的方法在覆盖模式数量上优于其他方法,特别是在低容量鉴别器(K/4架构)下,我们的方法比第二优方法多150个模式。我们的方法缩小了两种架构之间的差距(约60种模式),比其他方法要小。对于这两个体系结构,我们在KL发散和恢复模式的数量上都获得了更好的结果。所有的结果都支持我们提出的Dist-GAN处理更好的模态崩溃,并且即使在生成器和鉴别器不平衡的情况下也具有鲁棒性。

5 CelebA, CIFAR-10和STL-10数据集

利用CelebA数据集与DCGAN[24]和WGANGP [13]数据集进行比较。我们的实现基于开源[2,1]。图8为DCGAN、WGANGP和Dist-GAN生成的样品。而DCGAN在第50期轻微塌陷,WGAN-GP有时会产生破碎的面。我们的方法没有这些问题,可以生成可识别的和现实的脸。我们还报告了使用DCGAN架构[24]和发布的代码[13]的CIFAR-10数据集的结果。我们在这个数据集上训练的方法生成的样本可以在补充材料的第4节中找到。对于定量结果,我们报告两个数据集的FID分数[15]。FID可以检测类内模式下降,并测量生成样本的多样性和质量。我们遵循[20]中的实验过程和模型体系结构。对于CelebA和CIFAR-10,我们的方法优于其他方法,如表2的第一行和第二行所示。这里,其他GAN方法的结果来自[20]。我们还报告了这些数据集上的VAEGAN的FID评分。我们的方法比VAEGAN好。请注意,我们也尝试了MDGAN,但是对于这两个数据集,它模式崩溃严重。因此,我们没有在论文中报告其结果。

image-20231108103113559

表1。方法的MNIST1K比较。我们遵循Unrolled GAN的设置和网络架构。

image-20231108103351437

图8。生成了DCGAN(50个epoch,来自[1])、WGAN-GP(50个epoch,来自[1])和我们的Dist-GAN(50个epoch)样品。

最后,我们将我们的模型与最近在CIFAR-10和STL-10数据集上使用标准CNN结构的SN-GAN[23]进行了比较。实验设置与[23]相同,FID为比较分数。结果显示在表2的第三至第五行中。除了使用合成数据集报告的设置外,我们还对图像数据集进行了额外的设置和消融研究,这在补充材料的第5节中有报道。结果证实了我们的模型的稳定性,并且我们的方法在CIFAR-10数据集上优于SN-GAN。有趣的是,当我们用[23]中的“hinge loss”函数替换“log”时,我们的“hinge loss”版本在使用FID = 22.95时表现得更好,而SN-GAN的FID = 25.5时则更好。值得注意的是,我们的模型是用默认参数$λ_p = 1.0$和$λ_r = 1.0$训练的。我们的生成器需要大约200K次迭代,小批量大小为64次。当我们将我们的“hinge loss”版本应用于类似于[23]的STL-10数据集时,该模型的FID评分为36.19,也优于SN-GAN (FID = 43.2)。我们还将我们的模型与CIFAR-10上的SN-GAN模型进行了比较,其ResNet架构与[23]中的类似。我们的FID = 17.61±0.30明显优于SN-GAN的FID = 21.70±0.21。这再次证实了我们提出的GAN模型的鲁棒性和质量。

image-20231108110024524

表2。将FID评分与其他方法进行比较。前两行(CelebA, CIFAR-10)遵循[20]的实验设置,第二行遵循标准CNN架构的[23]的实验设置,最后一行是ResNet架构。

5 总结

我们提出了一种鲁棒的基于AE的GAN模型,具有新颖的距离约束,称为Dist-GAN,可以有效地解决模式崩溃和梯度消失问题。我们的模型与以前的工作不同:(i)我们提出了一个新的生成器目标,使用“判别器-分数距离”。(ii)我们建议将判别器的收敛与AE的收敛结合起来,将重建样本视为“真实”样本(iii)我们建议通过“潜在数据距离约束”来正则化AE,以防止生成器陷入模式崩溃设置。大量的实验表明,我们的方法可以拟合多模态分布。我们的方法大大减少了MNIST-1K的模式崩溃。我们的模型是稳定的,并且对于MNIST、CelebA、CIFAR-10和STL-10数据集没有模式崩溃。此外,我们比以前的工作获得了更好的FID分数。这些证明了所提出的Dist-GAN的有效性。未来的工作将我们提出的Dist-GAN应用于不同的计算机视觉任务[16,14]。

标签:Distance,Improved,判别,样本,生成器,GAN,AE,我们
From: https://blog.51cto.com/coderge/8256027

相关文章

  • Pytorch 实现 GAN 网络
    Pytorch实现GAN网络原理GAN的基本原理其实非常简单,假设我们有两个网络,G(Generator)和D(Discriminator)。它们的功能分别是:G是一个生成网络,它接收一个随机的噪声z,通过这个噪声生成伪造数据,记做G(z)。D是一个判别网络,判别数据是不是“真实的”。它的输入参数是x,输出记为D(x)......
  • [论文阅读] EMO@ Earth Mover Distance Optimization for Auto-Regressive Language M
    Pretitle:EMO:EarthMoverDistanceOptimizationforAuto-RegressiveLanguageModelingaccepted:arXiv2023paper:https://arxiv.org/abs/2310.04691code:https://github.com/DRSY/EMOref:https://spaces.ac.cn/archives/9797关键词:language-modeling,optimalt......
  • [论文阅读] [SNGAN] Spectral Normalization for Generative Adversarial Networks
    1802.05957.pdf(arxiv.org)MiyatoT,KataokaT,KoyamaM,etal.Spectralnormalizationforgenerativeadversarialnetworks[J].arXivpreprintarXiv:1802.05957,2018.生成式对抗网络的频谱归一化,相比于WGAN-GP在激进的学习率和β1&β2下表现更好引用:4453代码:https:......
  • 马氏距离 Mahalanobis Distance
    马氏距离是由印度统计学家马哈拉诺比斯(P.C.Mahalanobis)提出的,表示数据的协方差距离。它是一种有效的计算两个未知样本集的相似度的方法。与欧式距离不同的是它考虑到各种特性之间的联系(例如:一条关于身高的信息会带来一条关于体重的信息,因为两者是有关联的),并且是尺度无关的(scal......
  • [论文阅读] [WGAN-GP] Improved Training of Wasserstein GANs
    [1704.00028]ImprovedTrainingofWassersteinGANs(arxiv.org)GulrajaniI,AhmedF,ArjovskyM,etal.Improvedtrainingofwassersteingans[J].Advancesinneuralinformationprocessingsystems,2017,30.代码:igul222/improved_wgan_training:Codeforrepr......
  • 甘特图组件DHTMLX Gantt用例 - 如何拆分任务和里程碑项目路线图
    创建一致且引人注意的视觉样式是任何项目管理应用程序的重要要求,这就是为什么我们会在这个系列中继续探索DHTMLXGantt图库的自定义。在本文中我们将考虑一个新的甘特图定制场景,DHTMLXGantt组件如何创建一个项目路线图。用例-带有自定义时间尺度、拆分任务和文本标签的项目路线......
  • GAN卫星图(1)
     GeoGAN:从卫星图像中生成地图的标准层GeoGAN:AConditionalGANwithReconstructionandStyleLosstoGenerateStandardLayerofMapsfromSatelliteImageshttps://blog.csdn.net/zn0412/article/details/118964517 GeoGAN模型将指定缩放级别和分辨率的卫星图像作为......
  • (一)GAN实战
    一、代码importtorchfromtorchimportnn,optim,autogradimportnumpyasnpimportvisdomfromtorch.nnimportfunctionalasFfrommatplotlibimportpyplotaspltimportrandomh_dim=400batchsz=512viz=visdom.Visdom()classGenerat......
  • (二)WGAN实战
    一、WGAN实战importtorchfromtorchimportnn,optim,autogradimportnumpyasnpimportvisdomfromtorch.nnimportfunctionalasFfrommatplotlibimportpyplotaspltimportrandomh_dim=400batchsz=512viz=visdom.Visdom()classGene......
  • CodeForces 1246F Cursor Distance
    洛谷传送门CF传送门发现一个性质:能跳不超过\(j\)步到达\(i\)的所有点形成一段区间。设这这段区间为\([L_{i,j},R_{i,j}]\)。那么答案即为:\[\sum\limits_{i=1}^n\sum\limits_{j=0}n-R_{i,j}+L_{i,j}-1\]并且:\[[L_{i,j},R_{i,j}]=\bigcup\limits_......