专栏首页目标检测和深度学习CycleGAN:图片风格,想换就换 | ICCV 2017论文解读

CycleGAN:图片风格,想换就换 | ICCV 2017论文解读

在碎片化阅读充斥眼球的时代,越来越少的人会去关注每篇论文背后的探索和思考。

本期推荐的论文笔记来自 PaperWeekly 社区用户 @LUOHAO。本文提出的模型名为 CycleGAN,作者希望在不借助 paired example 情况下,来实现图片的风格转换。

如果你对本文工作感兴趣,点击底部的阅读原文即可查看原论文。

关于作者:罗浩,浙江大学博士研究生,研究方向为计算机视觉和深度学习,现为旷视科技(Face++)的 research intern。

■ 论文 | Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks

■ 链接 | https://www.paperweekly.site/papers/807

■ 源码 | https://junyanz.github.io/CycleGAN/

前言

CycleGAN 是发表于 ICCV17 的一篇 GAN 工作,可以让两个 domain 的图片互相转化。传统的 GAN 是单向生成,而 CycleGAN 是互相生成,网络是个环形,所以命名为 Cycle。

并且 CycleGAN 一个非常实用的地方就是输入的两张图片可以是任意的两张图片,也就是 unpaired。

单向GAN

读者可以按照原论文的顺序理解 CycleGAN,这里我按照自己的思路解读。CycleGAN 本质上是两个镜像对称的 GAN,构成了一个环形网络。其实只要理解了一半的单向 GAN 就等于理解了整个CycleGAN。

上图是一个单向 GAN 的示意图。我们希望能够把 domain A 的图片(命名为 a)转化为 domain B 的图片(命名为图片 b)。

为了实现这个过程,我们需要两个生成器 G_AB 和 G_BA,分别把 domain A 和 domain B 的图片进行互相转换。

图片 A 经过生成器 G_AB 表示为 Fake Image in domain B,用 G_AB(a) 表示。而 G_AB(a) 经过生辰器 G_BA 表示为图片 A 的重建图片,用 G_BA(G_AB(a)) 表示。

最后为了训练这个单向 GAN 需要两个 loss,分别是生成器的重建 loss 和判别器的判别 loss。

判别 loss:判别器 D_B 是用来判断输入的图片是否是真实的 domain B 图片,于是生成的假图片 G_AB(A) 和原始的真图片 B 都会输入到判别器里面,公示挺好理解的,就是一个 0,1 二分类的损失。最后的 loss 表示为:

生成 loss:生成器用来重建图片 a,目的是希望生成的图片 G_BA(G_AB(a)) 和原图 a 尽可能的相似,那么可以很简单的采取 L1 loss 或者 L2 loss。最后生成 loss 就表示为:

以上就是 A→B 单向 GAN 的原理。

CycleGAN

CycleGAN 其实就是一个 A→B 单向 GAN 加上一个 B→A 单向 GAN。两个 GAN 共享两个生成器,然后各自带一个判别器,所以加起来总共有两个判别器和两个生成器。一个单向 GAN 有两个 loss,而 CycleGAN 加起来总共有四个 loss。

CycleGAN 论文的原版原理图和公式如下,其实理解了单向 GAN 那么 CycleGAN 已经很好理解。

X→Y 的判别器损失为,字母换了一下,和上面的单向 GAN 是一样的:

同理,Y→X 的判别器损失为:

而两个生成器的 loss 加起来表示为:

最终网络的所有损失加起来为:

论文里面提到判别器如果是对数损失训练不是很稳定,所以改成的均方误差损失,如下:

下面放一张网友们自制的 CycleGAN 示意图,比论文原版的更加直观。

效果展示

CycleGAN 的效果还是不错的,论文里给出了很多结果图,可以欣赏一下。

本文分享自微信公众号 - 目标检测和深度学习(The_leader_of_DL_CV)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-03-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【资源】史上最全数据集汇总

    无论是数据挖掘还是目前大热的深度学习,都离不开“大数据”。大公司们一般会有自己的数据,但对于创业公司或是高校老师、学生来说,“Where can I get l...

    朱晓霞
  • 别再提程序员应届年薪20万了,人工智能已经年薪60万了!

    对人工智能而言,2017是不平凡的一年: AlphaGo再胜人类 腾讯宣布进军AI 百度无人驾驶汽车上五环 AI教育要从娃娃抓起 寒武纪成全球AI芯片首个独角兽...

    朱晓霞
  • CVPR 2018视频行为识别挑战赛结果出炉:前三名均由国内团队包揽

    Moment 是由 MIT-IBM Watson AI Lab 开发的研究项目。该项目致力于构建超大规模数据集来帮助 AI 系统识别和理解视频中的动作和事件。

    朱晓霞
  • 盘点现在应用得最多的8大BI工具

    目前,无论是大企业还是小企业,都面临着数字化转型的挑战。如何在大数据中获得更好地洞察力,有效改善用户体验,同时达到优化生产力的效果。在这个过程中,BI工具起到了...

    数据前沿
  • 海量之道系列文章之弱联网优化 (一)

    弱联网优化作为海量之道2.0系列课题的基础方法论之一,望文生义,想必定是卖弄移动网络信号不佳时如何优化的奇技淫巧。恭喜你,感觉靠谱,不过我们还想多聊一点其它话题...

    樊华恒
  • GAN对人脸图像算法产生了哪些影响?

    人脸图像是整个图像领域里面研究人员最多,应用最广的一个方向。GAN作为时下最新兴的深度学习模型,在人脸图像领域里已经颇有建树,今天咱们就聊聊GAN对人脸图像算法...

    马上科普尚尚
  • 使用神经网络预测股价:失败了!!!

    当我们说起金融时间序列的预测,大家可能第一个想到的是预测股票价格。 然而,Chollet 的《Deep Learning with Python》一书强调,人们...

    量化投资与机器学习微信公众号
  • Spark常用Transformations算子(二)

    介绍以下Transformations算子: aggregateByKey join cogroup cartesian pipe repartit...

    CoderJed
  • 人脸识别技术一夜躺枪后 百度、旷视、商汤、云从等是这样“技术”回应的

    昨晚的央视315晚会上,人脸识别技术被曝存在安全隐患。不少观众看到主持人在现场技术人员支持下,仅凭两部手机、一张随机正面照片及一个换脸App,分别就一张”眨眨眼...

    AI科技评论
  • 重要的是图表思维,而不是工具

    很久没有作图了,主要是一时找不到应该练手的案例。 然后昨天逛网易数独栏目的数据新闻,看到一幅还不错的案例,对于我来说值得一试,然后就手痒给照葫芦画瓢弄出来了。(...

    数据小磨坊

扫码关注云+社区

领取腾讯云代金券