Authors: Jun-Yan Zhu*, Taesun Park*, Phillip Isola, Alexei A. Efros

Slides:



Advertisements
Similar presentations
Support Vector Machines (SVMs) Chapter 5 (Duda et al.)
Advertisements

Overview of Back Propagation Algorithm
Face Recognition Using Neural Networks Presented By: Hadis Mohseni Leila Taghavi Atefeh Mirsafian.
Matthew Brown University of British Columbia (prev.) Microsoft Research [ Collaborators: † Simon Winder, *Gang Hua, † Rick Szeliski † =MS Research, *=MS.
Generic object detection with deformable part-based models
Algebra 2: Section 7.4 Inverse Functions.
Lecture 3b: CNN: Advanced Layers
Parsing Natural Scenes and Natural Language with Recursive Neural Networks INTERNATIONAL CONFERENCE ON MACHINE LEARNING (ICML 2011) RICHARD SOCHER CLIFF.
City Forensics: Using Visual Elements to Predict Non-Visual City Attributes Sean M. Arietta, Alexei A. Efros, Ravi Ramamoorthi, Maneesh Agrawala Presented.
Support Vector Machines (SVMs) Chapter 5 (Duda et al.) CS479/679 Pattern Recognition Dr. George Bebis.
Conditional Generative Adversarial Networks
Generative Adversarial Nets
Deep Learning for Dual-Energy X-Ray
Generative Adversarial Network (GAN)
Group presentation WANG Yue 13/2/2017.
Learning Deep Generative Models by Ruslan Salakhutdinov
Convolutional Neural Network
CS 388: Natural Language Processing: LSTM Recurrent Neural Networks
Environment Generation with GANs
Deep Neural Net Scenery Generation
Data Mining, Neural Network and Genetic Programming
Convolutional Neural Fabrics by Shreyas Saxena, Jakob Verbeek
Krishna Kumar Singh, Yong Jae Lee University of California, Davis
Adversarial Learning for Neural Dialogue Generation
Article Review Todd Hricik.
Photorealistic Image Colourization with Generative Adversarial Nets
Generative Adversarial Networks
CSCI 5922 Neural Networks and Deep Learning Generative Adversarial Networks Mike Mozer Department of Computer Science and Institute of Cognitive Science.
Saliency detection Donghun Yeo CV Lab..
Training Techniques for Deep Neural Networks
Ying Kin Yu, Kin Hong Wong and Siu Hang Or
Generative adversarial networks (GANs) for edge detection
Unsupervised Conditional Generation
CS6890 Deep Learning Weizhen Cai
Presenter: Hajar Emami
Adversarially Tuned Scene Generation
"Playing Atari with deep reinforcement learning."
Low Dose CT Image Denoising Using WGAN and Perceptual Loss
Introduction to Neural Networks
Image Classification.
Cos 429: Face Detection (Part 2) Viola-Jones and AdaBoost Guest Instructor: Andras Ferencz (Your Regular Instructor: Fei-Fei Li) Thanks to Fei-Fei.
Towards Understanding the Invertibility of Convolutional Neural Networks Anna C. Gilbert1, Yi Zhang1, Kibok Lee1, Yuting Zhang1, Honglak Lee1,2 1University.
Deep Learning Hierarchical Representations for Image Steganalysis
Introduction of MATRIX CAPSULES WITH EM ROUTING
Generative Adversarial Network
Image recognition: Defense adversarial attacks
Non-Stationary Texture Synthesis by Adversarial Expansion
David Healey BYU Capstone Course 15 Nov 2018
Image to Image Translation using GANs
GAN Applications.
Lip movement Synthesis from Text
CS 2770: Computer Vision Generative Adversarial Networks
Textual Video Prediction
Compressive Image Recovery using Recurrent Generative Model
TPGAN overview.
Abnormally Detection
Attention for translation
Ch 14. Generative adversarial networks (GANs) for edge detection
Learning Compositional Visual Concepts with Mutual Consistency
Learning and Memorization
Image recognition.
Angel A. Cantu, Nami Akazawa Department of Computer Science
Task Produce artistic portrait drawings.. Task Produce artistic portrait drawings.
Deep screen image crop and enhance
Cengizhan Can Phoebe de Nooijer
Text-to-speech (TTS) Traditional approaches (before 2016) Neural TTS
Week 3 Volodymyr Bobyr.
Chapter 10 Error Detection and Correction
Deep screen image crop and enhance
Generative adversarial networks (GANs)
Presentation transcript:

Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks Authors: Jun-Yan Zhu*, Taesun Park*, Phillip Isola, Alexei A. Efros Published in ICCV 2017 Presented by Ying Meng 1

Highlights Transfer Object Transfiguration Transfer 2

Outline GAN cGAN Pix2pix Cycle Consistency CycleGAN Random generator G(z) and D(x) cGAN Pix2pix Cycle Consistency CycleGAN 3

GAN (Ian Goodfellow et al., NIPS 2014) Overview X Real world samples D D(x) ----- ⃝ Discriminator Loss z G(z) ⃝⃝ D(G(z)) Generator Credit(modified from) https://www.slideshare.net/xavigiro/deep-learning-for-computer-vision-generative-models-and-adversarial-training-upc-2016 4

GAN (Ian Goodfellow et al., NIPS 2014) Training Discriminator   Backprop error to update θd to maximize X Pdata(x) Real world samples ----- ⃝ D(x, θd) (D)iscriminator Loss z ⃝⃝ (G)enerator D(G(z), θg) G(z) P(G(z))   = Pprior(z) Credit(modified from) https://www.slideshare.net/xavigiro/deep-learning-for-computer-vision-generative-models-and-adversarial-training-upc-2016 5

GAN (Ian Goodfellow et al., NIPS 2014) Training Generator   = X Pdata(x) Real world samples ----- ⃝ D(x, θd) (D)iscriminator Loss z ⃝⃝ (G)enerator D(G(z), θg)   Backprop error to update θg to minimize G(z) P(G(z)) Pprior(z) Credit(modified from) https://www.slideshare.net/xavigiro/deep-learning-for-computer-vision-generative-models-and-adversarial-training-upc-2016 6

GAN (Ian Goodfellow et al., NIPS 2014)   Objective Maximize D Value of Expectation fake Minimize G real data Prob. Of D(real) generated samples Prob. Of D(fake) 7

Outline GAN cGAN Pix2pix CycleGAN Summary Condition with some vector y G(x, y) and D(x, y) Pix2pix CycleGAN Summary 8

cGAN (Mehdi et al., 2014) Condition the GAN with some vector y. See the networks with a probabilistic point of view. Generator G(z, y) modeling the distribution of data given z and y Discriminator D(x, y) Labels X and XG are modeled with d ~ D(d|X, y) Objective function Credit: https://arxiv.org/pdf/1411.1784.pdf 9

Outline GAN cGAN Pix2pix CycleGAN Summary z = x Paired image-to-image translator Adversarial is on image level CycleGAN Summary 10

pix2pix (Phillip Isola et al., CVPR 2017) Generator G(x) – generate the synthesized pair for given image x Discriminator D(<x, G(x)>) Paired Pix2pix, an image-to-image translator It is a cGAN, where the input of the Generator is real image rather than just some latent vector. In this model, The Generator is trained to fool the discriminator, by generating some image in domain Y given some image in domain X. For example, mapping edges to photo, or mapping sketch to painting. The Discriminator is trained to classify between fake (the generated image) and the real (the input of the Generator) tuples. So, we can see that the adversarial is on image level in pix2pix. Credit: http://openaccess.thecvf.com/content_cvpr_2017/papers/Isola_Image-To-Image_Translation_With_CVPR_2017_paper.pdf 11

Outline GAN cGAN Pix2pix CycleGAN Summary Architecture Cycle Consistency Implementation Results Limitations Summary 12

CycleGAN – Architecture G: X -> Y GAN (Y2X) loss GAN (X2Y) loss X Y DX DY cycleGAN is a variant of GAN that learns the translation/conversion between two sets of data source, these two sets of data source (they called two domains) do not correspond to each other. The networks contain two generators and two discriminators. The generator G translates an image in domain X to an image in domain Y. The discriminator Dy determines whether the input is from domain Y or is generated by the generator G. And vice versa the generator F and the discriminator Dx. F: Y -> X Cycle consistency loss Cycle consistency loss F 13

Cycle Consistency Obviously, we expected EN -> G(EN) -> F(G(EN)) ~ EN Formalized, if G: X -> Y, F: Y -> X; expect, X -> G(X) -> F(G(X)) ~ X EN English -> Chinese CN CN EN’ Cycle-consistency loss Translator F: Chinese -> English EN’ 14

CycleGAN – Objective Function Full objective Aim to solve Adversarial loss (for G: X -> Y) Cycle-consistency loss Swapping X/x and Y/y can get the adversarial loss for F: Y -> X Lgan(G, Dy, X, Y) – how much you can distinguish Y (an input) from the real Y and the generated Y with the discriminator Dy Lgan(G, Dx, Y, X) – how much you can distinguish X (an input) from the real X and the generated X with the discriminator Dx Lcyc(G, F) – distance between X and the re-constructed X (F(G(X))) + the distance between Y and the re-constructed Y (G(F(Y))) Credit: https://arxiv.org/pdf/1703.10593.pdf 15

CycleGAN – Implement Generator network 6 blocks for 128 x 128 images c7s1-32, d64, d128, R128, R128, R128, R128, R128, R128, u64, u32, c7s1-3 9 blocks for 256 x 256 and higher resolution images c7s1-32, d64, d128, R128, R128, R128, R128, R128, R128, R128, R128, R128, u64, u32, c7s1-3 encoding transforming decoding Residual block #1 Residual block #2 Residual block #n Conv layer #1 Conv layer #2 Conv layer #1 Conv layer #2 input output C7s1-k denote a 7x7 Convolution-InstanceNorm-ReLU layer with k filters and stride 1. Dk denotes a 3x3 Convolution-InstanceNorm-ReLU layer with k filters and stride 2. Reflection padding was used to reduce artifacts. Rk denotes a residual block that contains two 3x3 convolutional layers with the same number of filters on both layer. Uk denotes a 3x3 Fractional-Strided-Convolution-InstanceNorm-ReLU layer with k filters and stride ½. 16

CycleGAN – Implementation Discriminator network 70x70 PatchGAN c64, c128, c256, c512 Credit: https://affinelayer.com/pix2pix/ 17

CycleGAN – Results Check the paper Images Analysis Applications 18

CycleGAN – Limitations (test set vs. training set) Tasks require geometric changes A lingering gap between the results achievable from pix2pix and that achieved by CycleGAN. https://qiita.com/itok_msi/items/b6b615bc28b1a720afd7#%E8%BF%BD%E5%8A%A0%E5%AE%9F%E9%A8%93%E7%B5%90%E6%9E%9C20170614%E8%BF%BD%E8%A8%987 19

Outline GAN cGAN Pix2pix CycleGAN Summary 20

Summary Play video https://www.youtube.com/watch?v=AxrKVfjSBiA or https://www.youtube.com/watch?v=D4C1dB9UheQ Play video 21

22