前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >GAN的发展系列二(PGGAN、SinGAN)

GAN的发展系列二(PGGAN、SinGAN)

作者头像
Minerva
发布2020-06-16 17:27:20
2.7K0
发布2020-06-16 17:27:20
举报

GAN的发展系列二(PGGAN、SinGAN)

在前面的文章里我们已经介绍了GAN生成对抗网络的入门和一些GAN系列,在之后的专辑里会继续介绍一些比较经典的GAN。

GAN生成对抗网络入门介绍

GAN的发展系列一(CGAN、DCGAN、WGAN、WGAN-GP、LSGAN、BEGAN)

一、PGGAN渐进式增长GAN 论文:《Progressive Growing of GANs for Improved Quality, Stability, and Variation》 论文地址:https://arxiv.org/pdf/1710.10196.pdf 代码地址:tkarras/progressive_growing_of_gans

当生成图像的分辨率很高时判别器很容易识别出生成器生成的图像是假的,导致生成器难以训练,在前面文章介绍的DCGAN和WGAN也只能生成64x64的图像,再大细节丢失严重。PGGAN引入了一种新的训练方式,从4x4的生成图像开始, 直到1024x1024的人脸,渐进式的让生成器和判别器进行增长,首先从低分辨率图像开始,逐渐添加新层使得网络模型不断复杂化来学习更好的细节特征,这种方法既可以加速训练也可以使训练更加稳定。该文创建了一个更高质量版本的CELEBA数据集,允许输出分辨率高达 1024 × 1024像素。 PGGAN渐进式的方法使得训练首先发现大尺度结构的图片分布,然后将关注点逐渐的转移到更好尺度细节上,而不是必须同时学习所有的尺度。而且通过生成器和判别器互相竞争促进两者的训练,随着GANs网络的渐进增长,大部分的迭代都在较低分辨率下完成,这样便减少了训练时间。

这里的4x4指对相应大小的图片进行操作,生成器先生成大小为4x4的图像,其中Reals是指经过处理的同为4x4的人脸图像,判别器的结构与生成器对称,当输入800k张真实图片后停止训练并保存参数。然后加入下一层,因为此时生成网络最后的输出通道数不一定为3,所以需要toRGB将其转换为RGB三通道,具体操作时用1x1的卷积核进行卷积操作,fromRGB恰好相反。 为了防止新加入的层对原网络产生巨大影响,当把生成器和判别器的分辨率加倍时平滑的增加新的层。下图解释了如何从16 × 16像素的图片转换到32 × 32像素的图片。

详细的网络结构如下:

PGGAN的主要优点就是能生成高质量的样本

PS:本人将渐进式增长的训练方式引入UNet模型做了一些浅显的实验,有兴趣的大佬朋友们可以点击:

论文:《PGU-net+: Progressive Growing of U-net+ for Automated Cervical Nuclei Segmentation》

论文地址:https://arxiv.org/abs/1911.01062

代码地址:https://github.com/Minerva-J/PGU-net-Model

二、SinGAN 论文《SinGAN:Learning a Generative Model from a Single Natural Image》 论文地址:https://arxiv.org/abs/1905.01164 代码:https://github.com/tamarott/SinGAN 更多展示:https://youtu.be/xk8bWLZk4DU

SinGAN仅在一张图像上进行训练,这张图像既是训练样本也是测试样本,SinGAN是一种非条件(基于随机噪声)的生成对抗模型,利用多尺度金字塔结构的全卷积GAN来提取图像内部分布信息,生成具有相同视觉内容的高质量、多变的样本,每个GAN负责捕捉不同尺度的图像分布,多种图像处理任务都可以应用SinGAN,如图像绘制、编辑、融合,超分辨率重建和动画化。

为了捕捉图像中目标形状和排列位置这样的全局属性(如天空在顶部,地面在底部),以及精细的细节和纹理信息,SinGAN包含具有层级结构的patch-GANs(马尔可夫判别器),其中每个判别器负责捕捉x不同尺度的分布,

损失函数由对抗损失和重构损失组成,对抗损失是生成器和判别器互相博弈,

重构损失是

生成图像: 1、 多尺度在测试阶段 从第N个尺度生成的斑马,有很多条腿。但是从第N-1个尺度开始,生成的样本就很真实了,生成的大树也是这样,而且对于细节保留的更多。

2、 多尺度在训练阶段 当尺度更丰富时,可以捕获全局的结构。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python编程和深度学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档