![Page 1: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/1.jpg)
Introduction to generative modelsMihaela Rosca@elaClaudia
![Page 2: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/2.jpg)
Generative models are a core building block of intelligent systems.
![Page 3: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/3.jpg)
Introduction to generative models— Mihaela Rosca
What do intelligent systems need?
● Generate new data● Imagine possible futures & have a model of the world● Translate between data modalities● Learn useful representations● Completing missing data
![Page 4: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/4.jpg)
Introduction to generative models— Mihaela Rosca
Generate new dataWhat do intelligent systems need?
Royour was I did too jest of this forgetThat I must I should be report of taleDecost we are bewarved:'d: yet my fearful scopeFrom whence the duty I may need their course,Which thou wert sorry for my party was to showForthwith Edward for what stout King Richard death!The queen hath cast froths me to said,Is, and not to be framed, and let's with him.
https://arxiv.org/abs/1710.10196https://arxiv.org/pdf/1609.03499.pdfhttps://arxiv.org/abs/1308.0850
![Page 5: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/5.jpg)
Introduction to generative models— Mihaela Rosca
Complete missing dataWhat do intelligent systems need?
http://math.univ-lyon1.fr/homes-www/masnou/fichiers/publications/survey.pdfhttp://www.dtic.upf.edu/~mbertalmio/bertalmi.pdf
![Page 6: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/6.jpg)
Introduction to generative models— Mihaela Rosca
Translate between data modalitiesWhat do intelligent systems need?
CycleGAN: https://arxiv.org/abs/1703.10593
![Page 7: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/7.jpg)
Introduction to generative models— Mihaela Rosca
Learn useful representationsWhat do intelligent systems need?
https://arxiv.org/pdf/1511.06434.pdf
![Page 8: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/8.jpg)
Introduction to generative models— Mihaela Rosca
Leverage learned structure for better classification performance on labelled data.
Learn useful representationsWhat do intelligent systems need?
![Page 9: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/9.jpg)
Introduction to generative models— Mihaela Rosca
Have a model of the worldWhat do intelligent systems need?
GOAL
Agent Environment
OBSERVATIONS
ACTIONS
Generative models can be used to generate a model of the environment.
![Page 10: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/10.jpg)
How do generative models allow us to build intelligent systems?
![Page 11: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/11.jpg)
Introduction to generative models— Mihaela Rosca
The goal of generative models
Learn a model of the true underlying data distribution p*(x) from samples
x1, x2 ... xn
![Page 12: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/12.jpg)
Introduction to generative models— Mihaela Rosca
Generative models learning principlesThe goal of generative models
Find pθ to minimize the distance between pθ and p*
![Page 13: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/13.jpg)
Introduction to generative models— Mihaela Rosca
Finding pθChoices in generative models
● Model of pθ ○ you can leverage prior knowledge of the problem
■ what kind of data do you have?■ what kind of process generated the data?
● The learning principle used to minimize the distance between pθ and p*
![Page 14: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/14.jpg)
Introduction to generative models— Mihaela Rosca
Generative model algorithm = learning principle + model
![Page 15: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/15.jpg)
Introduction to generative models— Mihaela Rosca
Moment matching
Maximum likelihood ... Optimal
transport
Autoregressive
Implicit Algorithm
...
Encoder-decoder
Model of pθ
Learning principle
![Page 16: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/16.jpg)
Learning principles
![Page 17: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/17.jpg)
Introduction to generative models— Mihaela Rosca
Divergence minimization as a learning principle
Learning principles
Divergence minimization
Other learning principles:moment matchingoptimal transport
![Page 18: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/18.jpg)
Introduction to generative models— Mihaela Rosca
Divergences minimizedDivergence minimization for generative model learning
Aim: Minimize a divergence between pθ and p*
![Page 19: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/19.jpg)
Introduction to generative models— Mihaela Rosca
Divergences minimizedCommon divergence choices
● KL divergence (most common)○ results in maximum likelihood learning
● Reverse KL divergence● Jensen Shannon
![Page 20: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/20.jpg)
Introduction to generative models— Mihaela Rosca
KL divergenceMaximum likelihood
Minimizing the KL divergence between pθ and p* ⇛ maximum likelihood learning:
Intuition: find the model which gives highest likelihood to the data.
argmaxθ Ex ~p* log pθ(x)
![Page 21: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/21.jpg)
Introduction to generative models— Mihaela Rosca
Trade-offs for a fixed model choiceKL vs Reverse KL model fit
https://arxiv.org/pdf/1701.00160.pdf
![Page 22: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/22.jpg)
Model choices
![Page 23: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/23.jpg)
Introduction to generative models— Mihaela Rosca
Model choicesGraphical structure
Leverage underlying data structure in generative process.
z
x
z = latentsx = observed
Directly model pθ(x)
![Page 24: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/24.jpg)
Introduction to generative models— Mihaela Rosca
Model choicesEmbedding priors in your model
Leverage data knowledge:● convolutional models for images● recurrent models for text and sound● appropriate priors for latent variables
![Page 25: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/25.jpg)
Algorithms
![Page 26: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/26.jpg)
Introduction to generative models— Mihaela Rosca
PixelCNN, PixelRNN, WaveNetAutoregressive maximum likelihood models
Principle: maximum likelihoodModel: Autoregressive model with no latent variables
pθ(x) = ∏i pθ(xi| x1,x2...xi-1)
Model pθ(xi| x1,x2...xi-1) using a recurrent neural network or convolutional masking.
https://arxiv.org/pdf/1601.06759.pdfhttps://arxiv.org/abs/1606.05328https://deepmind.com/blog/wavenet-generative-model-raw-audio/
![Page 27: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/27.jpg)
Introduction to generative models— Mihaela Rosca
Variational autoencodersLatent approximate maximum likelihood models
Principle: (approximate) maximum likelihoodModel: Encoder-decoder model with latent variables
https://arxiv.org/abs/1312.6114
![Page 28: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/28.jpg)
Introduction to generative models— Mihaela Rosca
Generative adversarial networksLatent variable models without maximum likelihood
● Minimize distance between pθ and p*
○ Jensen Shannon○ Earth movers
● How they model pθ ○ Implicitly: you do not have access to pθ, but you can
sample from it ○ Latent models
https://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf
![Page 29: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/29.jpg)
Evaluating generative models
![Page 30: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/30.jpg)
Introduction to generative models— Mihaela Rosca
Evaluation of generative modelsHow can we compare generative models?
![Page 31: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/31.jpg)
Introduction to generative models— Mihaela Rosca
Evaluation of generative modelsUse application specific metrics
No evaluation metric is able to capture all desired properties.
Evaluate performance based on the end goal:● semi supervised learning: classification accuracy● reinforcement learning: total agent reward● data generation (eg: text to speech): human (user) evaluation via beta testing
![Page 32: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/32.jpg)
When to think about generative models
![Page 33: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/33.jpg)
Introduction to generative models— Mihaela Rosca
Using generative modelsUse them when...
● learning with scarce labelled data● estimating uncertainty● eliminating outliers● completing missing data● generating data● building useful (disentangled) representations
![Page 34: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/34.jpg)
Introduction to generative models— Mihaela Rosca
Using generative modelsWhat model to use?
● need to learn underlying structure?
⇒ use an inference model● need only samples?
⇒ consider GANs● need a likelihood p(x)
⇒ use maximum likelihood models
⇒ use autoregressive models if sampling cost is not an issue
![Page 35: Introduction to generative models - Mihaela Roscaelarosca.net/intro_generative_models.pdf · Introduction to generative models— Mihaela Rosca Generate new dataWhat do intelligent](https://reader037.vdocument.in/reader037/viewer/2022090606/605c1cc25d39de773e02e5bc/html5/thumbnails/35.jpg)
THANK YOUCredits
Additional Credits
Shakir Mohamed, Balaji Lakshminarayanan