generative adversarial networks - machine learningmachinelearning.math.rs/jordanski-gan.pdf•text...
TRANSCRIPT
![Page 1: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/1.jpg)
Generative AdversarialNetworks
Miloš Jordanski
![Page 2: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/2.jpg)
Generative models
• Training data 𝐷 = 𝑥1, … , 𝑥𝑁 ~𝑝𝑑𝑎𝑡𝑎(𝑥)
• Result: distribution 𝑝𝑚𝑜𝑑𝑒𝑙(𝑥) ≅ 𝑝𝑑𝑎𝑡𝑎(𝑥)
![Page 3: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/3.jpg)
Generative models
• 𝑝𝑚𝑜𝑑𝑒𝑙(𝑥) directly
• Generate samples from 𝑝𝑚𝑜𝑑𝑒𝑙(𝑥)
![Page 4: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/4.jpg)
Applications
• Additional training data• Missing values• Semi-supervised learning• Reinforcement learning• Multiple correct answers• Text-to-Image Synthesis• Learn useful embeddings• ...
![Page 5: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/5.jpg)
Generative Adversarial Networks
![Page 6: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/6.jpg)
Models with latent space
• x - observed variables• z – latent variables
![Page 7: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/7.jpg)
DCGAN
![Page 8: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/8.jpg)
GAN - architecture
![Page 9: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/9.jpg)
GAN - discriminator
𝐽(𝐷) 𝜃 𝐷 , 𝜃 𝐺 = −12𝐸𝑥~𝑝𝑑𝑎𝑡𝑎𝑙𝑜𝑔𝐷(𝑥) −
12𝐸𝑧log(1 − 𝐷 𝐺(𝑧) )
• Optimal discriminator:
𝐷∗ 𝑥 =𝑝𝑑𝑎𝑡𝑎(𝑥)
𝑝𝑚𝑜𝑑𝑒𝑙(𝑥) + 𝑝𝑑𝑎𝑡𝑎(𝑥)
![Page 10: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/10.jpg)
GAN – Choice of divergence
• By varying 𝜃 we can make 𝑃𝜃 distribution arbitrarily “close” to 𝑃𝑑𝑎𝑡𝑎• How to define “close”?
![Page 11: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/11.jpg)
GAN – Choice of divergence
• Kullback-Leibler divergence: 𝐾𝐿(ℙ| ℚ = 𝔼𝑥~ℙ[𝑙𝑜𝑔
ℙ(𝑥)ℚ(𝑥)
]
• Jensen Shannon divergence:
𝐽𝑆(ℙ| ℚ =12𝐾𝐿(ℙ ||
12ℙ + ℚ ) +
12𝐾𝐿(ℚ||
12(ℙ + ℚ))
![Page 12: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/12.jpg)
GAN – Choice of divergence
𝐾𝐿(ℙ| ℚ = ℙ(𝑥)𝑙𝑜𝑔 ℙ(𝑥)ℚ(𝑥)
𝐾𝐿(ℚ| ℙ = ℚ(𝑥)𝑙𝑜𝑔 ℚ(𝑥)ℙ(𝑥)
![Page 13: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/13.jpg)
Zero-sum game
• N players• Payoff matrix
• Nash equilibrium of a game
![Page 14: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/14.jpg)
Generator cost function
𝐽(𝐺) 𝜃 𝐷 , 𝜃 𝐺 = −𝐽(𝐷) 𝜃 𝐷 , 𝜃 𝐺
• Minimax game:𝑉(𝜃 𝐷 , 𝜃 𝐺 ) = −𝐽(𝐷) 𝜃 𝐷 , 𝜃 𝐺
• Solution:𝜃 𝐷 ∗ = 𝑎𝑟𝑔𝑚𝑖𝑛max
𝜃 𝐺 𝜃 𝐷𝑉(𝜃 𝐷 , 𝜃 𝐺 )
In practice:
𝐽(𝐺) 𝜃 𝐷 , 𝜃 𝐺 = − 12𝐸𝑧log(𝐷 𝐺(𝑧) )
![Page 15: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/15.jpg)
Generator Cost function
• Minimax: 𝐽(𝐺)= 12𝐸𝑥~𝑝𝑑𝑎𝑡𝑎𝑙𝑜𝑔𝐷 𝑥 + 1
2𝐸𝑧log(1 − 𝐷 𝐺(𝑧) )
• Heuristic: 𝐽(𝐺) = − 12𝐸𝑧log(𝐷 𝐺(𝑧) )
• MLE: 𝐽(𝐺) = − 12𝐸𝑧𝑒(𝜎
−1(𝐷(𝐺(𝑧))))
![Page 16: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/16.jpg)
GAN - Training
• Simultaneous stochastic gradient descent
• Discriminator updates 𝜃(𝐷) to reduce 𝐽(𝐷)
• Generator updates 𝜃(𝐺) to reduce 𝐽(𝐺)
• 𝐽(𝐺) does not make reference to the training data directly
![Page 17: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/17.jpg)
GAN - Tricks
• 𝑥 ∈ [−1, 1]
• Using labels
• One-side label smoothing
• Batch normalization
• Running more steps of one player
![Page 18: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/18.jpg)
Generative Adversarial Networks
• Advantages:
• Sample generation in a single step (does not depend on dimensionality of X)
• Does not use Markov chain
• Does not use variational inference
• Generation function has very few restrictions
• Disadvantages:
• Hard to train
![Page 19: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/19.jpg)
GAN - results
![Page 20: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/20.jpg)
Semi-supervised learning with GAN
![Page 21: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/21.jpg)
GAN – Latent Space Arithmetic
![Page 22: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/22.jpg)
GAN – another perspective
• Cooperative instead of adversarial
• Learn cost function
• Reinforcement Learning
• Actor-Critic
• …
![Page 23: Generative Adversarial Networks - Machine Learningmachinelearning.math.rs/Jordanski-GAN.pdf•Text -to-Image Synthesis •Learn useful embeddings •... Generative AdversarialNetworks](https://reader034.vdocuments.us/reader034/viewer/2022042319/5f09456a7e708231d426064e/html5/thumbnails/23.jpg)
THANKS!