阅读小结:Improved Techniques for training GANS
来源:互联网 发布:淘宝游戏交易 编辑:程序博客网 时间:2024/05/17 23:37
github地址:https://github.com/openai/improved-gan/
What:
提出了对于GANs新的结构和训练过程。主要focus在两个应用:半监督学习 和 更好的图像产生。
对于G,不要求一个和test data和像的模型,也不要求不使用label。
实验中,D在半监督分类任务上达到了state-of-art的结果。
G在MNIST样本人已经无法分辨,CIFAR10的样本人也有21.3%的概率认错。
How:
训练GANs 其实是一个找纳什均衡的问题。但这个均衡很难找到,cost函数不是凸的。
所以引入了一些策略来鼓励收敛。
1. Feature matching
为G设定一个新的目标函数。
替代原先的最大化D的目标,新的目标是用G去产生数据来匹配真实数据。 D还是和原来一样。
f(x) 代表D中的一个中间层,新的目标函数为 f(G(x)) 和 f(z) 的二范数最小。
2.minibatch discrimination
孤立的看一个个sample,容易使G收敛到一个点(这就是我之前跑实验常遇到的问题啊!!!)
之前DCGAN里面用batch normal其实也是为了让D不孤立的去看sample。
所以作者提出了使用minibatch discrimination,意思是我们不孤立的看sample,加入sample之间的信息,来写D。(G的objective不变,还是最大化D)
公式的主要意思是,除了D中原来的f(x)外,加入一个信息,就是minibatch 中 f(x)之间的距离 (在bp的时候会有作用)
(作者还提到在训练分类器时,feature matching会表现得更好)
3.Historical averaging
加入了一个正则项。
4.One-side label smoothing
把gt的label 从1,0变成0.9,0.1
generate还是 1和 0
5.VBN
batch normalize 依赖minibatch里面的其他数据。这会有影响。所以提出了一个 virtual batch normalise
每次sample的时候另外再sample一个batch 根据这个batch做norm (这只使用在G中)
- 阅读小结:Improved Techniques for training GANS
- Improved Techniques for Training GANs
- PROGRESSIVE GROWING OF GANS FOR IMPROVED QUALITY, STABILITY, AND VARIATION
- PROGRESSIVE GROWING OF GANs for IMPROVED QUALITY, STABILITY AND VARIATION
- 阅读小结An Improved Deep Learning Architecture for Person Re-Identification
- Reading Note: Progressive Growing of GANs for Improved Quality, Stability, and Variation
- Techniques for preventing overfitting in training Deep Neural Networks
- [文献阅读] METEOR: An Automatic Metric for MT Evaluation with Improved Correlation with Human Judgments
- 《Improved Recurrent Neural Networks for Session-based Recommendations》 DLRS 2016 阅读笔记
- Iprobe for Hanic Improved documentation
- suricata for Hanic Improved documentation
- 阅读小结: Artist style transfer for videos
- New techniques for codeinjection
- Vim Improved笔记之Commands For Programmers
- Bag-of-colors for Improved Image Search
- presentation and techniques for 3d object recognition and scene interpretation一书阅读笔记(更新中)
- C++ Timesaving Techniques For Dummies
- Debugging techniques for PHP programmers
- ExtJS如何取得GridPanel当前选择行数据对象
- 选股能力 配置能力
- UVA 10340 All in All
- Flask Web 开发 用户资料_3
- angularjs 点击按钮之后禁用按钮,防止多重提交
- 阅读小结:Improved Techniques for training GANS
- android 全局异常监控
- SQL语句-统计全部数据,过滤掉其中两个字段同时重复的记录
- android系统中“关于设备”中android版本和android安全补丁信息修改
- 设置select只读不可编辑,值可传递
- javaScript知识点-----原生Ajax的基本用法
- Android笔记记录--1
- 回收键盘的三种方法
- OpenGL绘制纹理时,glGenTextures()函数带来的内存泄露,使程序被杀死。