原文地址:https://arxiv.org/abs/1703.10593

背景——风格迁移

图片生成领域是GAN网络的天下,最近很多人将GAN网络应用到了图像风格迁移领域。这篇论文也是做image to image translation,之前已经有较为成功的网络PIX2PIX了(同一个团队做的),本篇论文的出发点和PIX2PIX的不同在于:

  1. PIX2PIX网络要求提供image pairs,也即是要求提供x和y,整个思路为:从噪声z,根据条件x,生成和真实图片y相近的y‘。条件x和图像y是具有一定关联性的。
  2. 而本篇CycalGAN不要求提供pairs,如题目所说:Unpaired。因为成对的图像数据集其实并不多。这里的x和y不要求有什么较好的关联性,可以是毫不相干的两幅图像。

方法

普通的GAN损失:

但单纯的使用这一个损失是无法进行训练的。原因在于,映射F完全可以将所有x都映射到y空间的同一张图片,使损失无效化。为此提出循环GAN网络。从域x生成域y,再从y生成回x,循环往复。

网络结构

两个生成器网络:G和F;两个鉴别器网络:Dx和Dy。整个网络是一个对偶结构。

下图对网络结构说明很清楚,出处见水印。

Loss函数

Loss部分除了经典的基础的GAN网络的对抗loss,还提出了一个cycle-loss。因为网络需要保证生成的图像必须保留有原始图像的特性,所以如果我们使用生成器GenratorA-B生成一张假图像,那么要能够使用另外一个生成器GenratorB-A来努力恢复成原始图像。此过程必须满足循环一致性。

对抗损失有两部分:

对偶网络的循环损失分为前向循环损失和后向循环损失,分别为:

采用L1 loss:

最后,总的损失函数为:

lamba=10

代码中还有个loss:identity loss

大致可以这样理解,生成器是负责域x到域y的图像生成,如果输入域y的图片还是应该生成域y的图片y‘’,计算y‘’和输入y的loss。

训练细节

  • Generator采用的是Perceptual losses for real-time style transfer and super-resolution 一文中的网络结构;一个resblock组成的网络,降采样部分采用stride 卷积,增采样部分采用反卷积;Discriminator采用的仍是pix2pix中的PatchGANs结构,大小为70x70
  • 定义四个xx器的损失函数,分别优化训练G和D,两个生成器共享权重,两个鉴别器也共享权重训练
  • 计算每个生成图像的损失是不可能的,因为会耗费大量的计算资源。建立一个图像库,存储之前生成的50张图,而不只是最新的生成器生成的图
  • Lr=0.0002。对于前100个周期,保持相同的学习速率0.0002,然后在接下来的100个周期内线性衰减到0。

实验结果

一些对比试验结果:(通过label生成原图y‘,再利用FCN对生成的原图y‘进行分割,进行一个label-photo的实验)

CycleGan论文笔记的更多相关文章

  1. Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现(转)

    Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文, ...

  2. 论文笔记之:Visual Tracking with Fully Convolutional Networks

    论文笔记之:Visual Tracking with Fully Convolutional Networks ICCV 2015  CUHK 本文利用 FCN 来做跟踪问题,但开篇就提到并非将其看做 ...

  3. Deep Learning论文笔记之(八)Deep Learning最新综述

    Deep Learning论文笔记之(八)Deep Learning最新综述 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完 ...

  4. Twitter 新一代流处理利器——Heron 论文笔记之Heron架构

    Twitter 新一代流处理利器--Heron 论文笔记之Heron架构 标签(空格分隔): Streaming-process realtime-process Heron Architecture ...

  5. Deep Learning论文笔记之(六)Multi-Stage多级架构分析

    Deep Learning论文笔记之(六)Multi-Stage多级架构分析 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些 ...

  6. Multimodal —— 看图说话(Image Caption)任务的论文笔记(一)评价指标和NIC模型

    看图说话(Image Caption)任务是结合CV和NLP两个领域的一种比较综合的任务,Image Caption模型的输入是一幅图像,输出是对该幅图像进行描述的一段文字.这项任务要求模型可以识别图 ...

  7. 论文笔记(1):Deep Learning.

    论文笔记1:Deep Learning         2015年,深度学习三位大牛(Yann LeCun,Yoshua Bengio & Geoffrey Hinton),合作在Nature ...

  8. 论文笔记(2):A fast learning algorithm for deep belief nets.

    论文笔记(2):A fast learning algorithm for deep belief nets. 这几天继续学习一篇论文,Hinton的A Fast Learning Algorithm ...

  9. 论文笔记:Towards Diverse and Natural Image Descriptions via a Conditional GAN

    论文笔记:Towards Diverse and Natural Image Descriptions via a Conditional GAN ICCV 2017 Paper: http://op ...

随机推荐

  1. Python之socketserver

    import threading from socketserver import ThreadingTCPServer,BaseRequestHandler import sys import lo ...

  2. 《ASP.NET Core In Action》读书笔记系列,这是一个手把手的从零开始的教学系列目录

    最近打算系统学习一下asp.net  core ,苦于没有好的中文书藉,只好找来一本英文的 <ASP.NET Core In Action>学习.我和多数人一样,学习英文会明显慢于中文.希 ...

  3. 【转】Install Win32 OpenSSH (test release)

    Openssh download url:https://github.com/PowerShell/Win32-OpenSSH/releases Install instruction: Insta ...

  4. 用python写栈

    class StackFullError(Exception): pass class StackEmptyError(Exception): pass class Stack: def __init ...

  5. java面试经常问到的计算机网络问题

    GET 和 POST 的区别 GET请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:/test/demo_form.asp?name1=value1&name2=val ...

  6. ogg 12.3 for sqlserver 2016/2014 CDC模式配置

    本文主要讲述ogg 12.3 通过CDC抽取mssqlserver 2016 enterprise的过程,以sqlserver为目标端投递配置相对简单,所以在此不在赘述. 针对以前的mssqlserv ...

  7. spring aop 切面编程

    import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Ha ...

  8. linux 定时任务,压缩 日志,并删除掉 指定日期之前的 日志

    sh文件 #!/bin/sh myPath="/var/www/Client/storage/logs/" myFile="lumen.log" cd $myP ...

  9. Vue 旅游网首页开发2 - 首页编写

    Vue 旅游网首页开发2 - 首页编写 项目结构 首页开发 效果图 项目开发组件化 将页面的各个部分划分成不同的组件,有助于项目的开发和维护. 项目代码初始化 项目结构修改 1.删除整个 compin ...

  10. JavaWeb案例:登陆和注册

    mvc开发模式简介 M: Model模型 JavaBeanV:view视图 JSPC:Controller控制器 Servlet 其实就是JSP + Servlet + JavaBean上面的Java ...