On Stabilizing Generative Adversarial Training with Noise 翻译

原论文连接

摘要

我们提出了一种新的方法来稳定地训练生成式对抗网络。如最近的分析所示,数据在其空间邻域上的概率分布如果为零会影响训练的效果。我们注意到,真实数据和生成数据的分布应该匹配,即使它们经过相同的滤波器。因此,为了解决有限的支撑集问题,我们建议使用真实分布和生成分布的不同滤波版本来训练GANs。通过这种方式,滤波不仅不会阻止数据分布的精确匹配,而且可以通过扩展这两种分布的支撑集来稳定训练。在滤波时,我们考虑将任意分布的样本加入到数据中,这相当于数据分布与任意分布的卷积。我们也建议学习这些样本的生成,以便在对抗性训练中对鉴别器提出挑战。结果表明,我们的方法得到了一个稳定的,良好的训练,即使是在原始的极大极小GAN公式中。此外,我们的技术可以应用于大多数现代GAN公式,并且在几个常见数据集中其性能都得到了提高。

1.介绍(Introduction)

自[6]做出的开创性工作以来,由于生成对抗网络(GAN)产生的样本的质量高,特别是应用于自然图像空间时,GAN被广泛使用和分析。不幸的是,GANs仍然很难训练。事实上,普通的GAN实现并不收敛于高质量的样本生成器,同时,用于改进生成器的启发式方法也常常表现出不稳定的行为。因此,出现了大量关于怎样更好地理解GANs的工作。特别是,[1]指出了GANs的不稳定训练是如何由真实数据和模型分布的(有限的和低维的)支撑集造成的。在原来的GAN公式中,生成器是针对极小极大优化问题中的鉴别器进行训练的。鉴别器学习分辨真实样本和虚假样本,而生成器学习生成能够欺骗鉴别器的虚假样本。当真实数据和模型分布的支撑集不相交时,一旦鉴别器达到了完美的分类功能,生成器就停止改进,这阻止了有用信息通过梯度下降传播到生成器(见图1a)。
当真实数据分布pd和生成数据分布pg的概率密度函数不重叠时,鉴别器可以很容易地对样本进行区分。在这些区域中,鉴别器对其输入的梯度为零,这阻止了对生成器的进一步改进。
[1]最近的工作提出,在将生成图像和真实图像输入到鉴别器之前,通过添加噪声来扩展分布的支撑集。这个过程使得真实数据和模型的概率分布变得平滑,这确实拓展了它们的支持集(见图1b)。
增加来自任意分布pE中的样本 到 真实数据和生成样本中,可以得到滤波后的分布版本 pd ∗ pE 和 pg ∗ pE.由于滤波后分布的支撑集重叠,使得鉴别器的梯度不为零,从而提高了鉴别器的性能。但是,原始分布的高频成分缺失。
为简单起见,假设数据的概率密度函数定义良好,用pd表示。然后, 通过在真实数据分布 x ∼ pd中添加来自噪声E ∼ pE 的样本,得到样本 x‘ = x + E, 也就是概率 密度 函数 pd,E = pE * pg 的实例, ∗ 表示卷积操作。 pd,E 的 支撑集是pE 和 pd 的支撑集的闵可夫斯基之和, 因此比 pd的支撑集大。同样地, 在生成器概率密度pg中添加噪声, 可以得到平滑概率密度 pg,E = pE ∗ pg。已经被用于最大似然方法中的“添加噪声”是一个非常著名的技术, 但 其被认为是不可取的, 因为它很可能会产生生成低质量模糊样本的生成模型。事实上,大多数添加噪声的公式都会导致模型去寻找能最优化解决pd,E = pg,E问题的模型分布pg。然而, 这通常会导致一个低质量的pg 因为 pd ∗ pE会丢失pd的高频内容。一个直接的解决方案是使用一种噪声退火的形式,其中噪声方差最初很高,然后在迭代过程中逐渐降低,以便最终匹配原始分布,而不是平滑分布。这会得到一个改进的训练,但当噪声方差接近零,优化问题收敛到原来的公式,以往的不稳定行为可能会对算法造成伤害。
在这项工作中,我们设计了一个新的对抗训练程序,它是稳定的,并产生准确的结果。我们证明,在某些一般假设下,可以在不影响原始无噪声公式的最优性条件的情况下,用附加噪声修正数据和生成的概率密度。作为原始使用z∼N (0,Id)和x∼pd的公式的一个替代方案
其中D表示鉴别器
我们提出通过求解以下优化来训练生成模型G
在这里插入图片描述
我们引入了一个概率密度函数的集合S。如果我们求解(2)中最里面的优化问题,那么我们就得到了最优鉴别器其中pg定义为G(z)的概率密度,z∼N (0,Id)。
如果我们把这个代入上面的问题并化简,我们就会得到
where JSD is the Jensen-Shannon divergence.
我们证明了在适当的假设下,(4)问题的最优解是唯一的,且就是解决pg = pd。还有, 不论pd的支撑集是什么,【公式】拥有比 pd更大 的支撑集, 通过基于梯度下降法的迭代更可能实现全局最小值。因此,我们的公式具有如下性质:1)它定义了一个不受其支撑集影响的概率密度拟合;2)保证数据概率密度函数的精确匹配;3)可方便地应用于其它GAN模型。该方法的简化方案如图2所示。
简化的GAN训练方案。我们还展示了一个噪声生成器N,这将在3.1节中详细解释。鉴别器D需要区分无噪声和有噪声的真实样本以及虚假样本。
在接下来的几节中,我们将详细介绍我们的分析,然后设计一个能够近似问题公式(2)且在计算上可行的方案。我们的方法在cifar -10[12]、STL-10[5]和CelebA[15]上进行了定量评估,在ImageNet[20]和LSUN bedrooms[24]上进行了定性评估。

2.相关工作

GAN训练的固有不稳定性首先通过一些技术和启发式 [22]、仔细的架构设计选择和超参数调优[18]得到解决。[22]提出了使用单边标签平滑和在鉴别器的网络层中加入高斯噪声。Arjovsky等人对训练的不稳定性和梯度消失现象进行了理论分析。他们认为,不稳定的主要根源在于实际分布和生成的分布具有不相交的支撑集或位于低维流形上。当鉴别器达到最优时,这将导致零梯度,然后停止生成器的训练。更重要的是,它们还提供了一种方法,通过引入噪声和考虑“更软”的度量,如瓦瑟斯坦距离,来避免这些困难。[23]也进行了类似的观察,并提出使用在训练过程中逐渐减少的“实例噪声”来克服这些问题。最近的另一项工作以类似的方式稳定了GAN训练,方法是在将样本输入鉴别器[21]之前对其进行转换。然后在训练中逐渐减少转换的数量。与[23][1]和我们的工作不一样,它们只转换真实的例子。[2]建立在[1]的基础上,并引入了Wasserstein GAN (WGAN)。WGAN优化了一个积分概率度量,即与Wasserstein距离的对偶。这个公式要求鉴别器是李普希茨连续的,这是通过权重剪裁来实现的。[7]提供了一种更好的方法来执行Lipschitz约束,方法是对真实数据和生成数据之间的内插值进行梯度惩罚(WGAN-GP)。[19]引入了一种基于与[7]相似的梯度范数惩罚的稳定正则化器。然而,它的公式是根据f-散度推导出来的,是通过对数据点的加入高斯噪声的对抗性训练的解析近似推导出来的。另一种最近的GAN正则化技术是由[17]引入的谱归一化,它限制了鉴别器的Lipschitz常数。该方法在对抗训练的鲁棒性方面展现了最先进的水平。多年来,人们提出了几种替代的损失函数和GAN模型,声称它们比原来的GAN(如[16]、[25]、[3]、[2]、[25]、[11])具有更好的稳定性和样品质量。以前被用在分类中的生成对抗性噪声已经开始被用来提高对抗性扰动[13]的鲁棒性。

3.匹配滤波分布(Matching Filtered Distributions)

我们感兴趣的是找到一个公式,使其作为最优生成器G的真实数据概率密度函数(pdf) pd的采样器,我们认为它已经被定义好。处理pd的主要困难在于它可能在数据空间的某个邻域上为零。基于梯度下降法对问题(1)进行迭代优化,可得到退化解,例如,模型的pdf pg只与pd部分重叠(一种称为模式崩溃的场景)。人们注意到,在训练过程中,将任意分布的样本添加到真实和生成数据样本有助于减少这个问题。事实上, 添加样本E ∼ pE 会模糊最初pdf pd 和 pg, 一个众所周知的操作就是增加他们的支撑集, 这样他们更容易重叠。这种增加的重叠意味着迭代方法可以在更多的位置利用有用的梯度方向,然后更有可能收敛到全局最优。在此基础上,我们提出解决方案来解决替代的问题(2),并在不损失问题(1)原始公式的最优性条件的情况下,寻找增加真实数据pdf pd支撑集的方法。
我们下面的结果,在一定情况下给出了一些可选择的增加噪声方案。我们考虑m×n像素和值在一个紧凑的域Ω⊂Rm×n的图像,这样图像强度从上到下都是有界的。然后,支撑集pdf pd也是有界的,并且包含在Ω中。这意味着pd也在L2(Ω)中。

定理1. 让我们选择S,使得问题(4)可以写成
其中,pE为 平均值为零的高斯函数,且其协方差Σ是正定的. 让我们假设pg的域仅限于Ω(因此pg属于L2(Ω))。然后,问题(5)的全局最优问题就是解决pg (x) = pd (x),任意x 属于Ω。
证明. 当且仅当
在这里插入图片描述
JS散度达到全局极小值。
设pg = pd +∆。然后,我们有【公式】。通过将pg带入公式(6) 得到 ∆ ∗ pE= −∆。因为∆ 和 pE都在L2(Ω)中,我们 可以对两边进行傅里叶变换, 计算其绝对值和获得
在这里插入图片描述
由于pg和pd的积分为1, R∆(x)dx = 0且∆(0)= 0 。假设存在w!= 0,使得∆(^ w)!= 0。因为pE是高斯分布, 【公式】,这与最优性条件(7)矛盾。因此,∆(x) = 0, 任意x属于Ω,我们可以得出这样的结论:pg (x) = pd (x),任意x属于Ω。

3.1方案(Formulation)

根据上面的理论,我们给出了两种方案:
1、高斯噪声给定一个/学习一个固定的标准差σ: pE(E) = N (E; 0,σId);
2、学习噪声:从一个参数为σ的噪声生成器网络N: pE(E) ,其中E = N(w,σ),w~(0,Id)

在这两个方案中我们可以学习参数σ。我们通过对鉴别器求最大值后的最小代价函数来做到这一点。这个最小化鼓励大噪声, 因为这将使 pd,E(w) 更类似于pg,E(w) ,无论 pd 和 pg是什么。这对梯度下降不会很有用。因此,为了限制噪声级,我们引入了正则化项噪声方差Γ(σ)=σ2,或者噪声的欧几里得范数输出图像【公式】,并乘以一个正的可调整的标量λ。
提出的公式可统一写成:
在这里插入图片描述

3.2实现

实现我们的算法只需要对标准GAN框架做一些细微的修改。我们在相同的迭代中对噪声生成器和鉴别器进行了更新。鉴别器的最小批量是通过将所有的假样和真样分两批收集,例如{x1,…,xm,x1 + E1,…,xm + Em}是真实样本的批量,{x’1,…,x‘m,x’1 + E1,…,x‘m + Em}是生成样本的批量。完整的过程在算法1中进行了概述。噪声生成器的结构通常与生成器相同,但是减少了卷积滤波器的数量。由于与标准GAN框架相比,鉴别器的输入增加了一倍,因此DFGAN框架的速度会降低1 / 5到2倍。类似的和更严重的性能下降出现在现有的变种模型(例如,WGAN-GP)。注意,通过构建批次{x1,…,xm/2,xm/2+1 + E1,…,xm + Em/2}训练时间与标准框架相当, 但它更稳定并产生一 精确的生成器。有关运行时间的比较,请参见图4。
比较GANs有和没有滤波分布的滤波壁钟时间通过IS。模型使用表1中指定的体系结构,并在CIFAR-10上进行了训练。该方法引入的计算开销对收敛速度没有负面响。
Table 1

3.3批处理标准化和模式崩溃(Batch-Normalization and Mode Collapse)

目前的最佳实践是将批量归一化分别应用于真、假小批量[4]上的鉴别器。事实上,在我们的实验中,这显示出了比用真假样本各占一半的比例进行小批量输入的效果要好得多的结果。这样做的原因是批处理规范化隐含地考虑了每个小批处理中的样本分布。要了解这一点,请考虑图3中的示例。在假批次和真批次没有单独归一化的情况下,我们可以观察到模态崩溃。对于独立观察每个例子的鉴别器来说,生成器所覆盖的模式是不可分辨的。在这种情况下,没有信号到生成器导致更好的模式收敛。由于虚假和真实批处理分布的前两个时刻显然不匹配,一个单独的归一化将帮助鉴别器区分真实和虚假示例,从而鼓励生成器提供更好的模式覆盖。
说明如何分离正常化的假和真正的小批量阻止模式崩溃。在(a)中没有应用归一化,观察到模式崩溃。由于所覆盖的模式是不可分辨的,因此生成器没有收到任何信号来鼓励更好的模式覆盖。(b)对真实数据和虚假数据分别进行归一化处理。批处理统计数据的不匹配(平均值和标准偏差)现在可以被鉴别器检测到,从而迫使生成器进行改进。
以这种方式使用批处理规范化对我们的方法也是至关重要的。实际上,当鉴别器中没有使用批处理归一化时,生成器往往会产生有噪声的示例。这很难被鉴别器检测到,因为它独立地判断每个例子。为了解决这一问题,我们将有噪声的真实和虚假样本输入鉴别器之前,分别对它们进行归一化处理。我们将此技术用于没有批处理标准化的模型(例如SNGAN)。

PS:实验部分,有时间会补齐。
再PS:看到CSDN上有很多论文翻译,这篇论文也是公开的,如果不可以翻译的话,希望大家也提醒一下,我会删除的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值