论文学习笔记-(progressive growing of gans for improved quality, stablity, and variation)2019-06-03

progressive growing of gans for improved quality, stablity, and variation
前人方法及缺陷
Autoregressive models: PixelCNN 生成清晰的图像,但是评估较慢,而且没有潜在的表示,因为它们直接对像素上的条件分布建模,这可能限制了它们的适用性
variational autoencoders(VAE):训练简单,但是由于模型的限制,产生的模型更模糊(即使最近的研究已经有了提高)
generative adversarial networks (GAN):能产生清晰的图像,但是变化比较小,分辨率低,即使最近的研究已经有了进步,但训练还是不稳定。
Hybrid methods:结合了以上三种方法的优点,但是在生成图像质量方面和gans的差距还是很大。

gans简介

gan由两部分组成,即生成器和描述器(也就是批评器)。生成器从潜在的编码中生成一个样本——一张图片,理想状态下这张图片的分布和原始图片的分布应没有区分度。因为很难有一个函数能够评价生成的图片是不是满足要求,所以需要训练一个描述器网络。由于这两个网络是不同的,所以需要获得一个梯度使两个网络都能找到最优的优化方向。
通常情况下,生成器是我们需要的,描述器仅仅是一个自适应的损失函数,一旦生成器被训练,它就会对其进行评估。

分布距离计算方法

当我们测量训练分布与生成分布之间的距离时,如果分布没有大量重叠,梯度可以指向或多或少的随机方向,即太容易分辨了。可作为分布距离计算方法的方案有:Jensen-Shannon divergence、least squares、 absolute deviation with margin、Wasserstein distance。
本文中使用的方法:主要是 improved Wasserstein loss,也对 least-squares loss进行了实验

鉴于大分辨率图片在训练过程中的一系列问题,本文提出的方法是:在训练过程中先从低分辨率图片训练,然后加入新的层来引入高分辨率详细信息,这可以在加速训练的同时提高高分辨率下的稳定性
逐步增长的gans:
这个增量的特性使得训练过程中首先学习源图片分布的大尺度的结构,进而学习更详细的精细结构,不需要同时学习不同尺度的信息。在整个训练过程中,两个网络中的所有存在的层都是可训练的,当有新层加入时,本文中的解决方法是:将新层平滑地淡入网络中。这么做避免了新层加入对已经训练好参数(低分辨率层的参数)的冲击。

生成的图片的保持灵活性程度:现在有很多方法来估计它,例如:inception score、multi-scale structural similarity、birthday paradox、explicit tests(for the number of discrete modes discovered)
gans存在一个问题,即它只能捕捉到训练数据集变化的子集。为了解决这个问题,Salimans等人(2016)提出了称为“minibatch discrimination”的解决方案。它们的特征统计不仅考虑了单独的图片而且考虑的整个minibatch的综合特征表现,这就有利于生成的minibatch和训练集minibatch有相似的统计特性,该方案的具体实现如下:
在生成器的最后一层加一个minibatch层,该层学习一个大的张量,用来将输入激活映射到一个统计量向量,同时,该方案还针对minibatch中的每一个样本生成一个统计量的离散集,并将这个离散集拼接在minibatch 层的输出上。
本文对以上方案做了简化,简化后的方案即没有可训练的参数,也没有需要设定的超参数,具体方法如下:
1、计算minibatch中任意空间位置的每个特征的标准差
2、任意空间位置的每个特征的标准差求平均,得到一个标量值
3、复制这个标量值,并将副本拼接到minibatch中任意空间位置的特征上,产生一个格外的特征图。
以上操作可以整合成一个处理层(类似于卷积层等),并且这个层可以插入到生成器的任意位置,但是本文实验发现插入到生成器的最后一层的效果最好。

其他提高灵活性的方案有:unrolling the discriminator、repelling regularizer、multiple generators,本文没有给出这些方法和本文提出方法的对比。

生成器和对抗器的正则化

本文中用到的方法由两部分合成,即1)相等的学习率,2)生成器中特征向量逐像素正则化,它们都不包含可学习的参数

  • 相等的学习率
    本文采用均值为0,方差为1的标准正态分布来初始化权重,并且在训练过程中显式地调整权重。


    权重调整表达式

    其中,c表示每层的正则化常量
    采用相等学习率的前提是模型参数有相同大小的尺度,动态调整参数的好处就是可以使模型中所有参数具有相同的尺度。

  • 生成器中特征向量逐像素正则化
    在竞争过程中,生成器和对抗器的生成信号的幅度可能会失控,为了避免这种状况发生,在生成器中每个卷积层后将每个像素的特征向量的模都标准化为单位长度,具体实现过程中哦个使用了一个称为:“局部响应正则化”变量,如下:

    上式中,N表示特征图的数目,和分别为正则化前和正则化后的特征向量。
    经过正则化后,特征向量的变化并不会影响生成器的效果,在多数数据集上并没有对结果造成影响,但是它可以很有效地防止信号幅度增大。

gan结果评估——多尺度统计学相似度

MS-SSIM (Odena et al., 2017):该方法可以可靠地检测到大规模的模型崩溃,但是对颜色变化、纹理变化等丢失的细微变化无响应,并且没有以和训练集的相似度为标准评估图像的质量。

一个好的生成模型产生的图片在不同尺度上都和训练集图片有很大的局部相似度。

你可能感兴趣的:(论文学习笔记-(progressive growing of gans for improved quality, stablity, and variation)2019-06-03)