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

GANs
NVIDIA
Fly

real or fake ?

real or fake ?

1024 x 1024 images generated using the CELEBA-HQ dataset

来源

摘要

  • 描述了生成对抗网络的新的训练方法

  • 关键思想是通过渐进的方式训练生成器和鉴别器:从低分辨率开始,逐步添加新的层次,从而在训练进展中增加更精细的细节

  • 还提出了一种增加生成图像变化的简单方法,并且在无监督的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的更多相关文章

  1. FEC(Forward Error Correction)前向纠错 UDP\RTP 中使用用于改善无线等网络丢包等问题--转

    FEC(Forward Error Correction)前向纠错 UDP\RTP 中使用用于改善无线等网络丢包等问题 算法暂不介绍. 思路:FEC ENCODE 增加冗余包,当无线等网络丢包之后,接 ...

  2. Web标准中用于改善Web应用程序性能的各种方法总结

    提起Web应用程序中的性能改善,广大开发者们可能会想到JavaScript与DOM访问等基于各种既存技术的性能改善方法.最近,各种性能改善方法被汇总成为一个Web标准. 本文对Web标准中所包含的各种 ...

  3. SSE图像算法优化系列二十九:基础的拉普拉斯金字塔融合用于改善图像增强中易出现的过增强问题(一)

    拉普拉斯金字塔融合是多图融合相关算法里最简单和最容易实现的一种,我们在看网络上大部分的文章都是在拿那个苹果和橙子融合在一起,变成一个果橙的效果作为例子说明.在这方面确实融合的比较好.但是本文我们主要讲 ...

  4. [改善Java代码]养成良好习惯,显式声明UID

    建议11: 养成良好习惯,显式声明UID 我们编写一个实现了Serializable接口(序列化标志接口)的类, Eclipse马上就会给一个黄色警告:需要增加一个Serial Version ID. ...

  5. Pixelmetrix :OTT Media Grinder (OTT TV 质量评价设备)

    有关OTT TV 质量评价方法方面的研究少之又少.国内貌似还几乎没有相关的研究.不过在国外已经找到相关的产品了,翻译了一下产品手册的部分内容,很有参考价值,尤其是其提出的8个指标. 概述 OTT Me ...

  6. 你的GAN训练得如何--GAN 的召回率(多样性)和精确率(图像质量)方法评估

    生成对抗网络(GAN)是当今最流行的图像生成方法之一,但评估和比较 GAN 产生的图像却极具挑战性.之前许多针对 GAN 合成图像的研究都只用了主观视觉评估,一些定量标准直到最近才开始出现.本文认为现 ...

  7. 通过ulimit改善linux系统性能(摘自IBM)

    本文介绍了 ulimit 内键指令的主要功能以及用于改善系统性能的 ulimit 用法.通过这篇文章,读者不仅能够了解 ulimit 所起的作用.而且能够学会怎样更好地通过 ulimit 限制资源的使 ...

  8. BP神经网络及其在教学质量评价中 的应用

    本文学习笔记是自己的理解,如有错误的地方,请大家指正批评.共同进步.谢谢! 之前的教学质量评价,仅仅是通过对教学指标的简单处理.如求平均值或人为的给出各指标的权值来加权求和,其评价结果带有非常大主观性 ...

  9. DevOps之持续集成SonarQube代码质量扫描

    一.SonarQube介绍       SonarQube是一个用于代码质量检测管理的开放平台,可以集成不同的检测工具,代码分析工具,以及持续集成工具.SonarQube 并不是简单地把不同的代码检查 ...

随机推荐

  1. Elasticsearch创建文档,利用Kibana进行创建文档

    首先先来了解一下什么是文档,es里边的文档相当于mysql数据库里边的一张表,如果你用过mongodb的话,那么肯定对es这种数据格式一定很了解了.接下来我们来看一下如何创建一个文档. PUT /sd ...

  2. Saiku导出excel指标列无线条以及0与空值显示问题(三十二)

    Saiku导出excel指标列无线条以及0与空值显示问题 描述: 数据库中字段值为0 ,与数据库中字段值为 null 时 ,saiku会将为0 以及为 null 的数据都不展示出来,但是我们其实希望数 ...

  3. [转]linux之初识SELinux

    转自:http://www.linuxidc.com/Linux/2014-07/104447.htm 1.selinux的概述 selinux相信大家一定不会陌生,它的全称是内核级加强型防火墙.在服 ...

  4. Android Market google play store帐号注册方法流程 及发布应用注意事项【转载】

    [转载]http://www.cnblogs.com/zdz8207/archive/2012/07/09/google-play-store-registered.html Android Mark ...

  5. 6.11---@RequestMapping注解的6+2个属性---6.11

    produces:它的作用是指定返回值类型,不但可以设置返回值类型还可以设定返回值的字符编码: consumes: 指定处理请求的提交内容类型(Content-Type),例如application/ ...

  6. 3--Java NIO基础1

    一.NIO概述 1. BIO带来的挑战 BIO即堵塞式I/O,数据在写入或读取时都有可能堵塞,一旦有堵塞,线程将失去CPU的使用权,性能较差. 2. NIO工作机制 Java NIO由Channel. ...

  7. CSS——background综合运用

    搜索栏图标: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> < ...

  8. 您厉害您赚得多:聪明投资者的聊天记录,雪球CEO的21条投资理念

    3星|<您厉害您赚得多>:雪球创始人的投资理念.原则.技巧,及其在雪球上跟一些用户的互动的内容 作者是雪球创始人.CEO,全书基本是作者的一些投资理念+作者在雪球上跟用户的互动的内容,还有 ...

  9. transition-分栏按钮动画

      => css: .cateBtn{ position: relative; background: #fff; border: 1px solid #ddd; border-radius: ...

  10. transform: scale(x,y)

    作用: 1)缩放 2)反转 水平翻转:transform: scale(-1,1); 垂直翻转:transform: scale(1,-1); 水平垂直翻转: transform: scale(-1, ...