当前位置: 首页 > news >正文

AI论文精读笔记-Generative Adversarial Nets(GAN)

1. 论文基本信息

  • 论文标题:Generative Adversarial Nets

  • 作者:Ian J. Goodfellow,∗ Jean Pouget-Abadie,† Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair,‡ Aaron Courville, Yoshua Bengio§

  • 发表时间和期刊:2014.06;NeurIPS

  • 论文链接:Generative Adversarial Nets

2. 研究背景和动机

        到目前为止,深度学习中最引人注目的成功来自于判别模型,通常是那些将高维度、丰富的输入映射到类别标签的模型。相比之下,生成模型的影响力较小,原因在于近似许多难以处理的概率计算(这些计算在最大似然估计和相关策略中出现)非常困难,此外在生成背景中难以利用分段线性单元的优势。

3. 主要贡献

        (1) 我们通过“对抗”的方式提出了一种新的framework用于估算生成模型,绕过了这些难题。在所提出的对抗网络框架中,生成模型与一个对手判别模型进行对抗:一个判别模型学习如何判断样本是来自伪造的分布还是数据分布。生成模型可以类比为一组伪造者,试图制造假币并使用而不被发现,而判别模型则类似于警察,试图识别假币。这场竞争驱使双方不断改进方法,直到假币与真币无法区分。

        (2) 用一个有监督学习的损失函数来做无监督学习。标号来自于是采样的还是生成的。(可以说是自监督学习的灵感来源之一)

4. 方法和模型

        下图是GAN的生成器与判别器的优化过程。其中蓝色虚线代表判别结果的分布情况(注意,当判别结果为\frac{1}{2}时,代表生成器伪造的数据达到最优结果,此时相当于随机猜测);黑色虚线代表真实的数据分布情况;绿色实线代表生成器生成的结果分布。

        生成器的目标就是通过MLP将z(代表噪声分布)映射到x(真实数据分布),可以看到,随着不断优化z,噪声分布逐渐向真实的数据分布靠拢,到最后判别结果的分布趋向于\frac{1}{2}

下图是GAN的核心算法。其中第一个等式用于优化判别器,第二个等式用于优化生成器

5. 实验和结果

略~

6. 讨论和未来工作

GAN的优点总结如下

  1. 无需马尔可夫链:训练过程中不需要依赖马尔可夫链,仅需反向传播来获取梯度。
  2. 无推断步骤:学习过程中无需进行推断操作,简化了模型训练。
  3. 模型灵活性:模型可以集成多种不同的函数,具有较强的灵活性。
  4. 梯度传递优势:生成器网络通过鉴别器的梯度进行更新,而非直接从数据样本中更新参数,这可能带来一定的统计优势,避免输入信息直接复制到生成器的参数中。
  5. 高质量分布表示:相较于基于马尔可夫链的方法,GAN能够表示非常清晰甚至退化的分布,而马尔可夫链方法则需要分布较模糊以便模式之间的混合。

GAN的缺点总结如下

  1. 无显式概率分布表示:GAN模型中没有显式地表示目标概率分布。
  2. 训练不稳定性:生成器和判别器的训练需要很好地同步。

7. 个人理解和反思

        GAN的出现已经过了10年之久,现在也涌现出很多基于GAN的优化工作,比如StyleGAN3等等。而GAN的主要思想也不是前人未曾想到的,不过,GAN将其发扬光大,讲解清楚,成为生成领域的经典之作。

相关文章:

  • 远程访问电脑共享文件
  • ansible_find模块
  • 使用vscode上传git远程仓库流程(Gitee)
  • Vue3 响应式工具函数isRef()、unref()、isReactive()、isReadonly()、isProxy()
  • Springcould -第一个Eureka应用 --- day02
  • SpringBootAdmin源码修改编译002_踩坑记录一堆坑_记录过程_没有成功---VUE工作笔记0027
  • uniapp+uview-plus实现微信小程序自定义tabbar
  • 待机模式中WKUP上升沿模拟开机与关机
  • css总结(记录一下...)
  • 从底层原理上理解ClickHouse 中的稀疏索引
  • freeRTOS 任务的创建、挂起、恢复
  • Java代码审计篇 | ofcms系统审计思路讲解 - 篇4 | XXE漏洞审计
  • 在 Ubuntu 20.04 上安装 Python 3.12:详细教程
  • C++学习笔记之引用(基础)
  • ardunio超声波测距实验
  • Docker和anaconda的区别?
  • 单向循环链表
  • Spring Cloud集成Gateaway
  • Linux:git
  • Linux——进程状态
  • 【社论】个人破产探索,要守住“诚实而不幸”的底线
  • 英国首相斯塔默住所起火,警方紧急调查情况
  • 来伊份深夜回应“粽子中吃出疑似创可贴”:拿到实物后会查明原因
  • 乌外长:乌方准备无条件停火至少30天
  • 第四轮伊美核谈判将于11日在阿曼举行
  • 上海消防全面推行“检查码”,会同相关部门推行“综合查一次”