CS109B Data Science 2
Pavlos Protopapas and Mark Glickman
Lecture 20: GANS
1
Lecture 20: GANS CS109B Data Science 2 Pavlos Protopapas and Mark - - PowerPoint PPT Presentation
Lecture 20: GANS CS109B Data Science 2 Pavlos Protopapas and Mark Glickman 1 Outline Review of AE and VAE GANS Motivation Formalism Training Game Theory, minmax Challenges: Big Samples Modal collapse CS109B, P ROTOPAPAS , G
1
CS109B, PROTOPAPAS, GLICKMAN
2
CS109B, PROTOPAPAS, GLICKMAN
3
CS109B, PROTOPAPAS, GLICKMAN
4
https://arxiv.org/pdf/1708.05509.pdf
CS109B, PROTOPAPAS, GLICKMAN
5
CS109B, PROTOPAPAS, GLICKMAN
6
ENCODER DECODER
Latent Space
CS109B, PROTOPAPAS, GLICKMAN
7
CS109B, PROTOPAPAS, GLICKMAN
8
CS109B, PROTOPAPAS, GLICKMAN
9
CS109B, PROTOPAPAS, GLICKMAN
10
CS109B, PROTOPAPAS, GLICKMAN
11
https://github.com/Harvard-IACS/2019-computefest/tree/master/Wednesday/auto_encoder Example code (could help a lot for HW7)
CS109B, PROTOPAPAS, GLICKMAN
12
CS109B, PROTOPAPAS, GLICKMAN
13
CS109B, PROTOPAPAS, GLICKMAN
14
CS109B, PROTOPAPAS, GLICKMAN
CS109B, PROTOPAPAS, GLICKMAN
CS109B, PROTOPAPAS, GLICKMAN
CS109B, PROTOPAPAS, GLICKMAN
CS109B, PROTOPAPAS, GLICKMAN
CS109B, PROTOPAPAS, GLICKMAN
20
CS109B, PROTOPAPAS, GLICKMAN
21
Gary Marketer David Spam Filterer Yes, it is spam No, it is not spam
Spam
CS109B, PROTOPAPAS, GLICKMAN
22
David checks the results Yes, it is spam No, it is not spam
Spam Spam Spam Spam Spam Spam
Discarded a valid email Allow some spams
CS109B, PROTOPAPAS, GLICKMAN
23
David and Gary learned what went wrong Yes, it is spam No, it is not spam It was spam, for real It was not spam
Spam Spam Spam Spam Spam Spam
CS109B, PROTOPAPAS, GLICKMAN
24
Gary Find more sophisticated words than spam David The email contains the word spam Yes, it is spam No, it is not spam
CS109B, PROTOPAPAS, GLICKMAN
25
Yes, it is spam No, it is not spam Discarded a valid email Allow fewer spams David and Gary learned what went wrong
CS109B, PROTOPAPAS, GLICKMAN
26
David learned what went wrong Yes, it is spam No, it is not spam It was spam, for real It was not spam
CS109B, PROTOPAPAS, GLICKMAN
true true
false
27
False Positive positive negative
false
label: it was not spam prediction: yes, it is spam prediction matches label? Yes or True No or False
TP TN
FN
False Positive
FP
SPAM: POSITIVE TRUE/FALSE: If prediction and true match do not match POSITIVE/NEGATIVE: Prediction class
CS109B, PROTOPAPAS, GLICKMAN
28 Yes, it is spam No, it is not spam It was spam, for real It was not spam
No action for discriminator. Generator must do better. label: it is spam prediction: yes, it is spam Yes Show spam email prediction matches label?
True positive (TP): the discriminator see a spam and predicts
Generator must do a better job.
CS109B, PROTOPAPAS, GLICKMAN
29 Yes, it is spam No, it is not spam It was spam, for real It was not spam
Discriminator learn more about spam label: it is spam prediction: it is not spam No show spam email prediction matches label?
False Negative (FN): the discriminator see an email and predict it as spam even though it is not. The discriminator learn more
CS109B, PROTOPAPAS, GLICKMAN
30
False positive (FP): generator try to fool discriminator and the discriminator fails. The generator succeeded and the generator is forced to improve.
Yes, it is spam No, it is not spam It was spam, for real It was not spam
Discriminator learn more about spam label: it is not spam prediction: it is spam Yes No show spam email prediction matches label?
CS109B, PROTOPAPAS, GLICKMAN
31
True negative (TN): generator try to fool discriminator, however the discriminator predict correctly. The generator learn what was wrong and try something else.
Yes, it is spam No, it is not spam It was spam, for real It was not spam
No action for discriminator and no action for generator. label: it is not a spam prediction: yes, it is not a spam Yes Show spam email prediction matches label?
CS109B, PROTOPAPAS, GLICKMAN
32
CS109B, PROTOPAPAS, GLICKMAN
33
CS109B, PROTOPAPAS, GLICKMAN
34
CS109B, PROTOPAPAS, GLICKMAN
35
CS109B, PROTOPAPAS, GLICKMAN
36
CS109B, PROTOPAPAS, GLICKMAN
37
CS109B, PROTOPAPAS, GLICKMAN
38
CS109B, PROTOPAPAS, GLICKMAN
39
CS109B, PROTOPAPAS, GLICKMAN
40
CS109B, PROTOPAPAS, GLICKMAN
41
CS109B, PROTOPAPAS, GLICKMAN
CS109B, PROTOPAPAS, GLICKMAN
CS109B, PROTOPAPAS, GLICKMAN
44
CS109B, PROTOPAPAS, GLICKMAN
45
CS109B, PROTOPAPAS, GLICKMAN
46
CS109B, PROTOPAPAS, GLICKMAN
CS109B, PROTOPAPAS, GLICKMAN
π¨~ππππ Generative Model (Neural Network) WG Generated distribution True distribution Loss function KL Divergence π(π¦) πΜ(π¦)
CS109B, PROTOPAPAS, GLICKMAN
π¨~ππππ Generative Model (Neural Network) WG Generated distribution True distribution Loss function KL Divergence π(π¦) πΜ(π¦)
Discriminator (Neural Network) WD
From Generator From True Distribution Loss function: Binary Cross Entropy, π>
CS109B, PROTOPAPAS, GLICKMAN
π¨~ππππ
Generative Model (Neural Network)
Generated distribution
True distribution
π(π¦) π ,(π¦)
Discriminator (Neural Network)
From Generator From True Distribution
CS109B, PROTOPAPAS, GLICKMAN
Generative Model (Neural Network)
Generated distribution
True distribution
Discriminator (Neural Network)
From True Distribution From Generator
π(π¦) π ,(π¦) π¨~ππππ
CS109B, PROTOPAPAS, GLICKMAN
Generative Model (Neural Network)
Generated distribution
True distribution
Discriminator (Neural Network)
From Generator From True Distribution Generator Loss Adjust weights by πΌ@Aπ>
π(π¦) π ,(π¦) π¨~ππππ
CS109B, PROTOPAPAS, GLICKMAN
Generative Model (Neural Network)
Generated distribution
True distribution
Discriminator (Neural Network)
From Generator From True Distribution
π(π¦) π ,(π¦) π¨~ππππ
CS109B, PROTOPAPAS, GLICKMAN
Generative Model (Neural Network)
Generated distribution
True distribution
Discriminator (Neural Network)
From Generator From True Distribution Generator Loss Adjust weights by πΌ@Aπ>
π(π¦) π ,(π¦) π¨~ππππ
CS109B, PROTOPAPAS, GLICKMAN
Generative Model (Neural Network)
Generated distribution
True distribution
Discriminator (Neural Network)
From Generator From True Distribution
π(π¦) π ,(π¦) π¨~ππππ
CS109B, PROTOPAPAS, GLICKMAN
Generative Model (Neural Network)
Generated distribution
True distribution
Discriminator (Neural Network)
From Generator From True Distribution Adjust weights by πΌ@Bπ> Discriminator Loss
π(π¦) π ,(π¦) π¨~ππππ
CS109B, PROTOPAPAS, GLICKMAN
Generative Model (Neural Network)
Generated distribution
True distribution
Discriminator (Neural Network)
From Generator From True Distribution Generator Loss Adjust weights by πΌ@Aπ>
π(π¦) π ,(π¦) π¨~ππππ
CS109B, PROTOPAPAS, GLICKMAN
58
β
β
β
β
CS109B, PROTOPAPAS, GLICKMAN
59
CS109B, PROTOPAPAS, GLICKMAN
60
CS109B, PROTOPAPAS, GLICKMAN
61
CS109B, PROTOPAPAS, GLICKMAN
62
CS109B, PROTOPAPAS, GLICKMAN
63
https://arxiv.org/pdf/1511.06434v2.pdf
CS109B, PROTOPAPAS, GLICKMAN
64
https://twitter.com/goodfellow_ian/status/969776035649675265?lang=en
2019
CS109B, PROTOPAPAS, GLICKMAN
65
CS109B, PROTOPAPAS, GLICKMAN
66
CS109B, PROTOPAPAS, GLICKMAN
67
CS109B, PROTOPAPAS, GLICKMAN
β
68
CS109B, PROTOPAPAS, GLICKMAN
β
69
CS109B, PROTOPAPAS, GLICKMAN
70
CS109B, PROTOPAPAS, GLICKMAN
71
CS109B, PROTOPAPAS, GLICKMAN
72
CS109B, PROTOPAPAS, GLICKMAN
73
CS109B, PROTOPAPAS, GLICKMAN
74
CS109B, PROTOPAPAS, GLICKMAN
75
CS109B, PROTOPAPAS, GLICKMAN
76
CS109B, PROTOPAPAS, GLICKMAN
77
CS109B, PROTOPAPAS, GLICKMAN
78
CS109B, PROTOPAPAS, GLICKMAN
79
[Karras, Laine, Aila / Nvidia].
CS109B, PROTOPAPAS, GLICKMAN
80
[Karras, Laine, Aila / Nvidia].
CS109B, PROTOPAPAS, GLICKMAN
81
82
CS109B, PROTOPAPAS, GLICKMAN
83
https://arxiv.org/pdf/1809.11096.pdf
CS109B, PROTOPAPAS, GLICKMAN
84
CS109B, PROTOPAPAS, GLICKMAN
85
CS109B, PROTOPAPAS, GLICKMAN
86
Highly predictable (low entropy) Inception network
CS109B, PROTOPAPAS, GLICKMAN
87
CS109B, PROTOPAPAS, GLICKMAN
88
Class 0 Class 1 Class 2
Train Synthetic Data (GAN generated)
Noise z Class Amplitude Period Generator Classifier
Real Data
Class 1 Class 2 Class 0
Test Accuracy on Test is: TSTR
CS109B, PROTOPAPAS, GLICKMAN
89
89
Class 0 Class 1 Class 2
Train
Noise z Class Generator Classifier
Real Data
Class 1 Class 2 Class 0
Test Accuracy on Test is: TSTR
Synthetic Data (GAN generated)