本文来自“深度推荐系统”专栏,这个系列将介绍在深度学习的强力驱动下,给推荐系统工业界所带来的最前沿的变化。本文着重于串讲 GAN 模型框架的演进图谱。
之前在总结一文看懂AutoEncoder模型演进图谱时就有涉及到 GAN。GAN 作为近几年深度学习的大坑以其优雅的理论和惊艳的效果而大火。本文简单总结串讲下 GAN 发展至今比较有代表性的模型以及其主要特点。
还是老规矩,先放一张 GAN 家族主要模型的概要图有一个大致的概念。左边部分主要是改进模型解决实际的图片转换,文本转图像,生成图片,视频转换等实际问题;右边部分呢则是主要解决 GAN 框架本身存在的一些问题。
传统的生成模型最早要追溯到 80 年代的 RBM,以及后来逐渐使用深度神经网络进行包装的 AutoEncoder。然后就是现在称得上最火的生成模型 GAN。
GAN
Ian Goodfellow 的原始 GAN 论文[2]肯定是必读之作。涉及了 GAN 框架、“非饱和”损失函数以及最优判别器的推导。
DCGAN
顾名思义,DCGAN[3]主要讨论 CNN 与 GAN 如何结合使用并给出了一系列建议。另外还讨论了 GAN 特征的可视化、潜在空间插值等问题。
ImprovedGAN
Ian Goodfellow 等人[4]提供了诸多训练稳定 GAN 的建议,包括特征匹配、mini-batch 识别、历史平均、单边标签平滑以及虚拟批标准化等技巧。讨论了 GAN 不稳定性的最佳假设。
PACGAN
PACGAN[5]讨论的是的如何分析 model collapse,以及提出了 PAC 判别器的方法用于解决 model collapse。思想其实就是将判别器的输入改成多个样本,这样判别器可以同时看到多个样本可以从一定程度上防止 model collapse。
WGAN
WGAN[6]首先从理论上分析了原始 GAN 模型存在的训练不稳定、生成器和判别器的 loss 无法只是训练进程、生成样本缺乏多样性等问题,并通过改进算法流程针对性的给出了改进要点。
CycleGAN
CycleGAN[7]讨论的是 image2image 的转换问题,提出了 Cycle consistency loss 来处理缺乏成对训练样本来做 image2image 的转换问题。Cycle Consistency Loss 背后的主要想法,图片 A 转化得到图片 B,再从图片 B 转换得到图片 A’,那么图片 A 和图片 A’应该是图一张图片。
Vid2Vid
Vid2Vid[8]通过在生成器中加入光流约束,判别器中加入光流信息以及对前景和背景分别建模重点解决了视频转换过程中前后帧图像的不一致性问题。
PGGAN
PGGAN[9]创造性地提出了以一种渐进增大(Progressive growing)的方式训练 GAN,利用逐渐增大的 PGGAN 网络实现了效果令人惊叹的生成图像。“Progressive Growing” 指的是先训练 4x4 的网络,然后训练 8x8,不断增大,最终达到 1024x1024。这既加快了训练速度,又大大稳定了训练速度,并且生成的图像质量非常高。
StackGAN
StackGAN[10]是由文本生成图像,StackGAN 模型与 PGGAN 工作的原理很像,StackGAN 首先输出分辨率为 64×64 的图像,然后将其作为先验信息生成一个 256×256 分辨率的图像。
BigGAN
BigGAN[11]模型是基于 ImageNet 生成图像质量最高的模型之一。该模型很难在本地机器上实现,而且 有许多组件,如 Self-Attention、 Spectral Normalization 和带有投影鉴别器的 cGAN 等。
StyleGAN
StyleGAN[12]应该是截至目前最复杂的 GAN 模型,该模型借鉴了一种称为自适应实例标准化 (AdaIN) 的机制来控制潜在空间向量 z。虽然很难自己实现一个 StyleGAN,但是它提供了很多有趣的想法。
参考文献
[1] Must-Read Papers on GANs/ 必读!生成对抗网络 GAN 论文 TOP 10
[2] Generative Adversarial Networks
[3] Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks
[4] Improved Techniques for Training GANs
[5] PacGAN: The power of two samples in generative adversarial networks
[6] Wasserstein GAN
[7] Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks
[8] Video-to-Video Synthesis
[9] Progressive Growing of GANs for Improved Quality, Stability, and Variation
[10] StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks
[11] Large Scale GAN Training for High Fidelity Natural Image Synthesis
[12] A Style-Based Generator Architecture for Generative Adversarial Networks
本文授权转载自知乎专栏“深度推荐系统”。原文链接:https://zhuanlan.zhihu.com/p/70033932
评论