首页 > 其他分享 >[论文阅读] [SNGAN] Spectral Normalization for Generative Adversarial Networks

[论文阅读] [SNGAN] Spectral Normalization for Generative Adversarial Networks

时间:2023-11-07 17:35:16浏览次数:35  
标签:Spectral boldsymbol Adversarial GAN 正则 规范化 2017 我们 Normalization

1802.05957.pdf (arxiv.org)

Miyato T, Kataoka T, Koyama M, et al. Spectral normalization for generative adversarial networks[J]. arXiv preprint arXiv:1802.05957, 2018.

生成式对抗网络的频谱归一化,相比于WGAN-GP在激进的学习率和β1&β2下表现更好

引用:4453

代码:https://github.com/pfnet-research/sngan_projection

摘要

生成对抗网络研究的挑战之一是其训练的不稳定性。在本文中,我们提出了一种新的权重规范化技术,称为谱规范化,以稳定判别器的训练。我们的新规范化技术计算量轻,易于合并到现有的实现中。我们在CIFAR10、STL-10和ILSVRC2012数据集上测试了光谱规范化的功效,我们通过实验证实了光谱一归化GANs(SN-GANs)相对于以前的训练稳定技术能够生成质量更好或相等的图像。Chainer(Tokui等人,2015)的代码、生成的图像和预训练的模型都可以在https://github.com/pfnet-research/sngan_projection得到。

1 简介

生成对抗网络(GANs)(Goodfelet al.,2014)作为生成模型的框架,近年来一直享有相当大的成功,并被应用于众多类型的任务和数据集(Radford et al.,2016; Salimans et al.,2016;Ho&Ermon,2016;Li et al.,2017)。简而言之,GANs是一个框架,用于生成模仿给定目标分布的模型分布,它由生成模型分布的生成器和将模型分布与目标区分开来的判别器组成。其概念是依次训练模型分布和判别器,目标是在训练的每一步减少模型分布和由可能的最佳判别器测量的目标分布之间的差异。GAN在机器学习界引起了人们的关注,不仅因为它学习高度结构化概率分布的能力,还因为它在理论上有趣的方面。例如,(nowozin et al.,2016; Uehara et al.,2016;Mohamed&Lakshminarayanan,2017)揭示了判别器的训练相当于训练模型分布和目标之间密度比的良好估计/估计量。这是一个为隐式模型方法打开大门的观点(Mohamed&Lakshminarayanan,2017;Tran et al.,2017),可以用来在不直接了解密度函数的情况下进行变量优化。

GAN训练中的一个持续挑战是判别器的性能控制。在高维空间中,判别器的密度比估计在训练过程中往往是不准确和不稳定的,生成器网络无法学习目标分布的多模态结构。更糟糕的是,当模型分布的支持和目标分布的支持不相交时,存在一个可以完美区分模型分布和目标的判别器(Arjovsky&Bottou,2017)。一旦这样的判别器在这种情况下产生,生成器的训练就会完全停止,因为这样产生的判别器相对于输入的导数结果是0。这促使我们对判别器的选择引入某种形式的限制。

在本文中,我们提出了一种新的权重归一化方法,即频谱归一化,它可以稳定判别器网络的训练。我们的归一化享有以下有利的特性。

  • Lipschitz常数是唯一需要调优的超参数,为了获得满意的性能,算法不需要对唯一的超参数进行密集调优。
  • 实现简单,额外的计算成本小。

事实上,我们的归一化方法即使不调整Lipschitz常数(唯一的超参数)也能很好地工作。在本研究中,我们解释了与其他正则化技术相比,光谱归一化对GANs的有效性,例如权重归一化(saliman & Kingma, 2016)、权重剪裁(Arjovsky et al., 2017)和梯度惩罚(Gulrajani et al., 2017)。我们还表明,在没有正则化技术(例如,批处理归一化、权值衰减和鉴别器上的特征匹配)的情况下,光谱归一化能够比权值归一化和梯度惩罚更好地改善生成图像的质量。

2 METHOD

在本节中,我们将为我们所提出的方法奠定理论基础。让我们考虑一个由如下形式的神经网络构成的简单鉴别器,其输入为$x$:

image-20231106173236000

其中 $\theta:=\left{W^1, \ldots, W^L, W^{L+1}\right}$ 是学习参数集, $W^l \in \mathbb{R}^{d_l \times d_{l-1}}, W^{L+1} \in$ $\mathbb{R}^{1 \times d_L}$, $a_l$ 是一个逐元素的非线性激活函数. 为了简单起见,我们省略了每层的偏置项。鉴别器的最终输出为

image-20231106173420067

其中A是一个激活函数,对应于用户选择的距离测度的散度。GANs的标准公式如下:

61aa4fb8aaade145c79181fc466c8a205929.png (1042×60) (meituan.net)

其中,G和D的min和max分别取生成器函数集和鉴别器函数集。V(G,D)的传统形式(Goodfellow et al., 2014)是$\mathrm{E}{\boldsymbol{x} \sim q{\text {data }}}[\log D(\boldsymbol{x})]+\mathrm{E}{\boldsymbol{x}^{\prime} \sim p_G}\left[\log \left(1-D\left(\boldsymbol{x}^{\prime}\right)\right)\right]$,其中$q{\text {data }}$为数据分布,$p_G$为通过对抗min-max优化学习的(模型)生成器分布。在这个表达式的D中使用的激活函数A是一个范围为[0,1]的连续函数(例如,sigmoid函数)。已知,对于固定生成器G,这种形式的V(G,D)的最佳鉴别器是由$D_G^*(\boldsymbol{x}):=q_{\text {data }}(\boldsymbol{x}) /\left(q_{\text {data }}(\boldsymbol{x})+p_G(\boldsymbol{x})\right)$给出的。

机器学习界最近一直在指出,选择判别器的函数空间至关重要地影响着GAN的性能。一些作品(Uehara et al.,2016; Qi,2017;Gulrajani et al.,2017)主张Lipschitz连续性在保证统计有界性方面的重要性。例如,GAN在上述标准公式上的最优判别器采取的形式

image-20231106174430009

和它的导数

image-20231106174449389

可以是无界的,甚至是不可计算的。这促使我们对f(x)的导数引入一些正则性条件。

在一系列作品中,一个特别成功的作品是(Qi,2017; Arjovsky et al.,2017;Gulrajani et al.,2017),其中提出了通过添加在输入示例x上定义的正则化项来控制判别器Lipschitz常数的方法。我们将跟随他们的脚步,从K-Lipschitz连续函数集合中搜索判别器D,即,

image-20231106174636649

这里我们指的是$|f|_{\text{Lip}}$最小值$M$,使得对于任何$\boldsymbol{x}, \boldsymbol{x}^{\prime}$, $\left|f(\boldsymbol{x})-f\left(\boldsymbol{x}^{\prime}\right)\right| /\left|\boldsymbol{x}-\boldsymbol{x}^{\prime}\right| \leq M$,范数是$\ell_2$范数。

虽然基于输入的正则化允许基于样本的相对简单的公式,但它们也受到这样一个事实的影响,如果不引入一些启发式的方法,它们就不能在生成器和数据分布的支持之外的空间上施加正则化。我们将在本文中介绍的一种方法,称为谱规范化,这种方法旨在通过使用Yoshida & Miyato(2017)设计的技术对权重矩阵进行正则化来绕过这个问题。

2.1 频谱归一化 SPECTRAL NORMALIZATION

我们的谱规范化通过字面上约束每一层$g: \boldsymbol{h}{\text {in }} \mapsto \boldsymbol{h}{\text {out }}$的谱范数来控制判别器函数$f$的Lipschitz常数。根据定义,Lipschitz范数$|g|_{\text {Lip }}$等于 $\sup _{\boldsymbol{h}} \sigma(\nabla g(\boldsymbol{h}))$,其中 $\sigma(A)$ 是矩阵 $A$ 的谱范数( $A$ 的L2矩阵范数)

image-20231106192002304

这相当于A的最大奇异值。因此,对于线性的层$g(\boldsymbol{h})=W \boldsymbol{h}$,范数由$|g|{\text {Lip }}=\sup {\boldsymbol{h}} \sigma(\nabla g(\boldsymbol{h}))=\sup {\boldsymbol{h}} \sigma(W)=\sigma(W)$给出。如果激活函数$\left|a_l\right|{\text {Lip }}$的Lipschitz范数等于1,我们可以使用不等式$\left|g_1 \circ g_2\right|{\text {Lip }} \leq\left|g_1\right|{\text {Lip }} \cdot\left|g_2\right|{\text {Lip }}$来观察 $|f|{\text {Lip}}$ 上的以下边界:

例如,ReLU (Jarrett et al., 2009;Nair & Hinton, 2010;Glorot et al., 2011)和leaky ReLU (Maas et al., 2013)满足这一条件,许多流行的激活函数对于某些预定义的K也满足K- lipschitz约束。

image-20231106192533878

我们的谱归一化将权值矩阵$W$的谱范数归一化,使其满足Lipschitz约束$\sigma(W)=1$

image-20231106192843027

如果我们用(8)将每个$W^l$归一化,我们可以诉诸不等式(7)和 $\sigma\left(\bar{W}{\mathrm{SN}}(W)\right)=1$的事实,可以看到$|f|{\mathrm{Lip}}$上界为1。

在这里,我们想强调我们的谱归一化和由Yoshida&Miyato(2017)引入的谱范数“正则化”之间的区别。与我们的方法不同,谱范数“正则化”通过向目标函数添加显式正则化项来惩罚谱范数。他们的方法与我们的方法有根本的不同,因为他们没有试图将谱范数“设置”为指定值。此外,当我们重组我们归一化代价函数的导数并重写我们的目标函数(12)时,我们看到我们的方法正在用样本数据相关的正则化函数来增加代价函数。另一方面,谱范数正则化对代价函数施加样本数据独立的正则化,就像L2正则化和Lasso一样。

2.2 谱范数σ(w)的快速逼近

正如我们上面提到的,我们用来正则化判别器每一层的谱范数σ(W)是W的最大奇异值。如果我们天真地应用奇异值分解来计算算法每一轮的σ(W),算法会变得计算繁重。相反,我们可以使用幂迭代法来估计σ(W)(Golub&Van der Vorst,2000; Yoshida&Miyato,2017)。使用幂迭代法,我们可以用相对于vanilla GAN的全部计算成本非常小的额外计算时间来估计谱范数。详细方法请见附录A,算法1为实际频谱规范化算法的总结。

2.3 频谱归一化权重的梯度分析

$\bar{W}{\mathrm{SN}}(W)$相对于$W{i j}$的梯度为:

事实上,当谱具有多重性时,我们将在这里看到次梯度。然而,这种情况发生的概率是零(几乎肯定),所以我们将继续讨论而不考虑这些事件。

image-20231106195220314

其中 $E_{i j}$ 是矩阵,其第$(i, j)$个条目为1,其他任何地方为零,$\boldsymbol{u}_1$和$\boldsymbol{v}1$分别是$W$的第一个左和右奇异向量。如果$\boldsymbol{h}$是网络中要被$\bar{W}{S N}$变换的隐含层,则判别器$D$在迷你批次上相对于$W$ 计算的 $V(G, D)$的导数由以下给出:

image-20231106195625866

其中 $\boldsymbol{\delta}:=\left(\partial V(G, D) / \partial\left(\bar{W}{\mathrm{SN}} \boldsymbol{h}\right)\right)^{\mathrm{T}}, \lambda:=\hat{\mathrm{E}}\left[\boldsymbol{\delta}^{\mathrm{T}}\left(\bar{W}{\mathrm{SN}} \boldsymbol{h}\right)\right]$, $\hat{\mathrm{E}}[\cdot]$ 表示对小批量的经验预期。对$k \in \mathbb{R}$,$\hat{\mathrm{E}}\left[\boldsymbol{\delta} \boldsymbol{h}^{\mathrm{T}}\right]=k \boldsymbol{u}_1 \boldsymbol{v}_1^T$ 时,$\frac{\partial V}{\partial W}=0$

我们想对(12)的含义进行评论。第一项$\hat{\mathrm{E}}\left[\boldsymbol{\delta} \boldsymbol{h}^{\mathrm{T}}\right]$与未规范化的权重导数相同。有鉴于此,表达式中的第二项可以看作是正则化项,用自适应正则化系数λ惩罚第一个奇异分量。当δ和$\bar{W}_{S N}\bold{h}$指向相似的方向时,λ是正的,这防止了W的列空间在训练过程中集中到一个特定的方向。换句话说,谱规范化防止了每一层的变换在一个方向上变得敏感。我们还可以使用谱规范化为模型设计一个新的参数化。也就是说,我们可以将图层映射分成两个单独的可训练组件:谱归一化映射和谱范数常数。事实证明,这种参数化本身有其优点,并提高了GAN的性能(参见附录E)。

3 谱归一化与其他正则化技术

Salimans & Kingma(2016)引入的权值归一化是对权值矩阵中每个行向量的L2范数进行归一化的方法。在数学上,这相当于通过权重归一化$\bar{W}_{W N}$约束权重:

image-20231106201258726

其中$\sigma_t(A)$是矩阵$A$的第t个奇异值。因此,对于标度器,这与Frobenius规范化相同,后者要求奇异值的平方之和为1。然而,这些规范化无意中对矩阵施加了比预期更强的约束。如果$\bar{W}{\mathrm{WN}}$是维度 $d_i \times d_o$的权重归一化矩阵,则固定单位向量 $\boldsymbol{h}$的范数$\left|\bar{W}{\mathrm{WN}} \boldsymbol{h}\right|2$在$\left|\bar{W}{\mathrm{WN}} \boldsymbol{h}\right|2=\sqrt{d_o}$时最大化,当$\sigma_1\left(\bar{W}{\mathrm{WN}}\right)=\sqrt{d_o}$且$\sigma_t\left(\bar{W}{\mathrm{WN}}\right)=0$ 对于t=2, . . . , T时,这意味着$\bar{W}{\mathrm{WN}}$是秩1。类似的事情可以说Frobenius规范化(更多细节见附录)。使用这样的$\bar{W}{\mathrm{WN}}$对应于只使用一个特征来区分模型概率分布与目标。为了保留尽可能多的输入范数,从而使判别器更加敏感,人们希望将$\bar{W}{\mathrm{WN}} \boldsymbol{h}$的范数变大。然而,对于权重规范化,这是以降低等级为代价的,从而降低了用于判别器的特征数量。因此,权重规范化和我们希望使用尽可能多的特征来区分生成器分布和目标分布之间存在利益冲突。在许多情况下,前者的利益经常高于另一种,无意中减少了判别器使用的特征数量。因此,该算法将产生一个相当随意的模型分布,仅在选定的几个特征上与目标分布匹配。权重裁剪(Arjovsky et al.,2017)也存在同样的问题。

另一方面,我们的谱规范化没有遭受这样的利益冲突。请注意,线性的运算符的Lipschitz常数仅由最大奇异值决定。换句话说,<u>谱范数与秩无关</u>。因此,与权重规范化不同,我们的谱规范化允许参数矩阵使用尽可能多的特征,同时满足局部Lipschitz约束。我们的谱规范化在选择奇异分量(特征)的数量以馈送到判别器的下一层方面留下了更多的自由。

Brock等人(2016)在每个权重上引入了标准正交正则化,以稳定GAN的训练。在他们的工作中,Brock等人(2016)通过添加以下术语来增强对抗性目标函数:

image-20231106204627635

虽然这似乎与谱规范化的目的相同,但标准正交正则化在数学上与我们的谱规范化有很大不同,因为标准正交正则化通过将所有奇异值设置为1来破坏谱的信息。另一方面,谱规范化只缩放频谱,使其最大值为1。

Gulrajani等人(2017)将梯度惩罚法与WGAN结合使用。在他们的工作中,他们通过用正则化项增强目标函数来将$K$-Lipschitz常数放在判别器上,该正则化项奖励函数在 $\hat{\boldsymbol{x}}:=\epsilon \tilde{\boldsymbol{x}}+(1-\epsilon) \boldsymbol{x}$形式的离散点集处具有局部1-Lipschitz常数(即$\left|\nabla_{\hat{\boldsymbol{x}}} f\right|2=1$),通过对生成分布中的样本 $\tilde{\boldsymbol{x}}$和数据分布中的样本 $\boldsymbol{x}$ 进行插值而生成的。虽然这种相当简单的方法没有我们上面提到的关于特征空间有效维数的问题,但该方法有一个明显的弱点,即严重依赖当前生成分布的支持。理所当然,生成分布及其支持在训练过程中逐渐变化,这可能会破坏这种正则化的效果。事实上,我们根据经验观察到,高学习率会破坏WGAN-GP的性能。相反,我们的谱规范化正则化了运算符空间的函数,相对于批处理的选择,正则化的效果更稳定。用我们的谱规范化训练不会轻易地用激进的学习率破坏稳定。此外,WGAN-GP比我们的单步幂迭代的谱规范化需要更多的计算成本,因为计算$\left|\nabla{\hat{\boldsymbol{x}}} f\right|_2$需要整整一轮的前向和后向传播。在附录部分,我们比较了两种方法相同更新次数的计算成本。

4 实验

为了评估我们的方法的有效性并调查其有效性背后的原因,我们在CIFAR-10(Torralba et al.,2008)和STL-10(Coates et al.,2011)上进行了一组广泛的无监督图像生成实验,并将我们的方法与其他规范化技术进行了比较。为了了解我们的方法在大型数据集上的表现如何,我们还将我们的方法应用于ILSVRC2012数据集(ImageNet)(Russakovsky et al.,2015)。本节结构如下。首先,我们将讨论我们用于训练架构的目标函数,然后我们将描述我们在实验中使用的最优化设置。然后,我们将解释图像上的两个性能指标,以评估经过训练的生成器生成的图像。最后,我们将总结我们在CIFAR-10、STL-10和ImageNet上的结果。

至于判别器和生成器的架构,我们使用了卷积神经网络。此外,对于卷积权重$W \in \mathbb{R}^{d_{\text {out }} \times d_{\text {in }} \times h \times w}$的谱范数的评估,我们将运算符视为维度$d_{\text {out }} \times\left(d_{\text {in }} h w\right)^3$的二维矩阵。我们用批量规范化训练生成器的参数(Ioffe&Szegedy,2015)。我们请读者参阅附录部分中的表3,了解架构的更多细节。

请注意,由于我们是离散地进行卷积,频谱范数将取决于步幅和填充的大小。然而,答案只会因一些预定义的K而有所不同。

对于除WGAN-GP之外的所有方法,我们使用以下标准目标函数来计算对抗损失:

image-20231106211002192

其中 $\boldsymbol{z} \in \mathbb{R}^{d_z}$ 是潜变量/隐变量,$p(\boldsymbol{z})$是标准正态分布 $\mathcal{N}(0, I)$, $G: \mathbb{R}^{d_z} \rightarrow$ $\mathbb{R}^{d_0}$ 是确定性生成器函数。我们将$d_z$设置为128用于我们所有的实验。对于$G$的更新,我们使用了Goodfelet al.$(2014)-\mathrm{E}_{\boldsymbol{z} \sim p(\boldsymbol{z})}[\log (D(G(\boldsymbol{z})))]$提出的替代成本,如Goodfelet al.(2014)和Warde-Farley&Bengio(2017)中使用的。对于$D$的更新,我们使用了(15)中定义的原始成本。我们还测试了具有所谓hinge loss的算法的性能,该性能由

image-20231106211457110

分别用于判别器和生成器。优化这些目标相当于最小化所谓的反向KL散度:$\operatorname{KL}\left[p_g | q_{\mathrm{data}}\right]$。这种类型的损耗已经在Lim&Yes(2017);Tran et al.(2017)中提出并使用。基于hinge loss的算法在使用IS和FID进行评估时也表现出良好的性能。对于具有梯度惩罚的Wasserstein GANs(WGAN-GP)(Gulrajani et al.,2017),我们使用了以下目标函数:$V(G, D):=\mathrm{E}{\boldsymbol{x} \sim q{\mathrm{data}}}[D(\boldsymbol{x})]-\mathrm{E}{\boldsymbol{z} \sim p(\boldsymbol{z})}[D(G(\boldsymbol{z}))]-\lambda \mathrm{E}{\hat{\boldsymbol{x}} \sim p_{\hat{\boldsymbol{x}}}}\left[\left(\left|\nabla_{\hat{\boldsymbol{x}}} D(\hat{\boldsymbol{x}})\right|_2-1\right)^2\right]$,其中正则化项是我们在附录部分D.4中介绍的项。

为了对生成的示例进行定量评估,我们使用了IS(Salimans et al., 2016)和FID(Heusel et al., 2017)。各分数详情见附录B.1。

4.1 CIFAR10和STL-10的结果

在本节中,我们报告了训练期间谱规范化(我们使用缩写:SNGAN表示谱归一化GAN)的准确率,以及算法性能对优化器超参数的依赖性。我们还将算法的性能质量与判别器网络的其他正则化/规范化技术进行了比较,包括:权重裁剪(Arjovsky等人,2017)、WGAN-GP(Gulrajani等人,2017)、批量规范化(BN)(Ioffe&Szegedy,2015)、层规范化(LN)(Ba等人,2016)、权重规范化(WN)(Salimans&Kingma,2016)和标准正交正则化(标准正交)(Brock等人,2016)。为了评估梯度罚的独立功效,我们还将梯度罚项应用于GAN的标准对抗性损失(15)。我们将此方法称为‘GAN-GP’。对于权重裁剪,我们遵循原始工作Arjovsky等人(2017),将每一层的卷积权重的裁剪常数c设置为0.01。对于梯度惩罚,我们将λ设置为10,如Gulrajani等人(2017)所建议的那样。对于标准正交,我们使用随机选择的标准正交算符初始化D的每个权重,并用Brock等人(2016)中使用的正则化项增强目标函数来训练GAN。对于贯穿始终的所有比较研究,我们在权重规范化方法以及批量规范化和层规范化方法中排除了乘数参数γ。这样做是为了防止这些方法公开违反Lipschitz条件。当我们试验不同的乘数参数时,我们实际上无法实现任何改进。

对于最优化,我们在所有实验中使用了Adam优化器Kingma&Ba(2015)。我们测试了(1)$n_{dis}$的6个设置,生成器每次更新的判别器更新次数;和(2)Adam的学习率α以及一阶和二阶动量参数(β1,β2)。我们在附录部分的表1中列出了这些设置的详细信息。在这6个设置中,A、B和C是以前的代表作中使用的设置。设置D、E和F的目的是评估以更激进的学习率实现的算法的性能。关于生成器和判别器中部署的卷积网络架构的详细信息,我们请读者参阅附录部分的表3。除非另有说明,否则100K所有实验GAN生成器的更新次数。

首先,我们在训练期间检查了每一层的光谱规范,以确保我们的光谱规范化程序确实达到了目的。正如我们在C.1的图9中看到的,在整个训练过程中,这些层的光谱规范漂浮在1-1.05区域附近。有关详细信息,请参阅附录C.1。

image-20231106213057800

表1:我们在实验中测试的超参数设置. $\dagger, \ddagger$ 和$\star$ 分别是Gulrajani等人(2017)、Warde-Farley&Bengio(2017)和Radford等人(2016)之后的超参数设置。

image-20231106213136433

图1:用不同的方法和超参数在CIFAR-10和STL-10上的IS值(越高越好)。

image-20231106214442162

图2:具有不同方法和超参数的CIFAR-10和STL-10的FID(越低越好)。

image-20231106214526846

表2:在CIFAR-10上无监督图像生成的初始得分和FID。$\dagger$ (Radford等人,2016)(由Yang等人实验。(2017)), $\ddagger$ (Yang等人,2017),$\star$(Warde-Farley&Bengio,2017), †† (Gulrajani等人,2017)

对于我们的ResNet实验,我们用多个随机种子训练相同的架构进行权重初始化,并生成具有不同参数的模型。然后,我们生成5000张图像10次,并计算每个模型的平均初始分数。表中ResNet的值是使用不同种子训练的模型集计算的分数的平均值和标准差。

在图1和图2中,我们使用设置A-F显示了每种方法的IS。我们可以看到,频谱规范化在具有激进的学习率和动量参数的情况下相对稳健。WGAN-GP未能在CIFAR-10和STL-10上以高学习率和高动量参数训练好的GAN。标准正交正则化在STL-10上的设置E表现不佳,但在最佳设置下表现略好于我们的方法。这些结果表明,我们的方法在训练设置的变化方面比其他方法更稳健。此外,权重规范化的最佳性能低于WGAN-GP和STL-10上的频谱规范化,STL-10上包含比CIFAR-10更多样化的示例。频谱规范化的最佳分数在CIFAR-10和STL-10上几乎优于所有其他方法。

在表2中,我们显示了在CIFAR10和STL-10数据集上具有最佳设置的不同方法的起始分数。我们看到SN-GAN在最佳设置上的表现优于几乎所有同时代的方法。SN-GAN在hingo loss(17)下的表现甚至更好。对于具有相同迭代次数的训练,SN-GAN落后于STL-10的正交标准正则化。有关标准正交正则化和谱规范化之间的更详细比较,请参阅第4.1.2节。

至于STL-10,我们也在两次更长的迭代中运行SN-GAN,因为它似乎没有收敛。然而,这个拉长的训练序列仍然在具有原始迭代大小的WGAN-GP之前完成,因为SN-GAN的最佳设置(设置B,ndis=1)在计算上很轻。

在图6中,我们展示了使用WGAN-GP、权重规范化和光谱规范化训练的生成器生成的图像。SN-GAN在生成图像的质量方面始终优于具有权重规范化的GAN。更准确地说,正如我们在第3节中提到的,光谱规范化生成的图像集比权重规范化生成的图像更清晰、更多样化。我们还可以看到,WGAN-GP未能训练出具有高学习率和高动量(D、E和F)的好GAN。GAN-GP、批量规范化和层规范化的生成图像如附录部分的图12所示。

我们还将我们的算法与多个基准方法进行了比较,并在表2的下半部分总结了结果。我们还在Gulrajani等人(2017年)中使用的基于ResNet的GAN上测试了我们的方法的性能。请注意,其中列出的所有方法在最优化方法和模型架构上都有所不同。详细的网络架构请参见附录部分的表4和表5。我们算法的实现能够在性能上比几乎所有前辈都表现得更好。

image-20231106215057538

图3:用不同方法训练的权重矩阵的平方奇异值:权重裁剪(WC)、权重规范化(WN)和谱规范化(SN)。我们缩放奇异值,使最大奇异值等于1。对于WN和SN,我们计算归一化权重矩阵的奇异值。

4.1.1 SN-GANs的分析

关于判别器D权重的奇异值分析在图3中,我们展示了每种方法使用产生最佳初始得分的参数产生的最终判别器D中权重矩阵的平方奇异值。正如我们在第3节中预测的那样,使用权重剪裁和权重规范化训练的第一到第五层的奇异值集中在少数组件上。即这些层的权重矩阵倾向于秩亏。另一方面,那些使用谱规范化训练的层中权重矩阵的奇异值分布更广。当目标是区分嵌入在高维空间中的低维非线性数据流形上的一对概率分布时,较低层的秩不足可能尤其致命。较低层的输出只经历了几组整流线性变换,这意味着它们倾向于躺在大多数部分是线性的空间上。在这种空间中边缘化输入分布的许多特征会导致过度简化的判别器。我们实际上可以确认这种现象对生成图像的影响,特别是在图6b中。光谱规范化生成的图像比权重规范化生成的图像更加多样和复杂。

训练时间:在CIFAR-10上,SN-GAN比权重规范化稍慢(约110~120%计算时间),但明显快于WGAN-GP。正如我们在第3节中提到的,WGAN-GP比其他方法慢,因为WGAN-GP需要计算梯度范数的梯度$\left|\nabla_{\boldsymbol{x}} D\right|_2$。对于STL-10,SN-GAN的计算时间几乎与普通GANs相同,因为与CIFAR-10上的前向和后向传播成本相比,幂迭代(18)的相对计算成本可以忽略不计(STL-10的图像大小更大(48×48))。实际计算时间请参见附录部分的图10。

4.1.2 SN-GANs与正交正规化的比较

image-20231107161457806

图4:最终层特征图维度的变化对STL-10性能的影响。突出显示区域的宽度代表了权重初始化的多个种子上结果的标准差。标准正交正则化在特征图维度大的情况下表现不佳,可能是因为它的设计迫使判别器使用所有维度,包括不必要的维度。对于优化器超参数的设置,我们使用了设置C,它对“标准正交正则化”是最佳的

image-20231107162811052

图5: SNGANs和在ImageNet上进行标准正交正则化的GANs的条件图像生成学习曲线。

为了突出我们的光谱规范化和标准正交正则化之间的区别,我们进行了一组额外的实验。正如我们在第3节中解释的那样,标准正交正则化与我们的方法不同,因为它破坏了光谱信息,并同等重视所有特征维度,包括在训练过程中“应”剔除的特征维度。为了了解其可能有害影响的程度,我们通过增加特征空间的维度进行了实验,特别是在最后一层(第7 conv),我们的光谱规范化训练更喜欢相对较小的空间(维度<100;见图3b)。至于训练的设置,我们选择了标准正交正则化表现最佳的参数。图4显示了我们实验的结果。正如我们预测的那样,随着我们在最后一层增加特征图的维数,标准正交正则化的性能会恶化。另一方面,我们的SN-GAN不会随着架构的这种修改而动摇。因此,至少从这个角度来看,我们可以使得我们的方法相对于网络结构的变化更加鲁棒。

更准确地说,我们简单地将输入维度和输出维度增加了相同的因子。在图4中,“相对大小”=1.0意味着层结构与原始结构相同。

4.2 IMAGENET上的图像生成

为了证明我们的方法在大型高维数据集上仍然有效,我们还将我们的方法应用于ILRSVRC2012数据集上条件GAN的训练,该数据集具有1000个类,每个类由大约1300张图像组成,我们将其压缩到128×128像素。关于条件GAN的对抗性损失,我们使用了与Mirza&Osindero(2014)中使用的几乎相同的公式,除了我们用hingo loss替换了标准GAN损失(17)。有关实验设置的详细信息,请参阅附录B.3。

没有归一化的GAN和具有层归一化的GAN在训练开始时崩溃,无法产生任何有意义的图像。另一方面,具有正交归一化Brock等人(2016)和我们的光谱归一化的GAN能够产生图像。然而,正交归一化的初始分数在第20K次迭代左右趋于平稳,而SN甚至在之后也在不断提高(图5)。据我们所知,我们的研究是首次成功地使用一对鉴别器和生成器从ImageNet数据集中生成体面的图像(图7)。为了测量模式崩溃的程度,我们跟随Odena等人(2017)的脚步,计算了每个类别的独立生成的GAN图像对的MS-SSIM Odena等人(2017)。我们看到我们的SN-GAN((内部MS-SSIM)=0.101)比AC-GAN((内部MS-SSIM)=0.25)遭受的模式崩溃更少。

为了确保我们的方法的优越性不受我们特定设置的限制,我们还比较了SN-GAN与标准正交正则化在具有投影判别器的条件GAN(Miyato&Koyama,2018)以及标准(无条件)GAN上的性能。在我们的实验中,SN-GAN在两种设置中都取得了比标准正交正则化更好的性能(参见附录部分的图13)。

5 结论

本文提出光谱规范化作为训练GAN的稳定器。当我们在图像生成任务中将光谱规范化应用于GAN时,生成的示例比传统的权重规范化更多样化,并且相对于以前的研究获得了更好或比较好的初始分数。该方法对判别器施加全局正则化,而不是WGAN-GP引入的局部正则化,并且可能在组合中使用。在未来的工作中,我们希望在更多的理论基础上进一步研究我们的方法在其他方法中的地位,并在更大更复杂的数据集上试验我们的算法。

标签:Spectral,boldsymbol,Adversarial,GAN,正则,规范化,2017,我们,Normalization
From: https://blog.51cto.com/coderge/8237356

相关文章