CSE 5539: �Generative Models
Generative models
2
Generative models
image
Easily samplable distribution
[Credits: Tutorial on Diffusion Models]
Generative models
Cat
Dog
Bird
Lion
Tiger
Penguin
What and how to learn?
5
Objective 1: maximum likelihood estimation (MLE)
similar
Maximum likelihood (ML)
Maximum a posterior (MAP)
Variational, EM, …
Similar models OR data
How likely the model can generate the true data?
Objective 1: maximum likelihood estimation (MLE)
Density estimation
MLE =
min KL with empirical distribution
Generative models
Learn with maximum likelihood or its variants
Learn with other objectives
evaluation
generation
[Ian Goodfellow, Tutorial on generative adversarial models, 2017]
[Stanford CS231n]
Generative adversarial net (GAN)
10
Generator
Discriminator
REAL
FAKE
[Credits: Mengdi Fan and Xinyu Zhou, CSE 5539 course presentation]
Example results (by Style-GAN)
11
[A Style-Based Generator Architecture for Generative Adversarial Networks, CVPR 2019]
Other generative models
12
Diffusion by simple Gaussian
Denoising by neural networks (each step by a U-net!)
[Denoising Diffusion Probabilistic Models, NeurIPS 2020]
Other generative models
13
[Denoising Diffusion Probabilistic Models, NeurIPS 2020]
Other generative models
14
Big-GAN
Diffusion models
Real
[Diffusion Models Beat GANs on Image Synthesis, NeurIPS 2021]
Conditional image generation
15
[Zhu et al., 2017]
[Wang et al., 2018]
Conditional image generation
16
[Hierarchical Text-Conditional Image Generation with CLIP Latents, arXiv 2022]
Diffusion models
Reference
Reference
(Probabilistic) generative models
image
(optional)
Easily samplable distribution
[Credits: Tutorial on Diffusion Models]
Existing (probabilistic) generative models
[Credits: What are Diffusion Models?]
Problems:
Training stability and sample diversity
Surrogate loss and encoder model
Specialized architecture for reversible transform
Diffusion models
Diffusion/forward process
Denoising/reverse/generation process
[Credits: What are Diffusion Models?]
Diffusion in (non-equilibrium) thermodynamics
Diffusion Process
Denoising Process
(Reverse of Diffusion)
[Credits: Tutorial on Diffusion Models]
Steps to understand diffusion models
Let’s look again
diffuse
denoise
“approximate” denoise
[Credits: Denoising Diffusion Probabilistic Models]
Diffusion/forward process
Scale down + add noise
Hyper-parameters
Diffusion/forward process
Let’s look again
diffuse
denoise
“approximate” denoise
Steps to understand diffusion models
Denoising/reverse process
Denoising/reverse process
Denoising/reverse process
[Credits: Sohl-Dickstein et al., 2015]
Steps to understand diffusion models
How to minimize (1)
How to minimize (2)
Ignore!
Auto-encoder:
Separately learned
How to minimize (3)
Short recap: diffusion models
DDPM
DDPM
diffuse
denoise
“approximate” denoise
Generation
Summary
Why is it the right way to go? (by Harry)
Fun facts
Fun facts
Steps to understand diffusion models
(Class) conditioned generation
(Class) conditioned generation
(Class) conditioned generation
[Diffusion Models Beat GANs on Image Synthesis]
Class-conditioned DDPM (sampling)
(Class) conditioned generation
Left to right
(Class) conditioned generation
[GLIDE]
(Class) conditioned generation
[Classifier-Free Diffusion Guidance]
More traditional methods
[Ian Goodfellow, Tutorial on generative adversarial models, 2017]
[Stanford CS231n]
Type of generative models
Tractable density
Approximate density: MC
Approximate density
Implicit density:
Direct
[credits: Shakir Mohamed DL Summer School 2016]
Fully-observed models
Directed decomposition:
x[1]
x[2]
x[3]
x[d]
Chain rules
Fully-observed models
Directed decomposition:
[credits: Stanford CS231n]
Fully-observed models
Directed decomposition:
[credits: Stanford CS231n]
Fully-observed models
Undirect decomposition:
x[1]
x[2]
x[3]
x[4]
Fully-observed models
Examples
……
[START]
[START]
[START]
p(x[1])
p(x[2] | history)
p(x[3] | history)
p(x[d] | history)
x[1]
x[2]
x[d-1]
Latent variable models
z
x
z2
x
z1
[credits: Shakir Mohamed DL Summer School 2016]
Transformation models
[credits: Shakir Mohamed DL Summer School 2016]
Normalizing
Flow!
Two-sample tests
similar
If two populations --- real and generated data --- are similar
Two-sample tests
real
generated
learning objective
Backup
How to minimize (1)
How to minimize (2)
How to minimize (2)
How to minimize (2)
Ignore!
Auto-encoder:
Separately learned
How to minimize (3)
How to minimize (3)
How to minimize (3)