PGGAN(2018):Progressive Growing of GANs for Improved Quality, Stability, and Variation

PGGAN:Progressive Growing of GANs for Improved Quality, Stability, and Variation

简述:
本文为改善品质、稳定性和变异而逐步改进的GAN。做了以下贡献:
1是提出了一种新的生成对抗网络的训练方法(PGGAN)
2描述了一些对于阻止生成器和鉴别器之间的不健康竞争非常重要的实现细节
3我们提出了一种新的度量方法来评价GAN的成像质量和变化
4我们还构建了一个更高质量的CELEBA数据集。
本文首次可以实现1024×1024人脸图像,以往128×128的人脸图像都还达不到足够的清晰度。

问题or相关工作:
1.模型:
本文主要贡献是GANs的一种训练方法,称作progressive growing 。意思是从低分辨率图像开始,然后通过向网络添加层逐步增加分辨率,如下图。这种增量本身允许训练首先发现图像分布的大规模结构,然后将注意力转移到越来越精细的尺度细节上,而不是同时学习所有的尺度。
下图可以看到,本文的训练从发生器(G)和鉴别器(D)开始,它们都具有4×4像素的低分辨率。随着训练的深入,我们逐步增加G和D层,从而增加0生成图像的空间分辨率。在整个过程中,所有现有的层都可以进行训练。这里N×N是指在N×N空间分辨率下操作的卷积层。这种方法相较于传统GAN有两点优势,一个是增大了训练的稳定性,使我们能够使用WGAN-GP可靠地合成百万像素级的图像,而是同时也大大加快了训练速度,速度大约是传统方法的2-4倍。在右边我们展示了6张使用渐进增大(1024×1024)生成的示例图像。
在这里插入图片描述
上面使用生成器和鉴别器网络,它们互为镜像,并且总是同步增长。在整个培训过程中,这两个网络中的所有现有层都是可训练的。当向网络中添加新层时,我们会平滑地fade in ,如下图所示。
下图演示了从16×16图像(a)过渡到32×32 ©图像。在过渡层(b),也就是fade in 网络,b中把操作在高分辨率上的层当作一个残差块。由a到b再到c,每个阶段都是训练到一定程度再进行下一层。
其中权重α线性地从0到1增加。这里2×和0.5×分别是指使用最近邻滤波或平均池化将图像分辨率加倍或减半。toRGB,表示将特征向量投射到RGB空间,而fromRGB执行相反的操作;两者都使用1×1的卷积。
在这里插入图片描述

2.增加生成多样性:
局限于训练策略,GAN趋向于只学习到训练数据的部分多样性信息。我们可以人工的在网络中加入一些信息增加多样性。PG-GAN不引入新的参数,利用特征的标准差作为衡量标准。为简化计算,文中直接计算mini-batch 中feature 的标准差的均值,该scalar经扩展为feature map大小后直接作为新feature map的一个通道。我们把这层叫做Mini-batch stddev层。
在这里插入图片描述

3.训练稳定性:
为了有效抑制G和D 的不健康竞争,本文提出了用pixel norm作为正则化的方法:
在这里插入图片描述
操作对象是某层的feature maps,其通道数是N。x,y表示像素点在map上的坐标。a与b分别是原像素值与归一化后的像素值。ξ是防止除数为0的一个小变量。

成果:
PG-GAN加入本文提出的不同方法得到的数据及图像结果:生成的图像与训练图像之间的Sliced Wasserstein距离(SWD)和生成的图像之间的多尺度结构相似度(MS-SSIM)。
在这里插入图片描述
在这里插入图片描述

SWD度量的渐进增长对训练速度和收敛性的影响: (a) 使用128 × 128分辨率的CELEBA数据集统计相似性。每个曲线都展示了拉普拉斯金字塔每一级的SWD值,垂直的线指示我们在Table 1中停止训练的点。(b)能够渐进增长的相同曲线。短的垂直线指示我们在G和D中双倍增加分别率的点。(c)在1024 × 1024分辨率以原训练速度渐进增长的影响。
在这里插入图片描述
使用CELEBA-HQ数据集生成高分辨率图像:
在这里插入图片描述

发布了57 篇原创文章 · 获赞 8 · 访问量 3252

猜你喜欢

转载自blog.csdn.net/qq_41967539/article/details/102980192