2020 Google开发者大会重磅开幕 了解详情

一文看懂GAN演进图谱

2019 年 8 月 22 日

一文看懂GAN演进图谱

本文来自“深度推荐系统”专栏,这个系列将介绍在深度学习的强力驱动下,给推荐系统工业界所带来的最前沿的变化。本文着重于串讲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


2019 年 8 月 22 日 14:00 10824

评论

发布
暂无评论
发现更多内容

作业

chenzt

架构师训练营 第五周 总结

Poplar

架构师训练营 -- 第五周作业

stardust20

一致性Hash算法

南宫煌

极客大学架构师训练营

架构师训练营 - 第五周 - 学习总结

stardust20

架构师训练营第五周作业

架构师 极客大学架构师训练营

分布式缓存一致性hash算法实现

考尔菲德

Scrum Master与Project Manager的区别

Mew

Scrum

深入了解kafka系列-生产者

小技术君

kafka Kafka知识点

第05周 技术选型-01 学习总结

Jaye

分布式缓存总结

罗亮

新增的两个区块链职业到底是做什么的?

CECBC区块链专委会

技术人才 系统操作 需求落地 框架搭建

架构师训练营--第五周学习总结

花花大脸猫

极客大学架构师训练营

一致性hash算法的实现和平衡性测试

周冬辉

一致哈希

王鹏飞

架构师训练营第五周总结

方堃

极客大学架构师训练营

架构师训练营——第5周学习总结

jiangnanage

朱嘉明教授获2020杭州区块链国际周“特别致敬奖”

CECBC区块链专委会

CECBC 朱嘉明 区块链国际周 特别致敬

05周作业—技术选型

dao

极客大学架构师训练营 作业 一致性Hash算法

数据库周刊31丨openGauss 正式开源;7月数据库排行榜发布;oracle ADG跨版本搭建;PG解决社保问题;mysqlbinlog解析……

墨天轮

MySQL 数据库 oracle 性能优化 opengauss

啃碎并发(四):Java线程Dump分析

猿灯塔

深入了解kafka系列-消费者

小技术君

kafka flink 消费 kafka Kafka知识点

架构师训练营 - 学习笔记 - 第五周

心在飞

极客大学架构师训练营

Spring Boot读取配置文件的几种方式

Java旅途

Spring Boot properties yaml

“区块链+” 医疗行业场景应用迎来大发展

CECBC区块链专委会

医疗方案 区块链+ 场景应用落地 多元场景应用

第五周总结

考尔菲德

1. 初识Jackson -- 世界上最好的JSON库

YourBatman

Jackson Fastjson JSON库

架构设计篇之面向对象设计

小诚信驿站

架构 架构师 架构分析 刘晓成 架构演进

kafka监听mysql实时数据变更

爱java爱自己

MySQL mysql事务

哈希表

Arthur

Week05 作业

极客大学架构师训练营

2020中国技术力量年度榜单盛典

2020中国技术力量年度榜单盛典

一文看懂GAN演进图谱-InfoQ