Generative Adversarial Networks (GAN)
Prof. Seungchul Lee
Industrial AI Lab.
Supervised Learning
2
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Unsupervised Learning
3
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
= Latent space
Model Distribution vs. Data Distribution
4
Probability Distribution
5
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Probability Distribution
6
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Probability Density Estimation Problem
7
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Deterministic Transformation (by Network)
8
Source: Prof. Roger Grosse at U of Toronto
Generative Models from Lower Dimension
9
Latent space =
Source: Prof. Roger Grosse at U of Toronto
Turing Test
10
Deterministic Transformation (by Network)
11
Source: Prof. Roger Grosse at U of Toronto
Generative Adversarial Networks (GAN)
12
Autoencoder
13
Generative Adversarial Networks (GAN)
14
Generated
Generator
Data Generator
Generative Adversarial Networks (GAN)
15
Generated
Real
Real
Fake
Generator
Discriminator
Intuition for GAN
16
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Discriminator Perspective (1/2)
17
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Discriminator Perspective (2/2)
18
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Generator Perspective
19
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
GAN Implementation in TensorFlow
20
TensorFlow Implementation
21
784
784
256
256
100
1
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Generator
22
784
784
256
256
100
1
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Discriminator
23
784
784
256
256
100
1
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Combined
24
784
784
256
256
100
1
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Training: Discriminator
25
784
784
256
256
100
1
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Training: Generator
26
784
784
256
256
100
1
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
After Training
27
https://www.slideshare.net/NaverEngineering/1-gangenerative-adversarial-network
Generated Images
28
DCGAN
29
DCGAN (Deep Convolutional GAN)
30
Alec Radford, et al., "Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks," ICLR 2016
Conditional GAN
31
Normal Distribution of MNIST
32
Generator at GAN
33
Generator
Generator
Conditional GAN
34
Conditional GAN
35
Class,
Label,
Condition
Noise or code
Conditional GAN
36
Conditional GAN
37
Conditional GAN
38
Generator at GAN
39
Generator
Generator
Generator at Conditional GAN
40
Generator
Generator
Generator
41
Discriminator
42
Combined
43
CGAN Implementation
44
Fake MNIST Images Generated by CGAN
45
Adversarial Autoencoder
46
Autoencoder
47
Image from https://lilianweng.github.io/
Limitation of Autoencoder
48
Generator from Autoencoder
49
Image from https://lilianweng.github.io/
Variational Autoencoder
50
1) Reconstruction loss
2) Regularization
Adversarial Autoencoder
51
Adversarial Autoencoder
52
Incorporating Label Information
53
Label Information
Disentangled Latent Representation
54
Disentangled Latent Representation
55
Disentangled Latent Representation
56
Disentangled Latent Representation
57
CycleGAN
58
Image-to-Image Translation
59
Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks,
Jun-Yan Zhu, Taesung Park, Phillip Isola, Alexei A. Efros, ICCV 2017
Paired vs. Unpaired Datasets
60
Paired vs. Unpaired Datasets
61
Change the styles of images
using only unpaired datasets
Cycle-consistent Generative
Adversarial Networks
(CycleGAN)
Start from GAN
62
Horse
Zebra
Adversarial Loss
(real or fake)
Start from GAN
63
Horse
Zebra
Adversarial Loss
(real or fake)
Start from GAN
64
Adversarial Loss
(real or fake)
CycleGAN
65
Adversarial Loss
(real or fake)
Cycle-consistency loss
Example of CycleGAN
66
Grain Boundary
67
Input
Deep Learning-based Grain Boundary Detection
Output
J. Na+, J. Lee+, et al., Label-free Grain Segmentation for Optical Microscopy Images via Unsupervised Image-to-Image Translation, Materials Characterization
Methodology
68
Virtual microstructure
Real microstructure
Not paired
CycleGAN
69
Real-to-Virtual Microstructure Translation
Real microstructure
Adversarial loss
Reconstruction loss
Virtual microstructure
Results: Low Carbon Steel and Magnesium
70
Magnesium
Low carbon steel
Input
Ground truth
Ours