1.介绍

本文基本从2014年《Generative Adversarial Nets》翻译总结的。
GAN(Generative Adversarial Nets),生成式对抗网络。包含两个模型,一个生成模型G,用来捕捉数据分布,一个识别模型D,用来评估采样是来自于训练数据而不是G的可能性。

这两个模型G与D是竞争关系、敌对关系。比如生成模型G就像是在制造假的货币,而识别模型D就像是警察,尝试检测这些假币。这两个模型间的竞争,使它们都在不断完善自己,直到假币和真币无法区分为止。

本论文的例子,训练两个模型时仅使用了反向传播和dropout 算法,在从生成模型中采样时,只使用的前向传播。近似推理或者Markov chain是不必要的。

2.相关方法

(1)定向图模型与非定向图模型,比如限制玻尔兹曼机(RBMs)、深度玻尔兹曼机(DBMs)、以及相关变体。这些模型使用了归一化处理,针对随机参数的所有状态。这些归一化比例函数以及他们的梯度是很难计算的,虽然可以采用Markov chain Monte Carlo(MCMC)方法进行估计。
(2)DBNs(Deep belief networks) 是组合模型,包括一个非定向层和一堆定向层。当一个快速近似逐层训练存在时,DBNs在集合非定向与定向模型时也会面临计算困难的问题。
(3)生成随机网络GSN, 使用了Markov chain。而GAN不需要Markov chain,因为在生成时,不需要反向传播。

3.对抗网络

p(z):带有噪声的输入;
G(z,θ):一个可微分的函数,带参数θ的多层感知机;
D(x):代表x是来自于data还是来自于生成函数的概率。
整体训练函数如下,最大化D,同时针对G来最小化log(1-D(G(z))):

算法如下:

3.1命题1

如果G固定,最佳的D如下:


证明如下:

3.2定理1

C(G)=max V(G,D)。
只有生成数据的分布函数p和原数据data的分布函数p相等时,C(G)训练完成,其值等于-log4.

3.3算法的收敛

生成数据的分布函数p收敛于原数据data的分布函数p。

实际上,生成网络只有有限的生成数据分布函数P,因为函数G(z,θ)的存在,我们最终是最优化θ,而不用最优化生成数据分布函数P。

4.实验结果

使用Parzen窗估计,应用于G产生的样例。
核密度估计(kernel density estimation)是在概率论中用来估计未知的密度函数,属于非参数检验方法之一,由Rosenblatt (1955)和Emanuel Parzen(1962)提出,又名Parzen窗(Parzen window)。

生成的示例,比如下图最右侧的图片是生成网络生成的。

5.总结

1.可以用于半监督学习,比如在标签数据较少时,识别器或者推理网络获得的特征可以改善分类效果。
2.训练效率提升,知道了G和D可以有效提升训练速度。

生成式对抗网络GAN(Generative Adversarial Nets)论文笔记相关推荐

  1. 简述一下生成对抗网络GAN(Generative adversarial nets)模型?

    简述一下生成对抗网络GAN(Generative adversarial nets)模型? 生成对抗网络GAN是由蒙特利尔大学Ian Goodfellow在2014年提出的机器学习架构. 要全面理解生 ...

  2. 生成式对抗网络(Generative Adversarial Networks,GANs)

    1. 简介 首先简要介绍一下生成模型(Generative model)与判别模型(Discriminative mode)的概念: 生成模型:对联合概率进行建模,从统计的角度表示数据的分布情况,刻画 ...

  3. 生成式对抗网络GAN必读十篇论文(附论文和代码地址)

    目录索引 一.DCGAN 二.Improved Techniques for Training GANs 三.Conditional GANs 四.Progressively Growing of G ...

  4. 生成式对抗网络(GAN, Generaitive Adversarial Networks)总结

    最近要做有关图像生成的工作-也是小白,今天简单学习一些有关GAN的基础知识,很浅,入个门,大神勿喷. GAN目前确实是在深度学习领域最热门,最有前景的方向之一.近几年有关于GAN的论文非常非常之多,从 ...

  5. 生成式对抗网络(Generative Adversarial Networks, GANs)

    1 原始的 GANs 1.1 GANs 的结构 GANs 的结果图如下所示: 生成式对抗网络 GANs 最重要的两个部分为: 生成器(Generator) :用于生成"假"样本.生 ...

  6. Generative Adversarial Nets 论文笔记

    论文地址 Generative Adversarial Nets 摘要 首先,在论文中提出了一个新的框架:生成对抗网络框架,这个框架是为了通过对抗的过程实现评估生成模型. 处理过程中,我们同时训练两个 ...

  7. 《生成式对抗网络GAN的研究进展与展望》论文笔记

    本文主要是对论文:王坤峰, 苟超, 段艳杰, 林懿伦, 郑心湖, 王飞跃. 生成式对抗网络GAN的研究进展与展望. 自动化学报, 2017, 43(3): 321-332. 进行总结. 相关博客地址: ...

  8. 【Pytorch项目实战】之生成式网络:编码器-解码器、自编码器AE、变分自编码器VAE、生成式对抗网络GAN

    文章目录 博主精品专栏导航 生成式网络 - 生成合成图像 算法一:编码器-解码器 算法二:自编码器(Auto-Encoder,AE) 算法三:变分自编码器(Variational Auto Encod ...

  9. 生成式对抗网络GAN模型搭建

    生成式对抗网络GAN模型搭建 目录 一.理论部分 1.GAN基本原理介绍 2.对KL散度的理解 3.模块导入命令 二.编程实现 1.加载所需要的模块和库,设定展示图片函数以及其他对图像预处理函数 1) ...

  10. 深度学习之生成式对抗网络 GAN(Generative Adversarial Networks)

    一.GAN介绍 生成式对抗网络GAN(Generative Adversarial Networks)是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一.它源于2014年发表的论文:& ...

最新文章

  1. 都有Python了,还要什么编译器
  2. php memcache 封装类,PHP 自定义session储存 MEMCACHE 方式类
  3. 2021-01-07 matlab数值分析 非线性方程求根 牛顿法
  4. python爬虫为什么xpath路径正确却检索不到内容_中国知网爬虫
  5. Linux服务器集群系统(一)—— LVS(Linux Virtual Server)简介
  6. Nginx 访问日志轮询切割
  7. FPGA控制不其他芯片
  8. idea actiBPM插件生成png文件 (解决没有Diagrams或Designer选项问题)
  9. Java 线程池的复用原理
  10. Xamarin iOS教程之使用按钮接接收用户输入
  11. j2me模拟器qq2007_如何在J2ME中创建MIDlet
  12. CMSIS Driver
  13. java代码格式化的快捷键设置_如何使用VS中的快捷键快速格式化代码使好看,整齐...
  14. 愿你历尽千帆,归来仍少年
  15. 从变成浅谈《新概念》三册中的措辞精准
  16. 第六天 黑马十次方 用户注册、用户登陆掌握js-cookie、微信扫码登陆、nuxt嵌套路由
  17. 中断处理优先级与中断相应次序
  18. 音频-mp3 -> pcm 解码
  19. IPv6闲谈-一起玩玩IPv6自动配置
  20. m1 Mac zshrc 环境变量

热门文章

  1. 修复Mac点击图片的显示简介,图片尺寸消失问题
  2. 【实用】把jar转换成exe文件
  3. word2016打开导航——视图下导航窗格框上打勾
  4. python安装路径怎么找-怎么查看python安装路径
  5. python对《三国演义》中出现的人物出现的次数进行统计
  6. 虚拟数字人的3种驱动方式
  7. 20个最佳人工智能和机器学习YouTube频道
  8. php+mysql求职招聘人才网站
  9. 上拉电阻和下拉电阻的区别
  10. App推广必读:怎样通过统计工具来评估渠道的用户质量