GAN(Generative Adversarial Nets),产生式对抗网络

存在问题:

1.无法表示数据分布

2.速度慢

3.resolution太小,大了无语义信息

4.无reference

5.intend to generate same image

6.梯度消失

论文摘要:

1、Goodfellow, Ian, et al. "Generative adversarial nets." Advances in Neural Information Processing Systems. 2014.

做如下优化:

全局最优解为:

训练过程:

算法描述:先优化discriminator,再训练generator

latent code插值后出现了渐变特效:

2.Mirza, Mehdi, and Simon Osindero. "Conditional generative adversarial nets."arXiv preprint arXiv:1411.1784 (2014).

优化目标:

好像就是加了label信息。

3.Denton, Emily L., Soumith Chintala, and Rob Fergus. "Deep Generative Image Models using a Laplacian Pyramid of Adversarial Networks."Advances in neural information processing systems. 2015.

不知道这篇论文正式发表没有。这篇论文似乎就是做了一个GAN和提高分辨率的结合。不过本来就没有什么语义信息的图片,就算提高分辨率感觉也没什么用,所以感觉96x96分辨率的结果没什么意义。

原理:

整个test过程为:

整个train过程为:

一些例子:

4.Radford, Alec, Luke Metz, and Soumith Chintala. "Unsupervised representation learning with deep convolutional generative adversarial networks." arXiv preprint arXiv:1511.06434 (2015).

这篇论文也不知道发表没有。

用了很多trick,什么batchnorm,全卷积无全连接,无pooling,用了LeakyReLu。

网络结构:

个人感觉效果还不错:

进行了有趣的实验:

5.Salimans, Tim, et al. "Improved techniques for training gans." arXiv preprint arXiv:1606.03498 (2016).

提出了一些改进的trick。

用feature算距离

加label

效果:感觉没什么语义信息

6.Chen, Xi, et al. "InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets." arXiv preprint arXiv:1606.03657 (2016).

主要是为了解决产生一样的sample的问题

公式:

结果:

7. Arjovsky M, Chintala S, Bottou L. Wasserstein GAN[J]. arXiv preprint arXiv:1701.07875, 2017.

相关链接:https://zhuanlan.zhihu.com/p/25071913?utm_medium=social&utm_source=wechat_timeline&from=timeline

https://arxiv.org/abs/1701.07875

对生成器的loss进行散度(JS散度,KL散度)的等价转换,从而更直观也更容易分析不同loss对应的相应问题,这种分析比直接分析函数loss或者minmax函数更加容易。为了解决这些问题,引入了Wasserstein距离,替代了原来的loss。这种loss使得生成器的有一定的梯度,防止梯度消失,生成器训练不动的情况。这种loss还能指示训练效果以及防止模型崩塌。

8.Li, Chongxuan, Jun Zhu, and Bo Zhang. "Max-Margin Deep Generative Models for (Semi-) Supervised Learning." arXiv preprint arXiv:1611.07119 (2016).

实验室学长的工作,用GAN做半监督学习。利用generator产生更多的数据,帮助classfier训练。

9.Wang, Jun, et al. "IRGAN: A Minimax Game for Unifying Generative and Discriminative Information Retrieval Models." arXiv preprint arXiv:1705.10513 (2017).

SIGIR 2017的best paper, 利用GAN的思想总和了检索领域的两大主流算法:一种根据关键字生成查询结果,一种评价查询和文档之间的关联性。generator用于生成,discriminator用于关联性评价。

GAN(Generative Adversarial Nets)的发展的更多相关文章

  1. Conditional Generative Adversarial Nets

    目录 引 主要内容 代码 Mirza M, Osindero S. Conditional Generative Adversarial Nets.[J]. arXiv: Learning, 2014 ...

  2. Generative Adversarial Nets[Wasserstein GAN]

    本文来自<Wasserstein GAN>,时间线为2017年1月,本文可以算得上是GAN发展的一个里程碑文献了,其解决了以往GAN训练困难,结果不稳定等问题. 1 引言 本文主要思考的是 ...

  3. Generative Adversarial Nets(原生GAN学习)

    学习总结于国立台湾大学 :李宏毅老师 Author: Ian Goodfellow • Paper: https://arxiv.org/abs/1701.00160 • Video: https:/ ...

  4. Generative Adversarial Nets(GAN Tensorflow)

    Generative Adversarial Nets(简称GAN)是一种非常流行的神经网络. 它最初是由Ian Goodfellow等人在NIPS 2014论文中介绍的. 这篇论文引发了很多关于神经 ...

  5. 一文读懂对抗生成学习(Generative Adversarial Nets)[GAN]

    一文读懂对抗生成学习(Generative Adversarial Nets)[GAN] 0x00 推荐论文 https://arxiv.org/pdf/1406.2661.pdf 0x01什么是ga ...

  6. Generative Adversarial Nets (GAN)

    目录 目标 框架 理论 数值实验 代码 Generative Adversarial Nets 这篇文章,引领了对抗学习的思想,更加可贵的是其中的理论证明,证明很少却直击要害. 目标 GAN,译名生成 ...

  7. Generative Adversarial Nets[content]

    0. Introduction 基于纳什平衡,零和游戏,最大最小策略等角度来作为GAN的引言 1. GAN GAN开山之作 图1.1 GAN的判别器和生成器的结构图及loss 2. Condition ...

  8. Generative Adversarial Nets[CAAE]

    本文来自<Age Progression/Regression by Conditional Adversarial Autoencoder>,时间线为2017年2月. 该文很有意思,是如 ...

  9. (转)Deep Learning Research Review Week 1: Generative Adversarial Nets

    Adit Deshpande CS Undergrad at UCLA ('19) Blog About Resume Deep Learning Research Review Week 1: Ge ...

随机推荐

  1. android 布局权重问题(最近布局经常坑爹)

    android 布局 权重 With layout_weight you can specify a size ratio between multiple views. E.g. you have ...

  2. Visual Studio Code 调试 nodejs (断点调试、自动重启、进程调试)

    学习链接: https://cnodejs.org/topic/5a9661ff71327bb413bbff5b https://github.com/nswbmw/node-in-debugging ...

  3. python标准库介绍——4 string模块详解

    ==string 模块== ``string`` 模块提供了一些用于处理字符串类型的函数, 如 [Example 1-51 #eg-1-51] 所示. ====Example 1-51. 使用 str ...

  4. Yii2 mongodb 扩展的where的条件加入大于小于号浅析(转)

    1. mongodb的where中有比较丰富的 条件,如下: static $builders = [ 'NOT' => 'buildNotCondition', 'AND' => 'bu ...

  5. mysql服务器无法连接10055错误解决示例

        windows服务器下,mysql运行一段时间之后忽然无法连接,但是mysql服务启动正常,连接时报错: can't connect to mysql server on 'localhost ...

  6. REST技术第三步 @BeanParam的使用

    我简介下rest中@BeanParam的使用 我们来做一个计算加法的服务. 提供两个參数a和b,计算出a+b. 參数都在URL里 就是类似这样的效果. 这次用上@BeanParam 首先写个POJO来 ...

  7. SourceInsight-显示文件完整路径

    使用Source insight的时候想看文件的全路径,但是默认的是中间省略的路径,所以可以通过: 1.Options-->Preferences-->Display 设置Trim lon ...

  8. 【Verilog】verilog实现奇数次分频

    实现占空比为50%的N倍奇数分频:首先进行上升沿触发进行模N计数,计数到某一个值时进行输出时钟翻转,然后经过(N-1)/2再次进行翻转得到一个占空比非50%的奇数n分频时钟.再者 同时进行下降沿触发的 ...

  9. C++ 容器类 vector使用

    vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的. 用法: 1.文件包含: ...

  10. 【转】批量删除redis中的key

    1. DEL 直接加键名称 DEL key1 key2 key3 127.0.0.1:6379>  DEL site_msg_99973  false site_msg_99974   fals ...