用于改善质量、稳定性和多样性的可增长式GAN
用于改善质量、稳定性和多样性的可增长式GAN

来源
- 论文:Progressive Growing of GANs for Improved Quality, Stability, and Variation
- 链接:http://research.nvidia.com/publication/2017-10_Progressive-Growing-of
- 推荐理由: Under review as a conference paper at ICLR 2018
摘要
描述了生成对抗网络的新的训练方法
关键思想是通过渐进的方式训练生成器和鉴别器:从低分辨率开始,逐步添加新的层次,从而在训练进展中增加更精细的细节
还提出了一种增加生成图像变化的简单方法,并且在无监督的CIFAR10中实现了创记录的8.80的初始分数。
此外,描述了几个实现细节,这些细节对于抑制生成器和鉴别器之间的不健康竞争非常重要。
提出了一个新的衡量GAN结果的指标,无论是在图像质量和变化方面。
作为额外的贡献,构建了更高质量的CelebA数据集。
提出模型
模型图

以往的 GAN 生成低分辨率图片稳定迅速,但生成高分辨率图片困难重重。这篇文章从简单的低分辨率图片开始同时训练生成器和判别器,然后逐层增加分辨率,让训练的难度每层只增加一点点。感觉就像是算法里面的暴力搜索到二分法搜索,大大提高了高分辨率图片的生成速度及质量。
其他的一些改进
以往没有好的办法去判断 GAN 生成的图片是好是坏,很多时候需要肉眼来看,有很大的主观性,而且人能检查的样本空间不够大。文章的第 5 节介绍了如何用统计的方法来直观的判断生成样本的好坏,采用的思路是在各个尺度上抽取 7x7 个像素的局域碎片,比较生成图片与训练图片的局域结构相似性。
GAN 生成图像的多样性不好量化,当判别器过强时生成器可能会塌缩到单个类。这篇文章不添加任何超参数,只是将所有属性在所有空间位置的统计标准差求平均,作为卷积神经网络 Feature Map 的一个常量通道,就得到了更好的多样性 。
使用了一种“local response normalization”方法来对 FeatureMap 做归一化,不清楚与 BatchNormalization 的效果相比有没有提升。
在 WGAN-GP 的正规化项中使用非常大的 gamma 因子,从公式上看当生成图片与训练图片相差过大时,大的 gamma 因子可以让生成分布快速漂移到训练图像分布。
算法结果
缺点以及不足
论文最后说了一下还面临的一些情况:
与真实的写实主义相比,还有一段路要走:
- 图片语义敏感性和理解数据集的相关结束还有很大进步空间
- 图像的微观结构也有改进的余地
reference
http://mp.weixin.qq.com/s/1XkOEIlTD4Igr_Ws2sJvoQ
https://www.leiphone.com/news/201710/tPXkf1dcoGDqv5HD.html
http://research.nvidia.com/publication/2017-10_Progressive-Growing-of
用于改善质量、稳定性和多样性的可增长式GAN的更多相关文章
- FEC(Forward Error Correction)前向纠错 UDP\RTP 中使用用于改善无线等网络丢包等问题--转
FEC(Forward Error Correction)前向纠错 UDP\RTP 中使用用于改善无线等网络丢包等问题 算法暂不介绍. 思路:FEC ENCODE 增加冗余包,当无线等网络丢包之后,接 ...
- Web标准中用于改善Web应用程序性能的各种方法总结
提起Web应用程序中的性能改善,广大开发者们可能会想到JavaScript与DOM访问等基于各种既存技术的性能改善方法.最近,各种性能改善方法被汇总成为一个Web标准. 本文对Web标准中所包含的各种 ...
- SSE图像算法优化系列二十九:基础的拉普拉斯金字塔融合用于改善图像增强中易出现的过增强问题(一)
拉普拉斯金字塔融合是多图融合相关算法里最简单和最容易实现的一种,我们在看网络上大部分的文章都是在拿那个苹果和橙子融合在一起,变成一个果橙的效果作为例子说明.在这方面确实融合的比较好.但是本文我们主要讲 ...
- [改善Java代码]养成良好习惯,显式声明UID
建议11: 养成良好习惯,显式声明UID 我们编写一个实现了Serializable接口(序列化标志接口)的类, Eclipse马上就会给一个黄色警告:需要增加一个Serial Version ID. ...
- Pixelmetrix :OTT Media Grinder (OTT TV 质量评价设备)
有关OTT TV 质量评价方法方面的研究少之又少.国内貌似还几乎没有相关的研究.不过在国外已经找到相关的产品了,翻译了一下产品手册的部分内容,很有参考价值,尤其是其提出的8个指标. 概述 OTT Me ...
- 你的GAN训练得如何--GAN 的召回率(多样性)和精确率(图像质量)方法评估
生成对抗网络(GAN)是当今最流行的图像生成方法之一,但评估和比较 GAN 产生的图像却极具挑战性.之前许多针对 GAN 合成图像的研究都只用了主观视觉评估,一些定量标准直到最近才开始出现.本文认为现 ...
- 通过ulimit改善linux系统性能(摘自IBM)
本文介绍了 ulimit 内键指令的主要功能以及用于改善系统性能的 ulimit 用法.通过这篇文章,读者不仅能够了解 ulimit 所起的作用.而且能够学会怎样更好地通过 ulimit 限制资源的使 ...
- BP神经网络及其在教学质量评价中 的应用
本文学习笔记是自己的理解,如有错误的地方,请大家指正批评.共同进步.谢谢! 之前的教学质量评价,仅仅是通过对教学指标的简单处理.如求平均值或人为的给出各指标的权值来加权求和,其评价结果带有非常大主观性 ...
- DevOps之持续集成SonarQube代码质量扫描
一.SonarQube介绍 SonarQube是一个用于代码质量检测管理的开放平台,可以集成不同的检测工具,代码分析工具,以及持续集成工具.SonarQube 并不是简单地把不同的代码检查 ...
随机推荐
- JavaScript--编程
第一步:把注释语句注释. 第二步:编写代码,在页面中显示 “系好安全带,准备启航--目标JS”文字: 第三步:编写代码,在页面中弹出提示框“准备好了,起航吧!” 提示: 可以把弹框方法写在函数里. 第 ...
- [转]Linux命令wc的详细用法
转自:http://blog.hehehehehe.cn/a/17301.htm wc命令用来打印文件的文本行数.单词数.字节数等(print the number of newlines, word ...
- NHibernate系列学习(二)-使用sql和hql以及linq
1.本文主要介绍了NH的三种查询方式 2.界面查看 3.代码架构 4.代码详情 namespace KimismeDemo { public partial class Form2 : Form { ...
- 研磨JavaScript系列
JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言.同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作.它最初由网景公司 ...
- CSS实现两栏布局
写在前面 两栏布局是指页面布局由主栏和边栏组成,是许多网页的布局方式,一般使用CSS去实现两栏布局. 实现两栏布局的方式有多种,这里采用四种比较常见的实现方式.主要是流体布局(liquid layou ...
- Android java.lang.RuntimeException: Canvas: trying to use a recycled bitmap android.graphics.Bitmap@412d7230
近期遇到了如标题这种错误,再次记录解决方法.本文參考帖子: http://bbs.csdn.net/topics/390196217 出现此bug的原因是在内存回收上.里面用Bitamp的代码为: t ...
- Ch03 React/JSX/Component 簡介
Facebook 本身有提供 Test Utilities,但由于不够好用,所以目前主流开发社群比较倾向使用 Airbnb 团队开发的 enzyme,其可以与市面上常见的测试工具(Mocha.Karm ...
- 挂载硬盘,提示 mount: unknown filesystem type 'LVM2_member'的解决方案
问题现象:由于重装linux,并且加了固态硬盘,直接将系统装在固态硬盘中.启动服务器的时候, 便看不到原来机械硬盘的挂载目录了,不知如何访问机械硬盘了.直接用命令 mount /dev/sda3 /s ...
- @RequestMapping参数value和params的区别
value的值可以是一个url地址的形式或者正则表达式或者rest风格的形式,而params正如其名是参数,访问的时候params的值只能作为参数,不能作为访问的地址,请看下例> value的使 ...
- 如何从源码启动和编译IoTSharp
IoTSharp 项目是一个开源物联网平台,数据库使用PostgreSQL , 后端使用 Asp.Net Core 2.2 ,前端使用 vue-element-admin , 下面我们介绍如何启动项 ...