GAN变种介绍 - DCGAN、InfoGAN、CycleGAN、WGAN、Self-Attention GAN、BigGAN

article/2025/11/9 22:19:12

GAN变种介绍 - DCGAN、InfoGAN、CycleGAN、WGAN、Self-Attention GAN、BigGAN

  • 一、DCGAN
  • 二、InfoGAN
  • 三、CycleGAN
  • 四、WGAN
  • 五、Self-Attention GAN
  • 六、BigGAN

在原始的 GAN 论文中,Ian Goodfellow 从理论层面分析了 GAN 网络的收敛性,并且在多个经典图片数据集上测试了图片生成的效果,如图所示,其中图 (a) 为MNIST 数据,图 (b) 为 Toronto Face 数据集,图 © 、图 (d) 为 CIFAR10 数据集。

在这里插入图片描述

可以看到,原始 GAN 模型在图片生成效果上并不突出,和 VAE 差别不明显,此时并没有展现出它强大的分布逼近能力。但是由于 GAN 在理论方面较新颖,实现方面也有很多可以改进的地方,大大地激发了学术界的研究兴趣。在接下来的数年里,GAN 的研究如火如荼的进行,并且也取得了实质性的进展,接下来我们将介绍几个意义比较重大的 GAN变种。

一、DCGAN

最初始的 GAN 网络主要基于全连接层实现生成器 G 和判别器 D 网络,由于图片的维度较高,网络参数量巨大,训练的效果并不优秀。DCGAN提出了使用转置卷积层(逆卷积层)实现的生成网络,普通卷积层来实现的判别网络,大大地降低了网络参数量,同时图片的生成效果也大幅提升,展现了 GAN 模型在图片生成效果上超越 VAE 模型的潜质。此外,DCGAN 作者还提出了一系列经验性的 GAN 网络训练技巧,这些技巧在 WGAN 提出之前被证实有益于网络的稳定训练。前面我们已经使用 DCGAN 模型完成了二次元动漫头像的图片生成实战。

二、InfoGAN

InfoGAN 尝试使用无监督的方式去学习输入𝒙的可解释隐向量𝒛的表示方法(Interpretable Representation),即希望隐向量𝒛能够对应到数据的语义特征。比如对于MNIST 手写数字图片,我们可以认为数字的类别、字体大小和书写风格等是图片的隐藏变量,希望模型能够学习到这些分离的(Disentangled)可解释特征表示方法,从而可以通过人为控制隐变量来生成指定内容的样本。对于 CelebA 名人照片数据集,希望模型可以把发型、眼镜佩戴情况、面部表情等特征分隔开,从而生成指定形态的人脸图片。

分离的可解释特征有什么好处呢?它可以让神经网络的可解释性更强,比如𝒛包含了一些分离的可解释特征,那么我们可以通过仅仅改变这一个位置上面的特征来获得不同语义的生成数据,如图 所示,通过将“戴眼镜男士”与“不戴眼镜男士”的隐向量相减,并与“不戴眼镜女士”的隐向量相加,可以生成“戴眼镜女士”的生成图片。

在这里插入图片描述

三、CycleGAN

CycleGAN是华人朱俊彦提出的无监督方式进行图片风格相互转换的算法,由于算法清晰简单,实验效果完成的较好,这项工作受到了很多的赞誉。CycleGAN 基本的假设是,如果由图片 A 转换到图片 B,再从图片 B 转换到A′,那么A′应该和 A 是同一张图片。因此除了设立标准的 GAN 损失项外,CycleGAN 还增设了循环一致性损失(CycleConsistency Loss),来保证A′尽可能与 A 逼近。CycleGAN 图片的转换效果如图所示。

在这里插入图片描述

四、WGAN

GAN 的训练问题一直被诟病,很容易出现训练不收敛和模式崩塌的现象。WGAN从理论层面分析了原始的 GAN 使用 JS 散度存在的缺陷,并提出了可以使用 Wasserstein 距离来解决这个问题。在 WGAN-GP中,作者提出了通过添加梯度惩罚项,从工程层面很好的实现了 WGAN 算法,并且实验性证实了 WGAN 训练稳定的优点。

五、Self-Attention GAN

Attention 机制在自然语言处理(NLP)中间已经用得非常广泛了,Self-Attention GAN(SAGAN) 借鉴了 Attention 机制,提出了基于自注意力机制的 GAN 变种。SAGAN 把图片的逼真度指标:Inception score,从最好的 36.8 提升到 52.52,Frechet Inception distance,从 27.62 降到 18.65。从图片生成效果上来看,SAGAN 取得的突破是十分显著的,同时也启发业界对自注意力机制的关注。

在这里插入图片描述

六、BigGAN

在 SAGAN 的基础上,BigGAN尝试将 GAN 的训练扩展到大规模上去,利用正交正则化等技巧保证训练过程的稳定性。BigGAN 的意义在于启发人们,GAN 网络的训练同样可以从大数据、大算力等方面受益。BigGAN 图片生成效果达到了前所未有的高度:Inception score 记录提升到 166.5(提高了 52.52);Frechet Inception Distance 下降到 7.4,降低了18.65,如图所示,图片的分辨率可达512 × 512,图片细节极其逼真。

在这里插入图片描述
转载至:
https://blog.csdn.net/weixin_35770067/article/details/105378612?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7Edefault-5.base&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7Edefault-5.base


http://chatgpt.dhexx.cn/article/H7uDsePO.shtml

相关文章

基于飞桨PaddlePaddle实现BigGAN生成动漫图像——为艺术创作赋能

作为学力不足、码力有余的深度学习业余玩家,笔者在工作中忙里偷闲,借助AI Studio的免费GPU继续自己对于生成对抗网络落地应用的相关研究。尽管深度学习已在工业生成中广泛应用,但作为研究重头的视觉效果极佳的GAN的图像生成,却在应…

深度学习(四十六)——StarGAN, InfoGAN, ProGAN, StyleGAN, BigGAN, FUNIT, CVAE

StarGAN 论文: 《StarGAN: Unified Generative Adversarial Networksfor Multi-Domain Image-to-Image Translation》 CycleGAN的局限在于:对于两个Domain之间的变换,需要两个G网络。可以想象,当Domain的数量上升时,…

biggan:large scale gan training for high fidelity natural image synthesis

深度解读DeepMind新作:史上最强GAN图像生成器—BigGAN - 知乎本期推荐的论文笔记来自 PaperWeekly 社区用户 TwistedW。由 DeepMind 带来的 BigGAN 可谓是笔者见过最好的 GAN 模型了,这里的 Big 不单单是指模型参数和 Batch 的大,似乎还在暗示…

飞桨PaddlePaddle(论文复现)-BigGAN解读

飞桨PaddlePaddle(论文复现)-BigGAN解读 先来看看效果(左上脚为生成的图像) 论文在现有GAN的基础上对生成样本的保真度与多样性之间的权衡进行改进 在ImageNet的128*128分辨率下训练,我们的模型(BigGANs)得到了166…

深度学习系列43:引入注意力的SAGAN/BigGAN和big_sleep

1. 从SAGAN到BigGAN sa_gan是Self-Attention Generative Adversarial Networks的缩写。 动机:一般的dc_gan(deep convolution)模型擅长处理含有大量纹理的类型,比如天空、风景等,但在结构上的表现比较差,比如不能正确生成人脸、四…

【Large Scale Adversarial Representation Learning 大规模对抗学习(BigGAN) 】学习笔记

目录 1.背景 2.特点 3.BigGAN详细介绍 ①Batch size的增大------以提升IS ②增加网络深度,即增加每层的通道数------以提升IS ③BatchNorm共享嵌入条件标签c------增加参数,提升训练速度 ④将噪声向量 z 送到 G 的多个层而不仅仅是初始层-----提升…

ICLR 2019 Oral 论文 BigGAN 解读及源代码拆解

简称:BigGAN 全称:Large Scale GAN Training for High Fidelity Natural Image Synthesis 来源:ICLR 2019 Oral 一、概述 (一)概要说一下 BigGAN 的研究背景: 到 BigGAN 提出为止,虽然 GANs…

BigGAN-论文阅读笔记

BigGAN-论文阅读笔记 论文地址:Large Scale GAN Training for High Fidelity Natural Image Synthesis-ReadPaper论文阅读平台 文章目录 BigGAN-论文阅读笔记论文结构摘要原文核心 研究背景谱归一化(Spectral Normalization)条件判别 研究意…

BigGAN高保真自然图像合成的大规模GAN训练

2019-02-24 22:23:17 BigGAN-LARGE SCALE GAN TRAINING FOR HIGH FIDELITY NATURAL IMAGE SYNTHESIS 原文:https://arxiv.org/abs/1809.11096 作者:来自DeepMind & Heriot-Watt University 译者:Tony 时长:3K字&#xff…

BigGAN、BiGAN、BigBiGAN简单介绍

介绍 上一篇文章在介绍GAN的评价标准的时候提到了 BigGAN 在Inception Score上取得了巨大的进步,而最近 DeepMind 又基于 BiGAN 提出了 BigBiGAN,它在 ImageNet 上的无监督表示学习和无条件图像生成方面都取得了极为优秀的成绩。 本文主要对BigGAN和BiG…

【GANs学习笔记】(十三)BIGGAN

完整笔记:http://www.gwylab.com/note-gans.html ——————————————————————— 原paper及译文: http://www.gwylab.com/paper-biggan.html 4. BigGAN 4.1 BigGAN解决的问题 我们知道,GANs的终极目标是生成让人无法辨别真…

Paper Reading:BigGAN

URL: https://arxiv.org/pdf/1809.11096.pdf code: https://github.com/AaronLeong/BigGAN-pytorch https://tfhub.dev/s?qbiggan TL;DR 号称具有划时代意义的BigGAN,由DeepMind团队在ICLR2019上发表,将精度作出了跨越式提升。 将Inception Score (IS…

BigGAN论文解读

论文:https://arxiv.org/pdf/1809.11096.pdf 源码:https://github.com/ajbrock/BigGAN-PyTorch 用于高保真自然图像合成的大规模GAN训练 摘要 尽管最近在生成图像建模方面取得了进展,但是从像ImageNet这样的复杂数据集中成功生成高分辨率、…

Big GAN

参考文献: •https://github.com/kayamin/DR-GAN •https://www.jianshu.com/p/4ee8f9284b81 •http://cvlab.cse.msu.edu/pdfs/Tran_Yin_Liu_CVPR2017.pdf •https://arxiv.org/abs/1809.11096 •https://juejin.im/entry/5c05e76c51882539c60cf2d5 •https:…

BigGAN

1、BIGGAN 解读 1.1、作者 Andrew Brock、Jeff Donahue、Karen Simonyan 1.2、摘要 尽管最近在生成图像建模方面取得了进展,但从 ImageNet 等复杂数据集中 成功生成高分辨率、多样化的样本仍然是一个难以实现的目标。为此,我们以迄 今为止最大的规模训…

BigGAN(2019)

论文引入 我们来看一下由 BigGAN 生成的图像: 随着 GAN、VAE 等一众生成模型的发展,图像生成在这几年是突飞猛进,14 年还在生成手写数字集,到 18 年已经将 ImageNet 生成的如此逼真了。 这中间最大的贡献者应该就是 GAN 了&…

BigGAN_用于高保真自然图像合成的大规模 GAN 训练

【飞桨】【Paddlepaddle】【论文复现】BigGAN 用于高保真自然图像合成的大规模 GAN 训练LARGE SCALE GAN TRAINING FOR HIGH FIDELITY NATURAL IMAGE SYNTHESIS1、BiagGAN的贡献2.1背景2.2具体措施与改变2.2.1规模(scaling up)2.2.2截断技巧(…

环形链表之快慢指针

环形链表 前言一、案例1、环形链表2、环形链表II 二、题解1、环形链表2、环形链表II3、源码4、寻找入环点的数学解法 总结参考文献 前言 对于环形链表,通过快慢指针,如果存在环,这这两个指针一定会相遇,这是一种经典的判断环或是应…

快慢指针判断链表中是否存在环以及查找环的起始位置

判断链表中是否有环? 使用快慢指针, 慢指针一次走一步, 快指针一次走两步, 当快慢指针相遇时,说明链表存在环 为什么快指针每次走两步而慢指针每次走一步呢? 因为slow指针和fast指针都会进入环内, 就像在环形跑道内不同位置的两个人;slow指针在后面, fast指针在前面, 但…

链表-快慢指针(C++)

一、链表 链表是由一组在内存中不必相连(不必相连:可以连续也可以不连续)的内存结构Node,按特定的顺序链接在一起的抽象数据类型。 我们常见的链表结构有单链表和双向链表。 单链表,保存了下一个结点的指针&#xf…