Top Banner
Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany
86

Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

May 25, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Generative Adversarial

Networks (GANs)Anirban Mukhopadhyay

TU Darmstadt, Germany

Page 2: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Introduction

Generative vs. Discriminative

2

Page 3: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Introduction

Generative vs. Discriminative

Generating “realistic-looking” images –

one step closer to understanding it

3

Page 4: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

GAN Results

4

© CycleGAN

© SRGAN

© Karras2018

Page 5: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

What is in it for me?

MR to CT Reconstruction Anomaly Detection

5

©Schlegl 2017©Wolterink 2017

Page 6: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Proxy for training data

Costly annotation

Imbalance

What is in it for me?

6

©Schlegl 2017

©Wolterink 2017

Page 7: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Proxy for training data

Costly annotation

Imbalance

Similarity metric

Discriminator

What is in it for me?

7

©Schlegl 2017

©Wolterink 2017

Page 8: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Proxy for training data

Costly annotation

Imbalance

Similarity metric

Discriminator

Domain Shift

Adversarial training

What is in it for me?

8

©Schlegl 2017

©Wolterink 2017

Page 9: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Outline

Theory

Key GANs

Medical Applications

Adversarial Learning

Limitations of GAN

Summary

9

Tidying Up GAN – the Marie Kondo way

Page 10: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Outline

Theory

Key GANs

Medical Applications

Adversarial Learning

Limitations of GAN

Summary

10

Tidying Up GAN – the Marie Kondo way

Closet

Kitchen

Emotional

Page 11: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

11

Page 12: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

UNSUPERVISED Learning

12

z GImage

G(z)

Page 13: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

UNSUPERVISED Learning

Perplexity

pdf for the generated distribution

13

z GImage

G(z)

Critique G – Calculating Perplexity

Page 14: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

Idea 2: Gradient feedback from discriminator

Idea 3: Game of many moves

14

Page 15: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

15

z GImage

G(z)

Similarity of Preal and Psynth

Page 16: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

16

z GImage

G(z)

Similarity of Preal and Psynth

Deep Net D – maps images to [0,1]

Page 17: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

17

z GImage

G(z)

Similarity of Preal and Psynth

Deep Net D – maps images to [0,1]

Ex[D(x)] is high if xϵ Preal

Ex[D(x)] is low if xϵ Psynth

Page 18: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

18

z GImage

G(z)

Similarity of Preal and Psynth

Deep Net D – maps images to [0,1]

Ex[D(x)] is high if xϵ Preal

Ex[D(x)] is low if xϵ Psynth

Train using Backpropagation

Page 19: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

Idea 2: Gradient feedback from discriminator

19

z GImage

G(z)

Goal of generator G:

Ez[D(G(z))] is as high as possible

Page 20: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

Idea 2: Gradient feedback from discriminator

20

z GImage

G(z)

Goal of generator G:

Ez[D(G(z))] is as high as possible

Fooling Discriminator

Page 21: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

Idea 2: Gradient feedback from discriminator

21

z GImage

G(z)

Goal of generator G:

Ez[D(G(z))] is as high as possible

Fooling Discriminator

Backpropagation through D(G(.))

Page 22: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

Idea 2: Gradient feedback from discriminator

Idea 3: Game of many moves

22

Page 23: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

Idea 2: Gradient feedback from discriminator

Idea 3: Game of many moves

23

Page 24: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

Idea 2: Gradient feedback from discriminator

Idea 3: Game of many moves

24

For Goodfellow 2014

f(x) = log(x)

Page 25: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Theory

Generative vs. Discriminative

UNSUPERVISED Learning

Perplexity

Idea 1: Sidestep perplexity with deep nets

Idea 2: Gradient feedback from discriminator

Idea 3: Game of many moves

25

For Goodfellow 2014

f(x) = log(x)

Derivative of log(x) = 1/x

Training sensitive to instances

that D finds awful

Page 26: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Understanding Key GANs

Engineering Recipe

© giphy.com

Theory Tidy GANs

26

Page 27: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Understanding Key GANs

Engineering Recipe

I/P, O/P

Architecture

Loss Function

27

Page 28: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Understanding Key GANs

Engineering Recipe

I/P, O/P

Architecture

Loss Function

DC-GAN

C-GAN

Cycle-GAN

28

Page 29: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Deep Convolutional GAN (DC-GAN)

Unsupervised

Representation Learning

29

Page 30: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Deep Convolutional GAN (DC-GAN)

Unsupervised

Representation Learning

Latent space Interpolation

30

Page 31: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Deep Convolutional GAN

I/P: Z (100-D multivariate Gaussian)

O/P: Image

31

Page 32: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

DC-GAN

I/P: Z (100-D multivariate Gaussian)

O/P: Image

Architecture:

32

Page 33: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

DC-GAN

I/P: Z

O/P: Image

Architecture:

33

Page 34: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

DC-GAN

I/P: Z

O/P: Image

Architecture:

Loss Function: Same as Goodfellow 2014

34

Page 35: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Conditional GAN (C-GAN)

How to bring in some supervision?

35

0

1

2

3

4

5

6

7

8

9

Page 36: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Conditional GAN (C-GAN)

I/P: Z, Condition

O/P: Image

36

0,1,2,…

Page 37: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

C-GAN

I/P: Z, Condition

O/P: Image

Architecture:

37

Page 38: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

C-GAN

I/P: Z, Condition(c)

O/P: Image

Architecture:

Loss Function:

38

Page 39: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Cycle-GAN

How to incorporate unpaired images for style/ domain transfer?

39

©Cycle-GAN

Page 40: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Cycle-GAN

I/P: Image (Domain X)

O/P: Image (Domain Y)

40

UN-PAIRED

Page 41: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Cycle-GAN

I/P: Image (Domain X)

O/P: Image (Domain Y)

Architecture:

41

Page 42: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Cycle-GAN

I/P: Image (Domain X)

O/P: Image (Domain Y)

Architecture:

42

Page 43: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Cycle-GAN

I/P: Image (Domain X)

O/P: Image (Domain Y)

Architecture:

Loss Function

43

Page 44: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Cycle-GAN

I/P: Image (Domain X)

O/P: Image (Domain Y)

Architecture:

Loss Function

44

Page 45: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Engineering Recipe Summary

45

GANs I/P O/P Architect. Loss Note

DC-GAN z Img GAN Unsup.

C-GAN z,c Img Modif.

GAN

Cond.

Supervis.

Cycle-GAN Img

(X)

Img

(Y)

Cycle

Loss

Style

Transfer

Page 46: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Medical Applications

46

© popsugar

Page 47: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Medical Applications

Review article

77 papers are reviewed

Till end of 2018

Incl. MICCAI, MiDL, ISBI, TMI,

MedIA etc.

47

Page 48: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Medical Applications

Review article

77 papers are reviewed

Till end of 2018

Incl. MICCAI, MiDL, ISBI, TMI,

MedIA etc.

Mostly applied in

Synthesis

Segmentation

48

https://arxiv.org/abs/1809.06222

Page 49: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Medical Applications

Review article

77 papers are reviewed

Till end of 2018

Incl. MICCAI, MiDL, ISBI, TMI,

MedIA etc.

Mostly applied in

Synthesis

Segmentation

Pattern

Modify Architecture

Modify Loss

49

https://arxiv.org/abs/1809.06222

Page 50: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Medical Applications

Review article

77 papers are reviewed

Till end of 2018

Incl. MICCAI, MiDL, ISBI, TMI,

MedIA etc.

Mostly applied in

Synthesis

Segmentation

Pattern

Modify Architecture

Modify Loss

Re-apply the recipe

50

https://arxiv.org/abs/1809.06222

Page 51: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Unsupervised

Discriminating Lung Nodules

Benign

Malign

51

©Chuquicusma 2018

Page 52: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Unsupervised

Discriminating Lung Nodules

Benign

Malign

Unsupervised synthesis

Modify DC-GAN

52

©Chuquicusma 2018

Page 53: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Unsupervised

Discriminating Lung Nodules

Benign

Malign

Unsupervised synthesis

Modify DC-GAN

Visual Turing Test

2 radiologists

53

©Chuquicusma 2018

Page 54: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Unsupervised

I/P: Z

O/P: Image (64X64X3)

Architecture:

Loss Function: Same as Goodfellow 2014

54

Page 55: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Unsupervised

I/P: Z

O/P: Lung Nodule image (56X56X1)

Architecture:

Loss Function: Same as Goodfellow 2014

55

Page 56: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Unsupervised

56

©Chuquicusma 2018

Page 57: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Unsupervised

57

©Chuquicusma 2018

G

D

Page 58: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Supervised

Radiotherapy treatment planning

MR: Segmentation of tumor and organs

CT: Dose planning

58

©Wolterink 2017

Page 59: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Supervised

Radiotherapy treatment planning

MR: Segmentation of tumor and organs

CT: Dose planning

MR-only radiotherapy treatment

planning

Synthesize CT

59

©Wolterink 2017

Page 60: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Supervised

Radiotherapy treatment planning

MR: Segmentation of tumor and organs

CT: Dose planning

MR-only radiotherapy treatment

planning

Synthesize CT

Re-purpose Cycle-GAN

60

©Wolterink 2017

Page 61: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Supervised

I/P: Image (Domain X)

O/P: Image (Domain Y)

Architecture:

Loss Function: Cycle Loss

61

Page 62: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Supervised

I/P: MR

O/P: CT

Architecture:

Loss Function: Cycle Loss (Sum of L1 norms

at MR and CT)

62

Page 63: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis - Supervised

63

©Wolterink 2017

Page 64: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Domain Adaptation - Adversarial Learning

Deep Learning Segmentation

Performs well in same domain

Degrades with new domain

64

©Kamnitsas 2017

Page 65: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Domain Adaptation - Adversarial Learning

Deep Learning Segmentation

Performs well in same domain

Degrades with new domain

Traumatic Brain Injury

Segment bleeding

65

©Kamnitsas 2017

Page 66: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Domain Adaptation - Adversarial Learning

Deep Learning Segmentation

Performs well in same domain

Degrades with new domain

Traumatic Brain Injury

Segment bleeding

Learn domain invariant

features

Auxiliary task - Adversarial

66

©Kamnitsas 2017

Page 67: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Domain Adaptation - Adversarial Learning

Different MR sequences

Source Domain

Target Domain

Typical Deep Learning fails

67

©Kamnitsas 2017

Page 68: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Domain Adaptation - Adversarial Learning

Different MR sequences

Source Domain

Target Domain

Typical Deep Learning fails

68

G Segmenter

©Kamnitsas 2017

Page 69: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Domain Adaptation - Adversarial Learning

Different MR sequences

Source Domain

Target Domain

Typical Deep Learning fails

69

©Kamnitsas 2017

Page 70: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Domain Adaptation - Adversarial Learning

70

©Kamnitsas 2017

Page 71: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Limitations of GAN

71

© slate.com

Page 72: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Limitations of GAN

Numerical Instability

Mode Collapse

72

Page 73: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Extreme example

Constant curl vector

Non-conservative

Arises naturally in zero-sum game

Follow arrow like simultaneous

gradient ascent

Though has equilibrium at (0,0)

Initial Solution

Numerics of GAN (Reading List)

© inFERENCe

Page 74: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Limitations of GAN

Numerical Instability

Mode Collapse

Evaluation

Metrics

74

Page 75: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Limitations of GAN - Practical

Counting

75

Medical Equivalent

Cell Images

Page 76: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Limitations of GAN - Practical

Counting Perspective

76

Medical Equivalent

Cell Images

Medical Equivalent

Cross domain synthesis

Page 77: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Limitations of GAN - Practical

Counting Global StructurePerspective

77

Medical Equivalent

Cell Images

Medical Equivalent

Cross domain synthesis

Medical Equivalent

Reconstruction

Page 78: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Reading List

Engineering

DC-GAN

C-GAN

CycleGAN

GAN applications

Living Review

Wolterink 2017

Kamnitsas 2017

Chuquicusma 2018

Theory

Numerics of GANs

Are GANs Created Equal?

f-GANs

Blogs

Off the convex Path

GAN Open Problems

MICCAI 2019 Tutorial

Lecturers: Me, J. Wolterink, K.

Kamnitsas

78

Review: GANs for Medical Image Analysis

Page 79: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Summary

GANs – Unsupervised generative models with adversarial twist

When done correctly

Realistic-looking images of unprecedented quality

Medical Imaging

Synthesis - proxy for training data

Domain shift

Issues

Numerical Instability

Evaluation metric

79

https://arxiv.org/abs/1809.06222

Page 80: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Thank You!

80

Page 81: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Backup Slides

81

Page 82: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

DC-GAN

Page 83: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

DC-GAN

Recipe

Replace pooling layers with strided convolutions (discriminator) and

fractional-strided convolutions (generator).

Page 84: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

DC-GAN

Recipe

Replace pooling layers with strided convolutions (discriminator) and

fractional-strided convolutions (generator).

Use batchnorm

Use LeakyReLU in discriminator

Page 85: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

Synthesis

Unconditnl. (DC-GAN)

Data Simulation

Class Imbalance

Data Augmentation

Prostate Lesions

Retina Patches

Skin Lesions

Conditnl. (C-/ Cycle-GAN)

CT from MR

PET from CT/ MRI

Stain Normalization

85

Page 86: Generative Adversarial Networks (GANs) - Sciencesconf.org · Generative Adversarial Networks (GANs) Anirban Mukhopadhyay TU Darmstadt, Germany. Introduction Generative vs. Discriminative

DC-GAN

Recipe

Replace pooling layers with strided convolutions (discriminator) and

fractional-strided convolutions (generator).

Use batchnorm

Use LeakyReLU in discriminator

Use ReLU in generator for all layers except output, which uses Tanh.