From f01d4b101f7596a35d5665597ecf447d4823af29 Mon Sep 17 00:00:00 2001 From: Morten Hjorth-Jensen Date: Mon, 15 Apr 2024 07:39:26 +0200 Subject: [PATCH] update week 13 --- doc/pub/week13/html/week13-bs.html | 317 +++++++- doc/pub/week13/html/week13-reveal.html | 320 +++++++- doc/pub/week13/html/week13-solarized.html | 307 +++++++- doc/pub/week13/html/week13.html | 307 +++++++- doc/pub/week13/ipynb/ipynb-week13-src.tar.gz | Bin 29 -> 20090 bytes doc/pub/week13/ipynb/week13.ipynb | 777 ++++++++++++++++--- doc/pub/week13/pdf/week13.pdf | Bin 403575 -> 451219 bytes doc/src/week13/week13.do.txt | 408 +++++----- 8 files changed, 2097 insertions(+), 339 deletions(-) diff --git a/doc/pub/week13/html/week13-bs.html b/doc/pub/week13/html/week13-bs.html index 25079640..6094e43d 100644 --- a/doc/pub/week13/html/week13-bs.html +++ b/doc/pub/week13/html/week13-bs.html @@ -40,6 +40,7 @@ 2, None, 'plans-for-the-week-april-15-19-2024'), + ('Readings', 2, None, 'readings'), ('Reminder from last week and layout of lecture this week', 2, None, @@ -56,6 +57,7 @@ 2, None, 'energy-based-models-and-langevin-sampling'), + ('Langevin sampling', 2, None, 'langevin-sampling'), ('Theory of Variational Autoencoders', 2, None, @@ -65,10 +67,25 @@ 2, None, 'schematic-image-of-an-autoencoder'), - ('Kullback-Leibler relative entropy', + ('Mathematics of Variational Autoencoders', 2, None, - 'kullback-leibler-relative-entropy'), + 'mathematics-of-variational-autoencoders'), + ('Using the conditional probability', + 2, + None, + 'using-the-conditional-probability'), + ('VAEs versus autoencoders', 2, None, 'vaes-versus-autoencoders'), + ('Gradient descent', 2, None, 'gradient-descent'), + ('Are VAEs just modified autoencoders?', + 2, + None, + 'are-vaes-just-modified-autoencoders'), + ('Training VAEs', 2, None, 'training-vaes'), + ('Kullback-Leibler relative entropy (notation to be updated)', + 2, + None, + 'kullback-leibler-relative-entropy-notation-to-be-updated'), ('Kullback-Leibler divergence', 2, None, @@ -88,6 +105,7 @@ ('Difference of moments', 2, None, 'difference-of-moments'), ('More observations', 2, None, 'more-observations'), ('Adding hyperparameters', 2, None, 'adding-hyperparameters'), + ('Back to VAEs', 2, None, 'back-to-vaes'), ('Code examples using Keras', 2, None, @@ -121,7 +139,8 @@ ('Exploring the Latent Space', 2, None, - 'exploring-the-latent-space')]} + 'exploring-the-latent-space'), + ('Using the KL divergence', 2, None, 'using-the-kl-divergence')]} end of tocinfo --> @@ -157,14 +176,22 @@ Contents @@ -240,11 +269,14 @@

Plans for the week A + + +

Readings

    -
  1. Reading recommendation: Goodfellow et al chapter 20.10-20-14
  2. +
  3. Reading recommendation: Goodfellow et al, for VAEs and GANs see sections 20.10-20.11
  4. To create Boltzmann machine using Keras, see Babcock and Bali chapter 4, see https://github.com/PacktPublishing/Hands-On-Generative-AI-with-Python-and-TensorFlow-2/blob/master/Chapter_4/models/rbm.py
  5. See Foster, chapter 7 on energy-based models at https://github.com/davidADSP/Generative_Deep_Learning_2nd_Edition/tree/main/notebooks/07_ebm/01_ebm
@@ -406,6 +438,11 @@

Energy-based m

That notebook is based on a recent article by Du and Mordatch, Implicit generation and modeling with energy-based models, see https://arxiv.org/pdf/1903.08689.pdf.

+ +

Langevin sampling

+ +

Note: Notes to be added

+

Theory of Variational Autoencoders

@@ -432,15 +469,113 @@

The Autoencoder again

\tilde{\boldsymbol{x}} = g(\boldsymbol{h},\boldsymbol{V})). $$ -

The goal is to minimize the construction error.

+

The goal is to minimize the construction error, often done by optimizing the means squared error.

Schematic image of an Autoencoder

- +

+
+

+
+

+ + +

Mathematics of Variational Autoencoders

+ +

We have defined earlier a probability (marginal) distribution with hidden variables \( \boldsymbol{h} \) and parameters \( \boldsymbol{\Theta} \) as

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \int d\boldsymbol{h}p(\boldsymbol{x},\boldsymbol{h};\boldsymbol{\Theta}), +$$ + +

for continuous variables \( \boldsymbol{h} \) and

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \sum_{\boldsymbol{h}}p(\boldsymbol{x},\boldsymbol{h};\boldsymbol{\Theta}), +$$ + +

for discrete stochastic events \( \boldsymbol{h} \). The variables \( \boldsymbol{h} \) are normally called the latent variables in the theory of autoencoders. We will also call then for that here.

+ + +

Using the conditional probability

+ +

Using the the definition of the conditional probabilities \( p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta}) \), \( p(\boldsymbol{h}\vert\boldsymbol{x};\boldsymbol{\Theta}) \) and +and the prior \( p(\boldsymbol{h}) \), we can rewrite the above equation as +

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \sum_{\boldsymbol{h}}p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta})p(\boldsymbol{h}, +$$ + +

which allows us to make the dependence of \( \boldsymbol{x} \) on \( \boldsymbol{h} \) +explicit by using the law of total probability. The intuition behind +this approach for finding the marginal probability for \( \boldsymbol{x} \) is to +optimize the above equations with respect to the parameters +\( \boldsymbol{\Theta} \). This is done normally by maximizing the probability, +the so-called maximum-likelihood approach discussed earlier. +

+ + +

VAEs versus autoencoders

+ +

This trained probability is assumed to be able to produce similar +samples as the input. In VAEs it is then common to compare via for +example the mean-squared error or the cross-entropy the predicted +values with the input values. Compared with autoencoders, we are now +producing a probability instead of a functions which mimicks the +input. +

+ +

In VAEs, the choice of this output distribution is often Gaussian, +meaning that the conditional probability is +

+$$ +p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta})=N(\boldsymbol{x}\vert f(\boldsymbol{h};\boldsymbol{\Theta}), \sigma^2\times \boldsymbol{I}), +$$ + +

with mean value given by the function \( f(\boldsymbol{h};\boldsymbol{\Theta}) \) and a +diagonal covariance matrix multiplied by a parameter \( \sigma^2 \) which +is treated as a hyperparameter. +

+ + +

Gradient descent

+ +

By having a Gaussian distribution, we can use gradient descent (or any +other optimization technique) to increase \( p(\boldsymbol{x};\boldsymbol{\Theta}) \) by +making \( f(\boldsymbol{h};\boldsymbol{\Theta}) \) approach \( \boldsymbol{x} \) for some \( \boldsymbol{h} \), +gradually making the training data more likely under the generative +model. The important property is simply that the marginal probability +can be computed, and it is continuous in \( \boldsymbol{\Theta} \).. +

+ + +

Are VAEs just modified autoencoders?

+ +

The mathematical basis of VAEs actually has relatively little to do +with classical autoencoders, for example the sparse autoencoders or +denoising autoencoders discussed earlier. +

+ +

VAEs approximately maximize the probability equation discussed +above. They are called autoencoders only because the final training +objective that derives from this setup does have an encoder and a +decoder, and resembles a traditional autoencoder. Unlike sparse +autoencoders, there are generally no tuning parameters analogous to +the sparsity penalties. And unlike sparse and denoising autoencoders, +we can sample directly from \( p(\boldsymbol{x}) \) without performing Markov +Chain Monte Carlo. +

+ + +

Training VAEs

+ +

To solve the integral or sum for \( p(\boldsymbol{x}) \), there are two problems +that VAEs must deal with: how to define the latent variables \( \boldsymbol{h} \), +that is decide what information they represent, and how to deal with +the integral over \( \boldsymbol{h} \). VAEs give a definite answer to both. +

-

Kullback-Leibler relative entropy

+

Kullback-Leibler relative entropy (notation to be updated)

When the goal of the training is to approximate a probability distribution, as it is in generative modeling, another relevant @@ -566,9 +701,12 @@

Adding hyperparameters

it is limited to the training data. Hence, in unsupervised training as well it is important to prevent overfitting to the training data. Thus it is common to add regularizers to the cost function in the same -manner as we discussed for say linear regression. +manner as discussed for say linear regression.

+ +

Back to VAEs

+

Code examples using Keras

@@ -794,10 +932,7 @@

Zero-sum game

$$ -\begin{equation} -v(\theta^{(g)}, \theta^{(d)}) -\label{_auto1} -\end{equation} $$ @@ -1710,6 +1845,164 @@

Exploring the Latent Space A pretty cool result! We see that our generator indeed has learned a distribution which qualitatively looks a whole lot like the MNIST dataset.

+ + +

Using the KL divergence

+ +

In practice, for most \( \boldsymbol{h} \), \( p(\boldsymbol{x}\vert \boldsymbol{h}; \boldsymbol{\Theta}) \) +will be nearly zero, and hence contribute almost nothing to our +estimate of \( p(\boldsymbol{x}) \). +

+ +

The key idea behind the variational autoencoder is to attempt to +sample values of \( \boldsymbol{h} \) that are likely to have produced \( \boldsymbol{x} \), +and compute \( p(\boldsymbol{x}) \) just from those. +

+ +

This means that we need a new function \( Q(\boldsymbol{h}|\boldsymbol{x}) \) which can +take a value of \( \boldsymbol{x} \) and give us a distribution over \( \boldsymbol{h} \) +values that are likely to produce \( \boldsymbol{x} \). Hopefully the space of +\( \boldsymbol{h} \) values that are likely under \( Q \) will be much smaller than +the space of all \( \boldsymbol{h} \)'s that are likely under the prior +\( p(\boldsymbol{h}) \). This lets us, for example, compute \( E_{\boldsymbol{h}\sim +Q}p(\boldsymbol{x}\vert \boldsymbol{h}) \) relatively easily. Note that we drop +\( \boldsymbol{\Theta} \) from here and for notational simplicity. +

+ +

However, if \( \boldsymbol{h} \) is sampled from an arbitrary distribution with +PDF \( Q(\boldsymbol{h}) \), which is not \( \mathcal{N}(0,I) \), then how does that +help us optimize \( p(\boldsymbol{x}) \)? The first thing we need to do is relate +\( E_{\boldsymbol{h}\sim Q}P(\boldsymbol{x}\vert \boldsymbol{h}) \) and \( p(\boldsymbol{x}) \). We will see where \( Q \) comes from later. +

+ +

The relationship between \( E_{\boldsymbol{h}\sim Q}p(\boldsymbol{x}\vert \boldsymbol{h}) \) and \( p(\boldsymbol{x}) \) is one of the cornerstones of variational Bayesian methods. +We begin with the definition of Kullback-Leibler divergence (KL divergence or \( \mathcal{D} \)) between \( p(\boldsymbol{h}\vert \boldsymbol{x}) \) and \( Q(\boldsymbol{h}) \), for some arbitrary \( Q \) (which may or may not depend on \( \boldsymbol{x} \)): +

+$$ + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(z|X) \right]. +$$ + +

We can get both \( p(\boldsymbol{x}) \) and \( p(\boldsymbol{x}\vert \boldsymbol{h}) \) into this equation by applying Bayes rule to \( p(\boldsymbol{h}|\boldsymbol{x}) \)

+$$ + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(X|z) - \log P(z) \right] + \log P(X). +$$ + +

Here, \( \log P(X) \) comes out of the expectation because it does not depend on \( z \). +Negating both sides, rearranging, and contracting part of \( E_{z\sim Q} \) into a KL-divergence terms yields: +

+$$ +\log P(X) - \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z)\|P(z)\right]. +$$ + +

By Bayes rule, we have:

+$$ +E_{z\sim Q}\left[\log P(Y_i|z,X_i)\right]=E_{z\sim Q}\left[\log P(z|Y_i,X_i) - \log P(z|X_i) + \log P(Y_i|X_i) \right] +$$ + +

Rearranging the terms and subtracting \( E_{z\sim Q}\log Q(z) \) from both sides:

+$$ +\begin{array}{c} +\log P(Y_i|X_i) - E_{z\sim Q}\left[\log Q(z)-\log P(z|X_i,Y_i)\right]=\hspace{10em}\\ +\hspace{10em}E_{z\sim Q}\left[\log P(Y_i|z,X_i)+\log P(z|X_i)-\log Q(z)\right] +\end{array} +$$ + +

Note that \( X \) is fixed, and \( Q \) can be \textit{any} distribution, not +just a distribution which does a good job mapping \( X \) to the \( z \)'s +that can produce \( X \). +

+ +

Since we are interested in inferring \( P(X) \), it makes sense to +construct a \( Q \) which \textit{does} depend on \( X \), and in particular, +one which makes \( \mathcal{D}\left[Q(z)\|P(z|X)\right] \) small: +

+$$ +\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]. +$$ + +

Hence, during training, it makes sense to choose a \( Q \) which will make +\( E_{z\sim Q}[\log Q(z)- \) $\log P(z|X_i,Y_i)]$ (a +\( \mathcal{D} \)-divergence) small, such that the right hand side is a +close approximation to \( \log P(Y_i|X_i) \). +

+ +

This equation serves as the core of the variational autoencoder, and +it's worth spending some time thinking about what it says In two +sentences, the left hand side has the quantity we want to maximize: +\( \log P(X) \) (plus an error term, which makes \( Q \) produce \( z \)'s that +can reproduce a given \( X \); this term will become small if \( Q \) is +high-capacity). The right hand side is something we can optimize via +stochastic gradient descent given the right choice of \( Q \) (although it +may not be obvious yet how). +

+ +

So how can we perform stochastic gradient descent?

+ +

First we need to be a bit more specific about the form that \( Q(z|X) \) +will take. The usual choice is to say that +\( Q(z|X)=\mathcal{N}(z|\mu(X;\vartheta),\Sigma(X;\vartheta)) \), where +\( \mu \) and \( \Sigma \) are arbitrary deterministic functions with +parameters \( \vartheta \) that can be learned from data (we will omit +\( \vartheta \) in later equations). In practice, \( \mu \) and \( \Sigma \) are +again implemented via neural networks, and \( \Sigma \) is constrained to +be a diagonal matrix. The name variational "autoencoder" comes from +the fact that \( \mu \) and \( \Sigma \) are "encoding" \( X \) into the latent +space \( z \). The advantages of this choice are computational, as they +make it clear how to compute the right hand side. The last +term---\( \mathcal{D}\left[Q(z|X)\|P(z)\right] \)---is now a KL-divergence +between two multivariate Gaussian distributions, which can be computed +in closed form as: +

+$$ +\begin{array}{c} + \mathcal{D}[\mathcal{N}(\mu_0,\Sigma_0) \| \mathcal{N}(\mu_1,\Sigma_1)] = \hspace{20em}\\ + \hspace{5em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma_1^{-1} \Sigma_0 \right) + \left( \mu_1 - \mu_0\right)^\top \Sigma_1^{-1} ( \mu_1 - \mu_0 ) - k + \log \left( \frac{ \det \Sigma_1 }{ \det \Sigma_0 } \right) \right) +\end{array} +$$ + +

where \( k \) is the dimensionality of the distribution. In our case, this simplifies to:

+$$ +\begin{array}{c} + \mathcal{D}[\mathcal{N}(\mu(X),\Sigma(X)) \| \mathcal{N}(0,I)] = \hspace{20em}\\ +\hspace{6em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma(X) \right) + \left( \mu(X)\right)^\top ( \mu(X) ) - k - \log\det\left( \Sigma(X) \right) \right). +\end{array} +$$ + +

The first term on the right hand side is a bit more tricky. +We could use sampling to estimate \( E_{z\sim Q}\left[\log P(X|z) \right] \), but getting a good estimate would require passing many samples of \( z \) through \( f \), which would be expensive. +Hence, as is standard in stochastic gradient descent, we take one sample of \( z \) and treat \( \log P(X|z) \) for that \( z \) as an approximation of \( E_{z\sim Q}\left[\log P(X|z) \right] \). +After all, we are already doing stochastic gradient descent over different values of \( X \) sampled from a dataset \( D \). +The full equation we want to optimize is: +

+ +$$ +\begin{array}{c} + E_{X\sim D}\left[\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]\right]=\hspace{16em}\\ +\hspace{10em}E_{X\sim D}\left[E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +\end{array} +$$ + +

If we take the gradient of this equation, the gradient symbol can be moved into the expectations. +Therefore, we can sample a single value of \( X \) and a single value of \( z \) from the distribution \( Q(z|X) \), and compute the gradient of: +

+$$ +\begin{equation} + \log P(X|z)-\mathcal{D}\left[Q(z|X)\|P(z)\right]. +\label{_auto1} +\end{equation} +$$ + +

We can then average the gradient of this function over arbitrarily many samples of \( X \) and \( z \), and the result converges to the gradient.

+ +

There is, however, a significant problem +\( E_{z\sim Q}\left[\log P(X|z) \right] \) depends not just on the parameters of \( P \), but also on the parameters of \( Q \). +

+ +

In order to make VAEs work, it is essential to drive \( Q \) to produce codes for \( X \) that \( P \) can reliably decode.

+$$ + E_{X\sim D}\left[E_{\epsilon\sim\mathcal{N}(0,I)}[\log P(X|z=\mu(X)+\Sigma^{1/2}(X)*\epsilon)]-\mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +$$ +
diff --git a/doc/pub/week13/html/week13-reveal.html b/doc/pub/week13/html/week13-reveal.html index eb607433..0402a66c 100644 --- a/doc/pub/week13/html/week13-reveal.html +++ b/doc/pub/week13/html/week13-reveal.html @@ -209,12 +209,15 @@

Plans for the week April 15-19, 202

+ +
+

Readings

-Readings +

    -

  1. Reading recommendation: Goodfellow et al chapter 20.10-20-14
  2. +

  3. Reading recommendation: Goodfellow et al, for VAEs and GANs see sections 20.10-20.11
  4. To create Boltzmann machine using Keras, see Babcock and Bali chapter 4, see https://github.com/PacktPublishing/Hands-On-Generative-AI-with-Python-and-TensorFlow-2/blob/master/Chapter_4/models/rbm.py
  5. See Foster, chapter 7 on energy-based models at https://github.com/davidADSP/Generative_Deep_Learning_2nd_Edition/tree/main/notebooks/07_ebm/01_ebm
@@ -381,6 +384,12 @@

Energy-based models and Lange

That notebook is based on a recent article by Du and Mordatch, Implicit generation and modeling with energy-based models, see https://arxiv.org/pdf/1903.08689.pdf.

+
+

Langevin sampling

+ +

Note: Notes to be added

+
+

Theory of Variational Autoencoders

@@ -412,17 +421,129 @@

The Autoencoder again

$$

 
-

The goal is to minimize the construction error.

+

The goal is to minimize the construction error, often done by optimizing the means squared error.

Schematic image of an Autoencoder

- +

+
+

+
+

+
+ +
+

Mathematics of Variational Autoencoders

+ +

We have defined earlier a probability (marginal) distribution with hidden variables \( \boldsymbol{h} \) and parameters \( \boldsymbol{\Theta} \) as

+

 
+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \int d\boldsymbol{h}p(\boldsymbol{x},\boldsymbol{h};\boldsymbol{\Theta}), +$$ +

 
+ +

for continuous variables \( \boldsymbol{h} \) and

+

 
+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \sum_{\boldsymbol{h}}p(\boldsymbol{x},\boldsymbol{h};\boldsymbol{\Theta}), +$$ +

 
+ +

for discrete stochastic events \( \boldsymbol{h} \). The variables \( \boldsymbol{h} \) are normally called the latent variables in the theory of autoencoders. We will also call then for that here.

+
+ +
+

Using the conditional probability

+ +

Using the the definition of the conditional probabilities \( p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta}) \), \( p(\boldsymbol{h}\vert\boldsymbol{x};\boldsymbol{\Theta}) \) and +and the prior \( p(\boldsymbol{h}) \), we can rewrite the above equation as +

+

 
+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \sum_{\boldsymbol{h}}p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta})p(\boldsymbol{h}, +$$ +

 
+ +

which allows us to make the dependence of \( \boldsymbol{x} \) on \( \boldsymbol{h} \) +explicit by using the law of total probability. The intuition behind +this approach for finding the marginal probability for \( \boldsymbol{x} \) is to +optimize the above equations with respect to the parameters +\( \boldsymbol{\Theta} \). This is done normally by maximizing the probability, +the so-called maximum-likelihood approach discussed earlier. +

+
+ +
+

VAEs versus autoencoders

+ +

This trained probability is assumed to be able to produce similar +samples as the input. In VAEs it is then common to compare via for +example the mean-squared error or the cross-entropy the predicted +values with the input values. Compared with autoencoders, we are now +producing a probability instead of a functions which mimicks the +input. +

+ +

In VAEs, the choice of this output distribution is often Gaussian, +meaning that the conditional probability is +

+

 
+$$ +p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta})=N(\boldsymbol{x}\vert f(\boldsymbol{h};\boldsymbol{\Theta}), \sigma^2\times \boldsymbol{I}), +$$ +

 
+ +

with mean value given by the function \( f(\boldsymbol{h};\boldsymbol{\Theta}) \) and a +diagonal covariance matrix multiplied by a parameter \( \sigma^2 \) which +is treated as a hyperparameter. +

+
+ +
+

Gradient descent

+ +

By having a Gaussian distribution, we can use gradient descent (or any +other optimization technique) to increase \( p(\boldsymbol{x};\boldsymbol{\Theta}) \) by +making \( f(\boldsymbol{h};\boldsymbol{\Theta}) \) approach \( \boldsymbol{x} \) for some \( \boldsymbol{h} \), +gradually making the training data more likely under the generative +model. The important property is simply that the marginal probability +can be computed, and it is continuous in \( \boldsymbol{\Theta} \).. +

+
+ +
+

Are VAEs just modified autoencoders?

+ +

The mathematical basis of VAEs actually has relatively little to do +with classical autoencoders, for example the sparse autoencoders or +denoising autoencoders discussed earlier. +

+ +

VAEs approximately maximize the probability equation discussed +above. They are called autoencoders only because the final training +objective that derives from this setup does have an encoder and a +decoder, and resembles a traditional autoencoder. Unlike sparse +autoencoders, there are generally no tuning parameters analogous to +the sparsity penalties. And unlike sparse and denoising autoencoders, +we can sample directly from \( p(\boldsymbol{x}) \) without performing Markov +Chain Monte Carlo. +

+
+ +
+

Training VAEs

+ +

To solve the integral or sum for \( p(\boldsymbol{x}) \), there are two problems +that VAEs must deal with: how to define the latent variables \( \boldsymbol{h} \), +that is decide what information they represent, and how to deal with +the integral over \( \boldsymbol{h} \). VAEs give a definite answer to both. +

-

Kullback-Leibler relative entropy

+

Kullback-Leibler relative entropy (notation to be updated)

When the goal of the training is to approximate a probability distribution, as it is in generative modeling, another relevant @@ -560,10 +681,14 @@

Adding hyperparameters

it is limited to the training data. Hence, in unsupervised training as well it is important to prevent overfitting to the training data. Thus it is common to add regularizers to the cost function in the same -manner as we discussed for say linear regression. +manner as discussed for say linear regression.

+
+

Back to VAEs

+
+

Code examples using Keras

@@ -803,10 +928,7 @@

Zero-sum game

 
$$ -\begin{equation} -v(\theta^{(g)}, \theta^{(d)}) -\tag{1} -\end{equation} $$

 

@@ -1731,6 +1853,186 @@

Exploring the Latent Space

+
+

Using the KL divergence

+ +

In practice, for most \( \boldsymbol{h} \), \( p(\boldsymbol{x}\vert \boldsymbol{h}; \boldsymbol{\Theta}) \) +will be nearly zero, and hence contribute almost nothing to our +estimate of \( p(\boldsymbol{x}) \). +

+ +

The key idea behind the variational autoencoder is to attempt to +sample values of \( \boldsymbol{h} \) that are likely to have produced \( \boldsymbol{x} \), +and compute \( p(\boldsymbol{x}) \) just from those. +

+ +

This means that we need a new function \( Q(\boldsymbol{h}|\boldsymbol{x}) \) which can +take a value of \( \boldsymbol{x} \) and give us a distribution over \( \boldsymbol{h} \) +values that are likely to produce \( \boldsymbol{x} \). Hopefully the space of +\( \boldsymbol{h} \) values that are likely under \( Q \) will be much smaller than +the space of all \( \boldsymbol{h} \)'s that are likely under the prior +\( p(\boldsymbol{h}) \). This lets us, for example, compute \( E_{\boldsymbol{h}\sim +Q}p(\boldsymbol{x}\vert \boldsymbol{h}) \) relatively easily. Note that we drop +\( \boldsymbol{\Theta} \) from here and for notational simplicity. +

+ +

However, if \( \boldsymbol{h} \) is sampled from an arbitrary distribution with +PDF \( Q(\boldsymbol{h}) \), which is not \( \mathcal{N}(0,I) \), then how does that +help us optimize \( p(\boldsymbol{x}) \)? The first thing we need to do is relate +\( E_{\boldsymbol{h}\sim Q}P(\boldsymbol{x}\vert \boldsymbol{h}) \) and \( p(\boldsymbol{x}) \). We will see where \( Q \) comes from later. +

+ +

The relationship between \( E_{\boldsymbol{h}\sim Q}p(\boldsymbol{x}\vert \boldsymbol{h}) \) and \( p(\boldsymbol{x}) \) is one of the cornerstones of variational Bayesian methods. +We begin with the definition of Kullback-Leibler divergence (KL divergence or \( \mathcal{D} \)) between \( p(\boldsymbol{h}\vert \boldsymbol{x}) \) and \( Q(\boldsymbol{h}) \), for some arbitrary \( Q \) (which may or may not depend on \( \boldsymbol{x} \)): +

+

 
+$$ + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(z|X) \right]. +$$ +

 
+ +

We can get both \( p(\boldsymbol{x}) \) and \( p(\boldsymbol{x}\vert \boldsymbol{h}) \) into this equation by applying Bayes rule to \( p(\boldsymbol{h}|\boldsymbol{x}) \)

+

 
+$$ + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(X|z) - \log P(z) \right] + \log P(X). +$$ +

 
+ +

Here, \( \log P(X) \) comes out of the expectation because it does not depend on \( z \). +Negating both sides, rearranging, and contracting part of \( E_{z\sim Q} \) into a KL-divergence terms yields: +

+

 
+$$ +\log P(X) - \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z)\|P(z)\right]. +$$ +

 
+ +

By Bayes rule, we have:

+

 
+$$ +E_{z\sim Q}\left[\log P(Y_i|z,X_i)\right]=E_{z\sim Q}\left[\log P(z|Y_i,X_i) - \log P(z|X_i) + \log P(Y_i|X_i) \right] +$$ +

 
+ +

Rearranging the terms and subtracting \( E_{z\sim Q}\log Q(z) \) from both sides:

+

 
+$$ +\begin{array}{c} +\log P(Y_i|X_i) - E_{z\sim Q}\left[\log Q(z)-\log P(z|X_i,Y_i)\right]=\hspace{10em}\\ +\hspace{10em}E_{z\sim Q}\left[\log P(Y_i|z,X_i)+\log P(z|X_i)-\log Q(z)\right] +\end{array} +$$ +

 
+ +

Note that \( X \) is fixed, and \( Q \) can be \textit{any} distribution, not +just a distribution which does a good job mapping \( X \) to the \( z \)'s +that can produce \( X \). +

+ +

Since we are interested in inferring \( P(X) \), it makes sense to +construct a \( Q \) which \textit{does} depend on \( X \), and in particular, +one which makes \( \mathcal{D}\left[Q(z)\|P(z|X)\right] \) small: +

+

 
+$$ +\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]. +$$ +

 
+ +

Hence, during training, it makes sense to choose a \( Q \) which will make +\( E_{z\sim Q}[\log Q(z)- \) $\log P(z|X_i,Y_i)]$ (a +\( \mathcal{D} \)-divergence) small, such that the right hand side is a +close approximation to \( \log P(Y_i|X_i) \). +

+ +

This equation serves as the core of the variational autoencoder, and +it's worth spending some time thinking about what it says In two +sentences, the left hand side has the quantity we want to maximize: +\( \log P(X) \) (plus an error term, which makes \( Q \) produce \( z \)'s that +can reproduce a given \( X \); this term will become small if \( Q \) is +high-capacity). The right hand side is something we can optimize via +stochastic gradient descent given the right choice of \( Q \) (although it +may not be obvious yet how). +

+ +

So how can we perform stochastic gradient descent?

+ +

First we need to be a bit more specific about the form that \( Q(z|X) \) +will take. The usual choice is to say that +\( Q(z|X)=\mathcal{N}(z|\mu(X;\vartheta),\Sigma(X;\vartheta)) \), where +\( \mu \) and \( \Sigma \) are arbitrary deterministic functions with +parameters \( \vartheta \) that can be learned from data (we will omit +\( \vartheta \) in later equations). In practice, \( \mu \) and \( \Sigma \) are +again implemented via neural networks, and \( \Sigma \) is constrained to +be a diagonal matrix. The name variational "autoencoder" comes from +the fact that \( \mu \) and \( \Sigma \) are "encoding" \( X \) into the latent +space \( z \). The advantages of this choice are computational, as they +make it clear how to compute the right hand side. The last +term---\( \mathcal{D}\left[Q(z|X)\|P(z)\right] \)---is now a KL-divergence +between two multivariate Gaussian distributions, which can be computed +in closed form as: +

+

 
+$$ +\begin{array}{c} + \mathcal{D}[\mathcal{N}(\mu_0,\Sigma_0) \| \mathcal{N}(\mu_1,\Sigma_1)] = \hspace{20em}\\ + \hspace{5em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma_1^{-1} \Sigma_0 \right) + \left( \mu_1 - \mu_0\right)^\top \Sigma_1^{-1} ( \mu_1 - \mu_0 ) - k + \log \left( \frac{ \det \Sigma_1 }{ \det \Sigma_0 } \right) \right) +\end{array} +$$ +

 
+ +

where \( k \) is the dimensionality of the distribution. In our case, this simplifies to:

+

 
+$$ +\begin{array}{c} + \mathcal{D}[\mathcal{N}(\mu(X),\Sigma(X)) \| \mathcal{N}(0,I)] = \hspace{20em}\\ +\hspace{6em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma(X) \right) + \left( \mu(X)\right)^\top ( \mu(X) ) - k - \log\det\left( \Sigma(X) \right) \right). +\end{array} +$$ +

 
+ +

The first term on the right hand side is a bit more tricky. +We could use sampling to estimate \( E_{z\sim Q}\left[\log P(X|z) \right] \), but getting a good estimate would require passing many samples of \( z \) through \( f \), which would be expensive. +Hence, as is standard in stochastic gradient descent, we take one sample of \( z \) and treat \( \log P(X|z) \) for that \( z \) as an approximation of \( E_{z\sim Q}\left[\log P(X|z) \right] \). +After all, we are already doing stochastic gradient descent over different values of \( X \) sampled from a dataset \( D \). +The full equation we want to optimize is: +

+ +

 
+$$ +\begin{array}{c} + E_{X\sim D}\left[\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]\right]=\hspace{16em}\\ +\hspace{10em}E_{X\sim D}\left[E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +\end{array} +$$ +

 
+ +

If we take the gradient of this equation, the gradient symbol can be moved into the expectations. +Therefore, we can sample a single value of \( X \) and a single value of \( z \) from the distribution \( Q(z|X) \), and compute the gradient of: +

+

 
+$$ +\begin{equation} + \log P(X|z)-\mathcal{D}\left[Q(z|X)\|P(z)\right]. +\tag{1} +\end{equation} +$$ +

 
+ +

We can then average the gradient of this function over arbitrarily many samples of \( X \) and \( z \), and the result converges to the gradient.

+ +

There is, however, a significant problem +\( E_{z\sim Q}\left[\log P(X|z) \right] \) depends not just on the parameters of \( P \), but also on the parameters of \( Q \). +

+ +

In order to make VAEs work, it is essential to drive \( Q \) to produce codes for \( X \) that \( P \) can reliably decode.

+

 
+$$ + E_{X\sim D}\left[E_{\epsilon\sim\mathcal{N}(0,I)}[\log P(X|z=\mu(X)+\Sigma^{1/2}(X)*\epsilon)]-\mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +$$ +

 
+

+ diff --git a/doc/pub/week13/html/week13-solarized.html b/doc/pub/week13/html/week13-solarized.html index c53b24d2..c83dfcec 100644 --- a/doc/pub/week13/html/week13-solarized.html +++ b/doc/pub/week13/html/week13-solarized.html @@ -67,6 +67,7 @@ 2, None, 'plans-for-the-week-april-15-19-2024'), + ('Readings', 2, None, 'readings'), ('Reminder from last week and layout of lecture this week', 2, None, @@ -83,6 +84,7 @@ 2, None, 'energy-based-models-and-langevin-sampling'), + ('Langevin sampling', 2, None, 'langevin-sampling'), ('Theory of Variational Autoencoders', 2, None, @@ -92,10 +94,25 @@ 2, None, 'schematic-image-of-an-autoencoder'), - ('Kullback-Leibler relative entropy', + ('Mathematics of Variational Autoencoders', 2, None, - 'kullback-leibler-relative-entropy'), + 'mathematics-of-variational-autoencoders'), + ('Using the conditional probability', + 2, + None, + 'using-the-conditional-probability'), + ('VAEs versus autoencoders', 2, None, 'vaes-versus-autoencoders'), + ('Gradient descent', 2, None, 'gradient-descent'), + ('Are VAEs just modified autoencoders?', + 2, + None, + 'are-vaes-just-modified-autoencoders'), + ('Training VAEs', 2, None, 'training-vaes'), + ('Kullback-Leibler relative entropy (notation to be updated)', + 2, + None, + 'kullback-leibler-relative-entropy-notation-to-be-updated'), ('Kullback-Leibler divergence', 2, None, @@ -115,6 +132,7 @@ ('Difference of moments', 2, None, 'difference-of-moments'), ('More observations', 2, None, 'more-observations'), ('Adding hyperparameters', 2, None, 'adding-hyperparameters'), + ('Back to VAEs', 2, None, 'back-to-vaes'), ('Code examples using Keras', 2, None, @@ -148,7 +166,8 @@ ('Exploring the Latent Space', 2, None, - 'exploring-the-latent-space')]} + 'exploring-the-latent-space'), + ('Using the KL divergence', 2, None, 'using-the-kl-divergence')]} end of tocinfo --> @@ -206,11 +225,14 @@

Plans for the week April 15-19, 202 + +









+

Readings

-Readings +

    -
  1. Reading recommendation: Goodfellow et al chapter 20.10-20-14
  2. +
  3. Reading recommendation: Goodfellow et al, for VAEs and GANs see sections 20.10-20.11
  4. To create Boltzmann machine using Keras, see Babcock and Bali chapter 4, see https://github.com/PacktPublishing/Hands-On-Generative-AI-with-Python-and-TensorFlow-2/blob/master/Chapter_4/models/rbm.py
  5. See Foster, chapter 7 on energy-based models at https://github.com/davidADSP/Generative_Deep_Learning_2nd_Edition/tree/main/notebooks/07_ebm/01_ebm
@@ -371,6 +393,11 @@

Energy-based models and Lange

That notebook is based on a recent article by Du and Mordatch, Implicit generation and modeling with energy-based models, see https://arxiv.org/pdf/1903.08689.pdf.

+









+

Langevin sampling

+ +

Note: Notes to be added

+









Theory of Variational Autoencoders

@@ -397,15 +424,113 @@

The Autoencoder again

\tilde{\boldsymbol{x}} = g(\boldsymbol{h},\boldsymbol{V})). $$ -

The goal is to minimize the construction error.

+

The goal is to minimize the construction error, often done by optimizing the means squared error.











Schematic image of an Autoencoder

- +

+
+

+
+

+ +









+

Mathematics of Variational Autoencoders

+ +

We have defined earlier a probability (marginal) distribution with hidden variables \( \boldsymbol{h} \) and parameters \( \boldsymbol{\Theta} \) as

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \int d\boldsymbol{h}p(\boldsymbol{x},\boldsymbol{h};\boldsymbol{\Theta}), +$$ + +

for continuous variables \( \boldsymbol{h} \) and

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \sum_{\boldsymbol{h}}p(\boldsymbol{x},\boldsymbol{h};\boldsymbol{\Theta}), +$$ + +

for discrete stochastic events \( \boldsymbol{h} \). The variables \( \boldsymbol{h} \) are normally called the latent variables in the theory of autoencoders. We will also call then for that here.

+ +









+

Using the conditional probability

+ +

Using the the definition of the conditional probabilities \( p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta}) \), \( p(\boldsymbol{h}\vert\boldsymbol{x};\boldsymbol{\Theta}) \) and +and the prior \( p(\boldsymbol{h}) \), we can rewrite the above equation as +

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \sum_{\boldsymbol{h}}p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta})p(\boldsymbol{h}, +$$ + +

which allows us to make the dependence of \( \boldsymbol{x} \) on \( \boldsymbol{h} \) +explicit by using the law of total probability. The intuition behind +this approach for finding the marginal probability for \( \boldsymbol{x} \) is to +optimize the above equations with respect to the parameters +\( \boldsymbol{\Theta} \). This is done normally by maximizing the probability, +the so-called maximum-likelihood approach discussed earlier. +

+ +









+

VAEs versus autoencoders

+ +

This trained probability is assumed to be able to produce similar +samples as the input. In VAEs it is then common to compare via for +example the mean-squared error or the cross-entropy the predicted +values with the input values. Compared with autoencoders, we are now +producing a probability instead of a functions which mimicks the +input. +

+ +

In VAEs, the choice of this output distribution is often Gaussian, +meaning that the conditional probability is +

+$$ +p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta})=N(\boldsymbol{x}\vert f(\boldsymbol{h};\boldsymbol{\Theta}), \sigma^2\times \boldsymbol{I}), +$$ + +

with mean value given by the function \( f(\boldsymbol{h};\boldsymbol{\Theta}) \) and a +diagonal covariance matrix multiplied by a parameter \( \sigma^2 \) which +is treated as a hyperparameter. +

+ +









+

Gradient descent

+ +

By having a Gaussian distribution, we can use gradient descent (or any +other optimization technique) to increase \( p(\boldsymbol{x};\boldsymbol{\Theta}) \) by +making \( f(\boldsymbol{h};\boldsymbol{\Theta}) \) approach \( \boldsymbol{x} \) for some \( \boldsymbol{h} \), +gradually making the training data more likely under the generative +model. The important property is simply that the marginal probability +can be computed, and it is continuous in \( \boldsymbol{\Theta} \).. +

+ +









+

Are VAEs just modified autoencoders?

+ +

The mathematical basis of VAEs actually has relatively little to do +with classical autoencoders, for example the sparse autoencoders or +denoising autoencoders discussed earlier. +

+ +

VAEs approximately maximize the probability equation discussed +above. They are called autoencoders only because the final training +objective that derives from this setup does have an encoder and a +decoder, and resembles a traditional autoencoder. Unlike sparse +autoencoders, there are generally no tuning parameters analogous to +the sparsity penalties. And unlike sparse and denoising autoencoders, +we can sample directly from \( p(\boldsymbol{x}) \) without performing Markov +Chain Monte Carlo. +

+ +









+

Training VAEs

+ +

To solve the integral or sum for \( p(\boldsymbol{x}) \), there are two problems +that VAEs must deal with: how to define the latent variables \( \boldsymbol{h} \), +that is decide what information they represent, and how to deal with +the integral over \( \boldsymbol{h} \). VAEs give a definite answer to both. +











-

Kullback-Leibler relative entropy

+

Kullback-Leibler relative entropy (notation to be updated)

When the goal of the training is to approximate a probability distribution, as it is in generative modeling, another relevant @@ -531,9 +656,12 @@

Adding hyperparameters

it is limited to the training data. Hence, in unsupervised training as well it is important to prevent overfitting to the training data. Thus it is common to add regularizers to the cost function in the same -manner as we discussed for say linear regression. +manner as discussed for say linear regression.

+









+

Back to VAEs

+









Code examples using Keras

@@ -759,10 +887,7 @@

Zero-sum game

$$ -\begin{equation} -v(\theta^{(g)}, \theta^{(d)}) -\label{_auto1} -\end{equation} $$ @@ -1675,6 +1800,164 @@

Exploring the Latent Space

A pretty cool result! We see that our generator indeed has learned a distribution which qualitatively looks a whole lot like the MNIST dataset.

+ +









+

Using the KL divergence

+ +

In practice, for most \( \boldsymbol{h} \), \( p(\boldsymbol{x}\vert \boldsymbol{h}; \boldsymbol{\Theta}) \) +will be nearly zero, and hence contribute almost nothing to our +estimate of \( p(\boldsymbol{x}) \). +

+ +

The key idea behind the variational autoencoder is to attempt to +sample values of \( \boldsymbol{h} \) that are likely to have produced \( \boldsymbol{x} \), +and compute \( p(\boldsymbol{x}) \) just from those. +

+ +

This means that we need a new function \( Q(\boldsymbol{h}|\boldsymbol{x}) \) which can +take a value of \( \boldsymbol{x} \) and give us a distribution over \( \boldsymbol{h} \) +values that are likely to produce \( \boldsymbol{x} \). Hopefully the space of +\( \boldsymbol{h} \) values that are likely under \( Q \) will be much smaller than +the space of all \( \boldsymbol{h} \)'s that are likely under the prior +\( p(\boldsymbol{h}) \). This lets us, for example, compute \( E_{\boldsymbol{h}\sim +Q}p(\boldsymbol{x}\vert \boldsymbol{h}) \) relatively easily. Note that we drop +\( \boldsymbol{\Theta} \) from here and for notational simplicity. +

+ +

However, if \( \boldsymbol{h} \) is sampled from an arbitrary distribution with +PDF \( Q(\boldsymbol{h}) \), which is not \( \mathcal{N}(0,I) \), then how does that +help us optimize \( p(\boldsymbol{x}) \)? The first thing we need to do is relate +\( E_{\boldsymbol{h}\sim Q}P(\boldsymbol{x}\vert \boldsymbol{h}) \) and \( p(\boldsymbol{x}) \). We will see where \( Q \) comes from later. +

+ +

The relationship between \( E_{\boldsymbol{h}\sim Q}p(\boldsymbol{x}\vert \boldsymbol{h}) \) and \( p(\boldsymbol{x}) \) is one of the cornerstones of variational Bayesian methods. +We begin with the definition of Kullback-Leibler divergence (KL divergence or \( \mathcal{D} \)) between \( p(\boldsymbol{h}\vert \boldsymbol{x}) \) and \( Q(\boldsymbol{h}) \), for some arbitrary \( Q \) (which may or may not depend on \( \boldsymbol{x} \)): +

+$$ + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(z|X) \right]. +$$ + +

We can get both \( p(\boldsymbol{x}) \) and \( p(\boldsymbol{x}\vert \boldsymbol{h}) \) into this equation by applying Bayes rule to \( p(\boldsymbol{h}|\boldsymbol{x}) \)

+$$ + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(X|z) - \log P(z) \right] + \log P(X). +$$ + +

Here, \( \log P(X) \) comes out of the expectation because it does not depend on \( z \). +Negating both sides, rearranging, and contracting part of \( E_{z\sim Q} \) into a KL-divergence terms yields: +

+$$ +\log P(X) - \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z)\|P(z)\right]. +$$ + +

By Bayes rule, we have:

+$$ +E_{z\sim Q}\left[\log P(Y_i|z,X_i)\right]=E_{z\sim Q}\left[\log P(z|Y_i,X_i) - \log P(z|X_i) + \log P(Y_i|X_i) \right] +$$ + +

Rearranging the terms and subtracting \( E_{z\sim Q}\log Q(z) \) from both sides:

+$$ +\begin{array}{c} +\log P(Y_i|X_i) - E_{z\sim Q}\left[\log Q(z)-\log P(z|X_i,Y_i)\right]=\hspace{10em}\\ +\hspace{10em}E_{z\sim Q}\left[\log P(Y_i|z,X_i)+\log P(z|X_i)-\log Q(z)\right] +\end{array} +$$ + +

Note that \( X \) is fixed, and \( Q \) can be \textit{any} distribution, not +just a distribution which does a good job mapping \( X \) to the \( z \)'s +that can produce \( X \). +

+ +

Since we are interested in inferring \( P(X) \), it makes sense to +construct a \( Q \) which \textit{does} depend on \( X \), and in particular, +one which makes \( \mathcal{D}\left[Q(z)\|P(z|X)\right] \) small: +

+$$ +\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]. +$$ + +

Hence, during training, it makes sense to choose a \( Q \) which will make +\( E_{z\sim Q}[\log Q(z)- \) $\log P(z|X_i,Y_i)]$ (a +\( \mathcal{D} \)-divergence) small, such that the right hand side is a +close approximation to \( \log P(Y_i|X_i) \). +

+ +

This equation serves as the core of the variational autoencoder, and +it's worth spending some time thinking about what it says In two +sentences, the left hand side has the quantity we want to maximize: +\( \log P(X) \) (plus an error term, which makes \( Q \) produce \( z \)'s that +can reproduce a given \( X \); this term will become small if \( Q \) is +high-capacity). The right hand side is something we can optimize via +stochastic gradient descent given the right choice of \( Q \) (although it +may not be obvious yet how). +

+ +

So how can we perform stochastic gradient descent?

+ +

First we need to be a bit more specific about the form that \( Q(z|X) \) +will take. The usual choice is to say that +\( Q(z|X)=\mathcal{N}(z|\mu(X;\vartheta),\Sigma(X;\vartheta)) \), where +\( \mu \) and \( \Sigma \) are arbitrary deterministic functions with +parameters \( \vartheta \) that can be learned from data (we will omit +\( \vartheta \) in later equations). In practice, \( \mu \) and \( \Sigma \) are +again implemented via neural networks, and \( \Sigma \) is constrained to +be a diagonal matrix. The name variational "autoencoder" comes from +the fact that \( \mu \) and \( \Sigma \) are "encoding" \( X \) into the latent +space \( z \). The advantages of this choice are computational, as they +make it clear how to compute the right hand side. The last +term---\( \mathcal{D}\left[Q(z|X)\|P(z)\right] \)---is now a KL-divergence +between two multivariate Gaussian distributions, which can be computed +in closed form as: +

+$$ +\begin{array}{c} + \mathcal{D}[\mathcal{N}(\mu_0,\Sigma_0) \| \mathcal{N}(\mu_1,\Sigma_1)] = \hspace{20em}\\ + \hspace{5em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma_1^{-1} \Sigma_0 \right) + \left( \mu_1 - \mu_0\right)^\top \Sigma_1^{-1} ( \mu_1 - \mu_0 ) - k + \log \left( \frac{ \det \Sigma_1 }{ \det \Sigma_0 } \right) \right) +\end{array} +$$ + +

where \( k \) is the dimensionality of the distribution. In our case, this simplifies to:

+$$ +\begin{array}{c} + \mathcal{D}[\mathcal{N}(\mu(X),\Sigma(X)) \| \mathcal{N}(0,I)] = \hspace{20em}\\ +\hspace{6em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma(X) \right) + \left( \mu(X)\right)^\top ( \mu(X) ) - k - \log\det\left( \Sigma(X) \right) \right). +\end{array} +$$ + +

The first term on the right hand side is a bit more tricky. +We could use sampling to estimate \( E_{z\sim Q}\left[\log P(X|z) \right] \), but getting a good estimate would require passing many samples of \( z \) through \( f \), which would be expensive. +Hence, as is standard in stochastic gradient descent, we take one sample of \( z \) and treat \( \log P(X|z) \) for that \( z \) as an approximation of \( E_{z\sim Q}\left[\log P(X|z) \right] \). +After all, we are already doing stochastic gradient descent over different values of \( X \) sampled from a dataset \( D \). +The full equation we want to optimize is: +

+ +$$ +\begin{array}{c} + E_{X\sim D}\left[\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]\right]=\hspace{16em}\\ +\hspace{10em}E_{X\sim D}\left[E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +\end{array} +$$ + +

If we take the gradient of this equation, the gradient symbol can be moved into the expectations. +Therefore, we can sample a single value of \( X \) and a single value of \( z \) from the distribution \( Q(z|X) \), and compute the gradient of: +

+$$ +\begin{equation} + \log P(X|z)-\mathcal{D}\left[Q(z|X)\|P(z)\right]. +\label{_auto1} +\end{equation} +$$ + +

We can then average the gradient of this function over arbitrarily many samples of \( X \) and \( z \), and the result converges to the gradient.

+ +

There is, however, a significant problem +\( E_{z\sim Q}\left[\log P(X|z) \right] \) depends not just on the parameters of \( P \), but also on the parameters of \( Q \). +

+ +

In order to make VAEs work, it is essential to drive \( Q \) to produce codes for \( X \) that \( P \) can reliably decode.

+$$ + E_{X\sim D}\left[E_{\epsilon\sim\mathcal{N}(0,I)}[\log P(X|z=\mu(X)+\Sigma^{1/2}(X)*\epsilon)]-\mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +$$ +
© 1999-2024, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license diff --git a/doc/pub/week13/html/week13.html b/doc/pub/week13/html/week13.html index 5b2af4f6..dc941593 100644 --- a/doc/pub/week13/html/week13.html +++ b/doc/pub/week13/html/week13.html @@ -144,6 +144,7 @@ 2, None, 'plans-for-the-week-april-15-19-2024'), + ('Readings', 2, None, 'readings'), ('Reminder from last week and layout of lecture this week', 2, None, @@ -160,6 +161,7 @@ 2, None, 'energy-based-models-and-langevin-sampling'), + ('Langevin sampling', 2, None, 'langevin-sampling'), ('Theory of Variational Autoencoders', 2, None, @@ -169,10 +171,25 @@ 2, None, 'schematic-image-of-an-autoencoder'), - ('Kullback-Leibler relative entropy', + ('Mathematics of Variational Autoencoders', 2, None, - 'kullback-leibler-relative-entropy'), + 'mathematics-of-variational-autoencoders'), + ('Using the conditional probability', + 2, + None, + 'using-the-conditional-probability'), + ('VAEs versus autoencoders', 2, None, 'vaes-versus-autoencoders'), + ('Gradient descent', 2, None, 'gradient-descent'), + ('Are VAEs just modified autoencoders?', + 2, + None, + 'are-vaes-just-modified-autoencoders'), + ('Training VAEs', 2, None, 'training-vaes'), + ('Kullback-Leibler relative entropy (notation to be updated)', + 2, + None, + 'kullback-leibler-relative-entropy-notation-to-be-updated'), ('Kullback-Leibler divergence', 2, None, @@ -192,6 +209,7 @@ ('Difference of moments', 2, None, 'difference-of-moments'), ('More observations', 2, None, 'more-observations'), ('Adding hyperparameters', 2, None, 'adding-hyperparameters'), + ('Back to VAEs', 2, None, 'back-to-vaes'), ('Code examples using Keras', 2, None, @@ -225,7 +243,8 @@ ('Exploring the Latent Space', 2, None, - 'exploring-the-latent-space')]} + 'exploring-the-latent-space'), + ('Using the KL divergence', 2, None, 'using-the-kl-divergence')]} end of tocinfo --> @@ -283,11 +302,14 @@

Plans for the week April 15-19, 202

+ +









+

Readings

-Readings +

    -
  1. Reading recommendation: Goodfellow et al chapter 20.10-20-14
  2. +
  3. Reading recommendation: Goodfellow et al, for VAEs and GANs see sections 20.10-20.11
  4. To create Boltzmann machine using Keras, see Babcock and Bali chapter 4, see https://github.com/PacktPublishing/Hands-On-Generative-AI-with-Python-and-TensorFlow-2/blob/master/Chapter_4/models/rbm.py
  5. See Foster, chapter 7 on energy-based models at https://github.com/davidADSP/Generative_Deep_Learning_2nd_Edition/tree/main/notebooks/07_ebm/01_ebm
@@ -448,6 +470,11 @@

Energy-based models and Lange

That notebook is based on a recent article by Du and Mordatch, Implicit generation and modeling with energy-based models, see https://arxiv.org/pdf/1903.08689.pdf.

+









+

Langevin sampling

+ +

Note: Notes to be added

+









Theory of Variational Autoencoders

@@ -474,15 +501,113 @@

The Autoencoder again

\tilde{\boldsymbol{x}} = g(\boldsymbol{h},\boldsymbol{V})). $$ -

The goal is to minimize the construction error.

+

The goal is to minimize the construction error, often done by optimizing the means squared error.











Schematic image of an Autoencoder

- +

+
+

+
+

+ +









+

Mathematics of Variational Autoencoders

+ +

We have defined earlier a probability (marginal) distribution with hidden variables \( \boldsymbol{h} \) and parameters \( \boldsymbol{\Theta} \) as

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \int d\boldsymbol{h}p(\boldsymbol{x},\boldsymbol{h};\boldsymbol{\Theta}), +$$ + +

for continuous variables \( \boldsymbol{h} \) and

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \sum_{\boldsymbol{h}}p(\boldsymbol{x},\boldsymbol{h};\boldsymbol{\Theta}), +$$ + +

for discrete stochastic events \( \boldsymbol{h} \). The variables \( \boldsymbol{h} \) are normally called the latent variables in the theory of autoencoders. We will also call then for that here.

+ +









+

Using the conditional probability

+ +

Using the the definition of the conditional probabilities \( p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta}) \), \( p(\boldsymbol{h}\vert\boldsymbol{x};\boldsymbol{\Theta}) \) and +and the prior \( p(\boldsymbol{h}) \), we can rewrite the above equation as +

+$$ +p(\boldsymbol{x};\boldsymbol{\Theta}) = \sum_{\boldsymbol{h}}p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta})p(\boldsymbol{h}, +$$ + +

which allows us to make the dependence of \( \boldsymbol{x} \) on \( \boldsymbol{h} \) +explicit by using the law of total probability. The intuition behind +this approach for finding the marginal probability for \( \boldsymbol{x} \) is to +optimize the above equations with respect to the parameters +\( \boldsymbol{\Theta} \). This is done normally by maximizing the probability, +the so-called maximum-likelihood approach discussed earlier. +

+ +









+

VAEs versus autoencoders

+ +

This trained probability is assumed to be able to produce similar +samples as the input. In VAEs it is then common to compare via for +example the mean-squared error or the cross-entropy the predicted +values with the input values. Compared with autoencoders, we are now +producing a probability instead of a functions which mimicks the +input. +

+ +

In VAEs, the choice of this output distribution is often Gaussian, +meaning that the conditional probability is +

+$$ +p(\boldsymbol{x}\vert\boldsymbol{h};\boldsymbol{\Theta})=N(\boldsymbol{x}\vert f(\boldsymbol{h};\boldsymbol{\Theta}), \sigma^2\times \boldsymbol{I}), +$$ + +

with mean value given by the function \( f(\boldsymbol{h};\boldsymbol{\Theta}) \) and a +diagonal covariance matrix multiplied by a parameter \( \sigma^2 \) which +is treated as a hyperparameter. +

+ +









+

Gradient descent

+ +

By having a Gaussian distribution, we can use gradient descent (or any +other optimization technique) to increase \( p(\boldsymbol{x};\boldsymbol{\Theta}) \) by +making \( f(\boldsymbol{h};\boldsymbol{\Theta}) \) approach \( \boldsymbol{x} \) for some \( \boldsymbol{h} \), +gradually making the training data more likely under the generative +model. The important property is simply that the marginal probability +can be computed, and it is continuous in \( \boldsymbol{\Theta} \).. +

+ +









+

Are VAEs just modified autoencoders?

+ +

The mathematical basis of VAEs actually has relatively little to do +with classical autoencoders, for example the sparse autoencoders or +denoising autoencoders discussed earlier. +

+ +

VAEs approximately maximize the probability equation discussed +above. They are called autoencoders only because the final training +objective that derives from this setup does have an encoder and a +decoder, and resembles a traditional autoencoder. Unlike sparse +autoencoders, there are generally no tuning parameters analogous to +the sparsity penalties. And unlike sparse and denoising autoencoders, +we can sample directly from \( p(\boldsymbol{x}) \) without performing Markov +Chain Monte Carlo. +

+ +









+

Training VAEs

+ +

To solve the integral or sum for \( p(\boldsymbol{x}) \), there are two problems +that VAEs must deal with: how to define the latent variables \( \boldsymbol{h} \), +that is decide what information they represent, and how to deal with +the integral over \( \boldsymbol{h} \). VAEs give a definite answer to both. +











-

Kullback-Leibler relative entropy

+

Kullback-Leibler relative entropy (notation to be updated)

When the goal of the training is to approximate a probability distribution, as it is in generative modeling, another relevant @@ -608,9 +733,12 @@

Adding hyperparameters

it is limited to the training data. Hence, in unsupervised training as well it is important to prevent overfitting to the training data. Thus it is common to add regularizers to the cost function in the same -manner as we discussed for say linear regression. +manner as discussed for say linear regression.

+









+

Back to VAEs

+









Code examples using Keras

@@ -836,10 +964,7 @@

Zero-sum game

$$ -\begin{equation} -v(\theta^{(g)}, \theta^{(d)}) -\label{_auto1} -\end{equation} $$ @@ -1752,6 +1877,164 @@

Exploring the Latent Space

A pretty cool result! We see that our generator indeed has learned a distribution which qualitatively looks a whole lot like the MNIST dataset.

+ +









+

Using the KL divergence

+ +

In practice, for most \( \boldsymbol{h} \), \( p(\boldsymbol{x}\vert \boldsymbol{h}; \boldsymbol{\Theta}) \) +will be nearly zero, and hence contribute almost nothing to our +estimate of \( p(\boldsymbol{x}) \). +

+ +

The key idea behind the variational autoencoder is to attempt to +sample values of \( \boldsymbol{h} \) that are likely to have produced \( \boldsymbol{x} \), +and compute \( p(\boldsymbol{x}) \) just from those. +

+ +

This means that we need a new function \( Q(\boldsymbol{h}|\boldsymbol{x}) \) which can +take a value of \( \boldsymbol{x} \) and give us a distribution over \( \boldsymbol{h} \) +values that are likely to produce \( \boldsymbol{x} \). Hopefully the space of +\( \boldsymbol{h} \) values that are likely under \( Q \) will be much smaller than +the space of all \( \boldsymbol{h} \)'s that are likely under the prior +\( p(\boldsymbol{h}) \). This lets us, for example, compute \( E_{\boldsymbol{h}\sim +Q}p(\boldsymbol{x}\vert \boldsymbol{h}) \) relatively easily. Note that we drop +\( \boldsymbol{\Theta} \) from here and for notational simplicity. +

+ +

However, if \( \boldsymbol{h} \) is sampled from an arbitrary distribution with +PDF \( Q(\boldsymbol{h}) \), which is not \( \mathcal{N}(0,I) \), then how does that +help us optimize \( p(\boldsymbol{x}) \)? The first thing we need to do is relate +\( E_{\boldsymbol{h}\sim Q}P(\boldsymbol{x}\vert \boldsymbol{h}) \) and \( p(\boldsymbol{x}) \). We will see where \( Q \) comes from later. +

+ +

The relationship between \( E_{\boldsymbol{h}\sim Q}p(\boldsymbol{x}\vert \boldsymbol{h}) \) and \( p(\boldsymbol{x}) \) is one of the cornerstones of variational Bayesian methods. +We begin with the definition of Kullback-Leibler divergence (KL divergence or \( \mathcal{D} \)) between \( p(\boldsymbol{h}\vert \boldsymbol{x}) \) and \( Q(\boldsymbol{h}) \), for some arbitrary \( Q \) (which may or may not depend on \( \boldsymbol{x} \)): +

+$$ + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(z|X) \right]. +$$ + +

We can get both \( p(\boldsymbol{x}) \) and \( p(\boldsymbol{x}\vert \boldsymbol{h}) \) into this equation by applying Bayes rule to \( p(\boldsymbol{h}|\boldsymbol{x}) \)

+$$ + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(X|z) - \log P(z) \right] + \log P(X). +$$ + +

Here, \( \log P(X) \) comes out of the expectation because it does not depend on \( z \). +Negating both sides, rearranging, and contracting part of \( E_{z\sim Q} \) into a KL-divergence terms yields: +

+$$ +\log P(X) - \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z)\|P(z)\right]. +$$ + +

By Bayes rule, we have:

+$$ +E_{z\sim Q}\left[\log P(Y_i|z,X_i)\right]=E_{z\sim Q}\left[\log P(z|Y_i,X_i) - \log P(z|X_i) + \log P(Y_i|X_i) \right] +$$ + +

Rearranging the terms and subtracting \( E_{z\sim Q}\log Q(z) \) from both sides:

+$$ +\begin{array}{c} +\log P(Y_i|X_i) - E_{z\sim Q}\left[\log Q(z)-\log P(z|X_i,Y_i)\right]=\hspace{10em}\\ +\hspace{10em}E_{z\sim Q}\left[\log P(Y_i|z,X_i)+\log P(z|X_i)-\log Q(z)\right] +\end{array} +$$ + +

Note that \( X \) is fixed, and \( Q \) can be \textit{any} distribution, not +just a distribution which does a good job mapping \( X \) to the \( z \)'s +that can produce \( X \). +

+ +

Since we are interested in inferring \( P(X) \), it makes sense to +construct a \( Q \) which \textit{does} depend on \( X \), and in particular, +one which makes \( \mathcal{D}\left[Q(z)\|P(z|X)\right] \) small: +

+$$ +\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]. +$$ + +

Hence, during training, it makes sense to choose a \( Q \) which will make +\( E_{z\sim Q}[\log Q(z)- \) $\log P(z|X_i,Y_i)]$ (a +\( \mathcal{D} \)-divergence) small, such that the right hand side is a +close approximation to \( \log P(Y_i|X_i) \). +

+ +

This equation serves as the core of the variational autoencoder, and +it's worth spending some time thinking about what it says In two +sentences, the left hand side has the quantity we want to maximize: +\( \log P(X) \) (plus an error term, which makes \( Q \) produce \( z \)'s that +can reproduce a given \( X \); this term will become small if \( Q \) is +high-capacity). The right hand side is something we can optimize via +stochastic gradient descent given the right choice of \( Q \) (although it +may not be obvious yet how). +

+ +

So how can we perform stochastic gradient descent?

+ +

First we need to be a bit more specific about the form that \( Q(z|X) \) +will take. The usual choice is to say that +\( Q(z|X)=\mathcal{N}(z|\mu(X;\vartheta),\Sigma(X;\vartheta)) \), where +\( \mu \) and \( \Sigma \) are arbitrary deterministic functions with +parameters \( \vartheta \) that can be learned from data (we will omit +\( \vartheta \) in later equations). In practice, \( \mu \) and \( \Sigma \) are +again implemented via neural networks, and \( \Sigma \) is constrained to +be a diagonal matrix. The name variational "autoencoder" comes from +the fact that \( \mu \) and \( \Sigma \) are "encoding" \( X \) into the latent +space \( z \). The advantages of this choice are computational, as they +make it clear how to compute the right hand side. The last +term---\( \mathcal{D}\left[Q(z|X)\|P(z)\right] \)---is now a KL-divergence +between two multivariate Gaussian distributions, which can be computed +in closed form as: +

+$$ +\begin{array}{c} + \mathcal{D}[\mathcal{N}(\mu_0,\Sigma_0) \| \mathcal{N}(\mu_1,\Sigma_1)] = \hspace{20em}\\ + \hspace{5em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma_1^{-1} \Sigma_0 \right) + \left( \mu_1 - \mu_0\right)^\top \Sigma_1^{-1} ( \mu_1 - \mu_0 ) - k + \log \left( \frac{ \det \Sigma_1 }{ \det \Sigma_0 } \right) \right) +\end{array} +$$ + +

where \( k \) is the dimensionality of the distribution. In our case, this simplifies to:

+$$ +\begin{array}{c} + \mathcal{D}[\mathcal{N}(\mu(X),\Sigma(X)) \| \mathcal{N}(0,I)] = \hspace{20em}\\ +\hspace{6em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma(X) \right) + \left( \mu(X)\right)^\top ( \mu(X) ) - k - \log\det\left( \Sigma(X) \right) \right). +\end{array} +$$ + +

The first term on the right hand side is a bit more tricky. +We could use sampling to estimate \( E_{z\sim Q}\left[\log P(X|z) \right] \), but getting a good estimate would require passing many samples of \( z \) through \( f \), which would be expensive. +Hence, as is standard in stochastic gradient descent, we take one sample of \( z \) and treat \( \log P(X|z) \) for that \( z \) as an approximation of \( E_{z\sim Q}\left[\log P(X|z) \right] \). +After all, we are already doing stochastic gradient descent over different values of \( X \) sampled from a dataset \( D \). +The full equation we want to optimize is: +

+ +$$ +\begin{array}{c} + E_{X\sim D}\left[\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]\right]=\hspace{16em}\\ +\hspace{10em}E_{X\sim D}\left[E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +\end{array} +$$ + +

If we take the gradient of this equation, the gradient symbol can be moved into the expectations. +Therefore, we can sample a single value of \( X \) and a single value of \( z \) from the distribution \( Q(z|X) \), and compute the gradient of: +

+$$ +\begin{equation} + \log P(X|z)-\mathcal{D}\left[Q(z|X)\|P(z)\right]. +\label{_auto1} +\end{equation} +$$ + +

We can then average the gradient of this function over arbitrarily many samples of \( X \) and \( z \), and the result converges to the gradient.

+ +

There is, however, a significant problem +\( E_{z\sim Q}\left[\log P(X|z) \right] \) depends not just on the parameters of \( P \), but also on the parameters of \( Q \). +

+ +

In order to make VAEs work, it is essential to drive \( Q \) to produce codes for \( X \) that \( P \) can reliably decode.

+$$ + E_{X\sim D}\left[E_{\epsilon\sim\mathcal{N}(0,I)}[\log P(X|z=\mu(X)+\Sigma^{1/2}(X)*\epsilon)]-\mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +$$ +
© 1999-2024, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license diff --git a/doc/pub/week13/ipynb/ipynb-week13-src.tar.gz b/doc/pub/week13/ipynb/ipynb-week13-src.tar.gz index 6c10e0b208b03caebbc565ee6276e972c6c204a9..79af625d3786652ec3c62faa2ff5f813e3b520b6 100644 GIT binary patch literal 20090 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\n", - "\n", - "\n", - "**Readings.**\n", - "\n", - "1. Reading recommendation: Goodfellow et al chapter 20.10-20-14\n", + "" + ] + }, + { + "cell_type": "markdown", + "id": "07b48a42", + "metadata": { + "editable": true + }, + "source": [ + "## Readings\n", + "1. Reading recommendation: Goodfellow et al, for VAEs and GANs see sections 20.10-20.11\n", "\n", "2. To create Boltzmann machine using Keras, see Babcock and Bali chapter 4, see \n", "\n", @@ -62,7 +69,7 @@ }, { "cell_type": "markdown", - "id": "6f3b1a0e", + "id": "4a593d0c", "metadata": { "editable": true }, @@ -78,7 +85,7 @@ }, { "cell_type": "markdown", - "id": "4c4518b7", + "id": "8c41077c", "metadata": { "editable": true }, @@ -89,7 +96,7 @@ { "cell_type": "code", "execution_count": 1, - "id": "a38cb8bb", + "id": "26f3c67f", "metadata": { "collapsed": false, "editable": true @@ -204,7 +211,7 @@ }, { "cell_type": "markdown", - "id": "6a863f37", + "id": "761e5203", "metadata": { "editable": true }, @@ -216,7 +223,7 @@ }, { "cell_type": "markdown", - "id": "ca225537", + "id": "9204df6f", "metadata": { "editable": true }, @@ -230,7 +237,19 @@ }, { "cell_type": "markdown", - "id": "ff575c58", + "id": "7c2000bc", + "metadata": { + "editable": true + }, + "source": [ + "## Langevin sampling\n", + "\n", + "**Note**: Notes to be added" + ] + }, + { + "cell_type": "markdown", + "id": "b57de47c", "metadata": { "editable": true }, @@ -242,7 +261,7 @@ }, { "cell_type": "markdown", - "id": "13c1450c", + "id": "90cbcc91", "metadata": { "editable": true }, @@ -258,7 +277,7 @@ }, { "cell_type": "markdown", - "id": "5cdb38eb", + "id": "231c7c76", "metadata": { "editable": true }, @@ -270,7 +289,7 @@ }, { "cell_type": "markdown", - "id": "e75d2c06", + "id": "e4039926", "metadata": { "editable": true }, @@ -281,7 +300,7 @@ }, { "cell_type": "markdown", - "id": "04094e6d", + "id": "132111d9", "metadata": { "editable": true }, @@ -293,34 +312,233 @@ }, { "cell_type": "markdown", - "id": "69a127f0", + "id": "f9996a71", "metadata": { "editable": true }, "source": [ - "The goal is to minimize the construction error." + "The goal is to minimize the construction error, often done by optimizing the means squared error." ] }, { "cell_type": "markdown", - "id": "67c0a90b", + "id": "c4327625", "metadata": { "editable": true }, "source": [ "## Schematic image of an Autoencoder\n", "\n", - "" + "\n", + "\n", + "\n", + "

Figure 1:

\n", + "" ] }, { "cell_type": "markdown", - "id": "789ace31", + "id": "6d32b3e5", "metadata": { "editable": true }, "source": [ - "## Kullback-Leibler relative entropy\n", + "## Mathematics of Variational Autoencoders\n", + "\n", + "We have defined earlier a probability (marginal) distribution with hidden variables $\\boldsymbol{h}$ and parameters $\\boldsymbol{\\Theta}$ as" + ] + }, + { + "cell_type": "markdown", + "id": "a09c0733", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "p(\\boldsymbol{x};\\boldsymbol{\\Theta}) = \\int d\\boldsymbol{h}p(\\boldsymbol{x},\\boldsymbol{h};\\boldsymbol{\\Theta}),\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "ef6b1e7c", + "metadata": { + "editable": true + }, + "source": [ + "for continuous variables $\\boldsymbol{h}$ and" + ] + }, + { + "cell_type": "markdown", + "id": "c0ca4ce9", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "p(\\boldsymbol{x};\\boldsymbol{\\Theta}) = \\sum_{\\boldsymbol{h}}p(\\boldsymbol{x},\\boldsymbol{h};\\boldsymbol{\\Theta}),\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "abc0a344", + "metadata": { + "editable": true + }, + "source": [ + "for discrete stochastic events $\\boldsymbol{h}$. The variables $\\boldsymbol{h}$ are normally called the **latent variables** in the theory of autoencoders. We will also call then for that here." + ] + }, + { + "cell_type": "markdown", + "id": "95f0590f", + "metadata": { + "editable": true + }, + "source": [ + "## Using the conditional probability\n", + "\n", + "Using the the definition of the conditional probabilities $p(\\boldsymbol{x}\\vert\\boldsymbol{h};\\boldsymbol{\\Theta})$, $p(\\boldsymbol{h}\\vert\\boldsymbol{x};\\boldsymbol{\\Theta})$ and \n", + "and the prior $p(\\boldsymbol{h})$, we can rewrite the above equation as" + ] + }, + { + "cell_type": "markdown", + "id": "0418643f", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "p(\\boldsymbol{x};\\boldsymbol{\\Theta}) = \\sum_{\\boldsymbol{h}}p(\\boldsymbol{x}\\vert\\boldsymbol{h};\\boldsymbol{\\Theta})p(\\boldsymbol{h},\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "4a9128c2", + "metadata": { + "editable": true + }, + "source": [ + "which allows us to make the dependence of $\\boldsymbol{x}$ on $\\boldsymbol{h}$\n", + "explicit by using the law of total probability. The intuition behind\n", + "this approach for finding the marginal probability for $\\boldsymbol{x}$ is to\n", + "optimize the above equations with respect to the parameters\n", + "$\\boldsymbol{\\Theta}$. This is done normally by maximizing the probability,\n", + "the so-called maximum-likelihood approach discussed earlier." + ] + }, + { + "cell_type": "markdown", + "id": "2bcab5be", + "metadata": { + "editable": true + }, + "source": [ + "## VAEs versus autoencoders\n", + "\n", + "This trained probability is assumed to be able to produce similar\n", + "samples as the input. In VAEs it is then common to compare via for\n", + "example the mean-squared error or the cross-entropy the predicted\n", + "values with the input values. Compared with autoencoders, we are now\n", + "producing a probability instead of a functions which mimicks the\n", + "input.\n", + "\n", + "In VAEs, the choice of this output distribution is often Gaussian,\n", + "meaning that the conditional probability is" + ] + }, + { + "cell_type": "markdown", + "id": "120515d6", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "p(\\boldsymbol{x}\\vert\\boldsymbol{h};\\boldsymbol{\\Theta})=N(\\boldsymbol{x}\\vert f(\\boldsymbol{h};\\boldsymbol{\\Theta}), \\sigma^2\\times \\boldsymbol{I}),\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "e7937800", + "metadata": { + "editable": true + }, + "source": [ + "with mean value given by the function $f(\\boldsymbol{h};\\boldsymbol{\\Theta})$ and a\n", + "diagonal covariance matrix multiplied by a parameter $\\sigma^2$ which\n", + "is treated as a hyperparameter." + ] + }, + { + "cell_type": "markdown", + "id": "837a0123", + "metadata": { + "editable": true + }, + "source": [ + "## Gradient descent\n", + "\n", + "By having a Gaussian distribution, we can use gradient descent (or any\n", + "other optimization technique) to increase $p(\\boldsymbol{x};\\boldsymbol{\\Theta})$ by\n", + "making $f(\\boldsymbol{h};\\boldsymbol{\\Theta})$ approach $\\boldsymbol{x}$ for some $\\boldsymbol{h}$,\n", + "gradually making the training data more likely under the generative\n", + "model. The important property is simply that the marginal probability\n", + "can be computed, and it is continuous in $\\boldsymbol{\\Theta}$.." + ] + }, + { + "cell_type": "markdown", + "id": "a8471ff4", + "metadata": { + "editable": true + }, + "source": [ + "## Are VAEs just modified autoencoders?\n", + "\n", + "The mathematical basis of VAEs actually has relatively little to do\n", + "with classical autoencoders, for example the sparse autoencoders or\n", + "denoising autoencoders discussed earlier.\n", + "\n", + "VAEs approximately maximize the probability equation discussed\n", + "above. They are called autoencoders only because the final training\n", + "objective that derives from this setup does have an encoder and a\n", + "decoder, and resembles a traditional autoencoder. Unlike sparse\n", + "autoencoders, there are generally no tuning parameters analogous to\n", + "the sparsity penalties. And unlike sparse and denoising autoencoders,\n", + "we can sample directly from $p(\\boldsymbol{x})$ without performing Markov\n", + "Chain Monte Carlo." + ] + }, + { + "cell_type": "markdown", + "id": "34436c42", + "metadata": { + "editable": true + }, + "source": [ + "## Training VAEs\n", + "\n", + "To solve the integral or sum for $p(\\boldsymbol{x})$, there are two problems\n", + "that VAEs must deal with: how to define the latent variables $\\boldsymbol{h}$,\n", + "that is decide what information they represent, and how to deal with\n", + "the integral over $\\boldsymbol{h}$. VAEs give a definite answer to both." + ] + }, + { + "cell_type": "markdown", + "id": "dcb0681c", + "metadata": { + "editable": true + }, + "source": [ + "## Kullback-Leibler relative entropy (notation to be updated)\n", "\n", "When the goal of the training is to approximate a probability\n", "distribution, as it is in generative modeling, another relevant\n", @@ -333,7 +551,7 @@ }, { "cell_type": "markdown", - "id": "37323bfa", + "id": "8b98f3ed", "metadata": { "editable": true }, @@ -347,7 +565,7 @@ }, { "cell_type": "markdown", - "id": "9d74c9a3", + "id": "f8923141", "metadata": { "editable": true }, @@ -361,7 +579,7 @@ }, { "cell_type": "markdown", - "id": "fb48fde1", + "id": "0db3a2b6", "metadata": { "editable": true }, @@ -382,7 +600,7 @@ }, { "cell_type": "markdown", - "id": "77696018", + "id": "9e92fc4c", "metadata": { "editable": true }, @@ -403,7 +621,7 @@ }, { "cell_type": "markdown", - "id": "feb5a374", + "id": "c079c8d3", "metadata": { "editable": true }, @@ -418,7 +636,7 @@ }, { "cell_type": "markdown", - "id": "d82efd30", + "id": "3be06ae7", "metadata": { "editable": true }, @@ -434,7 +652,7 @@ }, { "cell_type": "markdown", - "id": "a4ac64cb", + "id": "e1548b0c", "metadata": { "editable": true }, @@ -444,7 +662,7 @@ }, { "cell_type": "markdown", - "id": "8e54f20c", + "id": "51264cb8", "metadata": { "editable": true }, @@ -456,7 +674,7 @@ }, { "cell_type": "markdown", - "id": "e00dde69", + "id": "484a967b", "metadata": { "editable": true }, @@ -473,7 +691,7 @@ }, { "cell_type": "markdown", - "id": "5d2aebb2", + "id": "c4b01a24", "metadata": { "editable": true }, @@ -494,7 +712,7 @@ }, { "cell_type": "markdown", - "id": "cae0300f", + "id": "de4af2c7", "metadata": { "editable": true }, @@ -513,7 +731,7 @@ }, { "cell_type": "markdown", - "id": "4e47497b", + "id": "73d9684d", "metadata": { "editable": true }, @@ -527,12 +745,22 @@ "it is limited to the training data. Hence, in unsupervised training as\n", "well it is important to prevent overfitting to the training data. Thus\n", "it is common to add regularizers to the cost function in the same\n", - "manner as we discussed for say linear regression." + "manner as discussed for say linear regression." + ] + }, + { + "cell_type": "markdown", + "id": "2c02bb33", + "metadata": { + "editable": true + }, + "source": [ + "## Back to VAEs" ] }, { "cell_type": "markdown", - "id": "94de7899", + "id": "9299e540", "metadata": { "editable": true }, @@ -544,7 +772,7 @@ }, { "cell_type": "markdown", - "id": "f241ef68", + "id": "4e53fe60", "metadata": { "editable": true }, @@ -555,7 +783,7 @@ { "cell_type": "code", "execution_count": 2, - "id": "5d5cbed5", + "id": "e8eb3742", "metadata": { "collapsed": false, "editable": true @@ -666,7 +894,7 @@ }, { "cell_type": "markdown", - "id": "a475e2d7", + "id": "47597299", "metadata": { "editable": true }, @@ -682,7 +910,7 @@ }, { "cell_type": "markdown", - "id": "c1cd08d5", + "id": "7aeb947e", "metadata": { "editable": true }, @@ -703,7 +931,7 @@ }, { "cell_type": "markdown", - "id": "9cb9dde2", + "id": "927b10d6", "metadata": { "editable": true }, @@ -715,7 +943,7 @@ }, { "cell_type": "markdown", - "id": "94bd4d04", + "id": "73e1f1a4", "metadata": { "editable": true }, @@ -740,7 +968,7 @@ }, { "cell_type": "markdown", - "id": "41a6d884", + "id": "f62ef66f", "metadata": { "editable": true }, @@ -758,7 +986,7 @@ }, { "cell_type": "markdown", - "id": "4c4ced8e", + "id": "268689d6", "metadata": { "editable": true }, @@ -770,7 +998,7 @@ }, { "cell_type": "markdown", - "id": "24c0fbe4", + "id": "f60b6a3c", "metadata": { "editable": true }, @@ -786,7 +1014,7 @@ }, { "cell_type": "markdown", - "id": "8c16d11f", + "id": "9085e160", "metadata": { "editable": true }, @@ -798,7 +1026,7 @@ }, { "cell_type": "markdown", - "id": "f883edc4", + "id": "8f3a0ea3", "metadata": { "editable": true }, @@ -809,7 +1037,7 @@ }, { "cell_type": "markdown", - "id": "49277a25", + "id": "46652aaa", "metadata": { "editable": true }, @@ -823,7 +1051,7 @@ }, { "cell_type": "markdown", - "id": "bc17df16", + "id": "c8fd98ab", "metadata": { "editable": true }, @@ -835,7 +1063,7 @@ }, { "cell_type": "markdown", - "id": "56d256d9", + "id": "9f086d9d", "metadata": { "editable": true }, @@ -846,25 +1074,19 @@ }, { "cell_type": "markdown", - "id": "b5668a30", + "id": "f1f44e87", "metadata": { "editable": true }, "source": [ - "\n", - "
\n", - "\n", "$$\n", - "\\begin{equation}\n", - " -v(\\theta^{(g)}, \\theta^{(d)})\n", - "\\label{_auto1} \\tag{1}\n", - "\\end{equation}\n", + "-v(\\theta^{(g)}, \\theta^{(d)})\n", "$$" ] }, { "cell_type": "markdown", - "id": "541f6691", + "id": "101e72f5", "metadata": { "editable": true }, @@ -887,7 +1109,7 @@ }, { "cell_type": "markdown", - "id": "d983ee38", + "id": "e2179e45", "metadata": { "editable": true }, @@ -904,7 +1126,7 @@ }, { "cell_type": "markdown", - "id": "6e8303e5", + "id": "87cd2006", "metadata": { "editable": true }, @@ -917,7 +1139,7 @@ }, { "cell_type": "markdown", - "id": "b99b0716", + "id": "a5250c3e", "metadata": { "editable": true }, @@ -928,7 +1150,7 @@ }, { "cell_type": "markdown", - "id": "ddcb25d6", + "id": "2d8a85a5", "metadata": { "editable": true }, @@ -942,7 +1164,7 @@ }, { "cell_type": "markdown", - "id": "847060e5", + "id": "7564be45", "metadata": { "editable": true }, @@ -955,7 +1177,7 @@ }, { "cell_type": "markdown", - "id": "ea2d547c", + "id": "3b1ac15c", "metadata": { "editable": true }, @@ -967,7 +1189,7 @@ }, { "cell_type": "markdown", - "id": "fb2b961f", + "id": "5b15fc11", "metadata": { "editable": true }, @@ -982,7 +1204,7 @@ }, { "cell_type": "markdown", - "id": "e5360cad", + "id": "d7b0cedf", "metadata": { "editable": true }, @@ -1001,7 +1223,7 @@ }, { "cell_type": "markdown", - "id": "c26e4e35", + "id": "31681017", "metadata": { "editable": true }, @@ -1020,7 +1242,7 @@ { "cell_type": "code", "execution_count": 3, - "id": "1cc26f49", + "id": "6e9d1942", "metadata": { "collapsed": false, "editable": true @@ -1038,7 +1260,7 @@ }, { "cell_type": "markdown", - "id": "16ab04cc", + "id": "b09615cf", "metadata": { "editable": true }, @@ -1049,7 +1271,7 @@ { "cell_type": "code", "execution_count": 4, - "id": "acdfbd97", + "id": "dd57f39d", "metadata": { "collapsed": false, "editable": true @@ -1075,7 +1297,7 @@ }, { "cell_type": "markdown", - "id": "c2e1e358", + "id": "94610e51", "metadata": { "editable": true }, @@ -1086,7 +1308,7 @@ { "cell_type": "code", "execution_count": 5, - "id": "b630975c", + "id": "f7929086", "metadata": { "collapsed": false, "editable": true @@ -1099,7 +1321,7 @@ }, { "cell_type": "markdown", - "id": "40b02fdd", + "id": "1e2b9d59", "metadata": { "editable": true }, @@ -1118,7 +1340,7 @@ { "cell_type": "code", "execution_count": 6, - "id": "34b786bb", + "id": "e9cbaa1c", "metadata": { "collapsed": false, "editable": true @@ -1186,7 +1408,7 @@ }, { "cell_type": "markdown", - "id": "6df7239a", + "id": "12c54220", "metadata": { "editable": true }, @@ -1199,7 +1421,7 @@ { "cell_type": "code", "execution_count": 7, - "id": "0bb7f9f0", + "id": "37a40bd1", "metadata": { "collapsed": false, "editable": true @@ -1239,7 +1461,7 @@ }, { "cell_type": "markdown", - "id": "19cfaf8f", + "id": "b8fef51e", "metadata": { "editable": true }, @@ -1250,7 +1472,7 @@ { "cell_type": "code", "execution_count": 8, - "id": "7fcd2d95", + "id": "636acf90", "metadata": { "collapsed": false, "editable": true @@ -1264,7 +1486,7 @@ { "cell_type": "code", "execution_count": 9, - "id": "e7565186", + "id": "dd901d8c", "metadata": { "collapsed": false, "editable": true @@ -1277,7 +1499,7 @@ }, { "cell_type": "markdown", - "id": "f5895e30", + "id": "a959802a", "metadata": { "editable": true }, @@ -1288,7 +1510,7 @@ { "cell_type": "code", "execution_count": 10, - "id": "9464bb23", + "id": "567812ff", "metadata": { "collapsed": false, "editable": true @@ -1302,7 +1524,7 @@ }, { "cell_type": "markdown", - "id": "734d99c1", + "id": "99185dc3", "metadata": { "editable": true }, @@ -1317,7 +1539,7 @@ { "cell_type": "code", "execution_count": 11, - "id": "283c03f2", + "id": "9868ba30", "metadata": { "collapsed": false, "editable": true @@ -1333,7 +1555,7 @@ { "cell_type": "code", "execution_count": 12, - "id": "4456797c", + "id": "b0ae1928", "metadata": { "collapsed": false, "editable": true @@ -1350,7 +1572,7 @@ }, { "cell_type": "markdown", - "id": "c2a781f0", + "id": "c876db65", "metadata": { "editable": true }, @@ -1362,7 +1584,7 @@ { "cell_type": "code", "execution_count": 13, - "id": "3eb6008b", + "id": "66f5b26c", "metadata": { "collapsed": false, "editable": true @@ -1376,7 +1598,7 @@ }, { "cell_type": "markdown", - "id": "81de819d", + "id": "b75521a4", "metadata": { "editable": true }, @@ -1390,7 +1612,7 @@ { "cell_type": "code", "execution_count": 14, - "id": "764073c3", + "id": "4c125b46", "metadata": { "collapsed": false, "editable": true @@ -1424,7 +1646,7 @@ }, { "cell_type": "markdown", - "id": "3aff1e1d", + "id": "6396a3c9", "metadata": { "editable": true }, @@ -1437,7 +1659,7 @@ { "cell_type": "code", "execution_count": 15, - "id": "2cf78d69", + "id": "2c290385", "metadata": { "collapsed": false, "editable": true @@ -1462,7 +1684,7 @@ }, { "cell_type": "markdown", - "id": "882f9616", + "id": "547d46ef", "metadata": { "editable": true }, @@ -1475,7 +1697,7 @@ { "cell_type": "code", "execution_count": 16, - "id": "75b2124c", + "id": "0dc78b2d", "metadata": { "collapsed": false, "editable": true @@ -1493,7 +1715,7 @@ }, { "cell_type": "markdown", - "id": "a76891d9", + "id": "426496e9", "metadata": { "editable": true }, @@ -1504,7 +1726,7 @@ { "cell_type": "code", "execution_count": 17, - "id": "0dd65bc0", + "id": "89f60891", "metadata": { "collapsed": false, "editable": true @@ -1544,7 +1766,7 @@ }, { "cell_type": "markdown", - "id": "8bf59554", + "id": "bbb9acb4", "metadata": { "editable": true }, @@ -1556,7 +1778,7 @@ { "cell_type": "code", "execution_count": 18, - "id": "6c26eac8", + "id": "cc029b41", "metadata": { "collapsed": false, "editable": true @@ -1568,7 +1790,7 @@ }, { "cell_type": "markdown", - "id": "2603b4e9", + "id": "a27008d5", "metadata": { "editable": true }, @@ -1582,7 +1804,7 @@ { "cell_type": "code", "execution_count": 19, - "id": "92c94d6b", + "id": "043375de", "metadata": { "collapsed": false, "editable": true @@ -1599,7 +1821,7 @@ }, { "cell_type": "markdown", - "id": "a8a5fe0b", + "id": "9b6d7239", "metadata": { "editable": true }, @@ -1613,7 +1835,7 @@ { "cell_type": "code", "execution_count": 20, - "id": "92d63386", + "id": "27096756", "metadata": { "collapsed": false, "editable": true @@ -1630,7 +1852,7 @@ }, { "cell_type": "markdown", - "id": "cb10725a", + "id": "d16b971c", "metadata": { "editable": true }, @@ -1646,7 +1868,7 @@ { "cell_type": "code", "execution_count": 21, - "id": "73ad155d", + "id": "2235ab2b", "metadata": { "collapsed": false, "editable": true @@ -1675,7 +1897,7 @@ { "cell_type": "code", "execution_count": 22, - "id": "35f60297", + "id": "5c2128f7", "metadata": { "collapsed": false, "editable": true @@ -1698,7 +1920,7 @@ { "cell_type": "code", "execution_count": 23, - "id": "7241e7aa", + "id": "68a53f68", "metadata": { "collapsed": false, "editable": true @@ -1711,7 +1933,7 @@ }, { "cell_type": "markdown", - "id": "2b4e56f0", + "id": "e1542e1a", "metadata": { "editable": true }, @@ -1726,7 +1948,7 @@ { "cell_type": "code", "execution_count": 24, - "id": "a13ac5ce", + "id": "5c6bf1f1", "metadata": { "collapsed": false, "editable": true @@ -1753,7 +1975,7 @@ }, { "cell_type": "markdown", - "id": "5c98bf5c", + "id": "fb91389b", "metadata": { "editable": true }, @@ -1768,7 +1990,7 @@ { "cell_type": "code", "execution_count": 25, - "id": "3db9513c", + "id": "1b67c811", "metadata": { "collapsed": false, "editable": true @@ -1783,7 +2005,7 @@ }, { "cell_type": "markdown", - "id": "9b6f10fd", + "id": "cfe9d355", "metadata": { "editable": true }, @@ -1791,6 +2013,337 @@ "A pretty cool result! We see that our generator indeed has learned a\n", "distribution which qualitatively looks a whole lot like the MNIST dataset." ] + }, + { + "cell_type": "markdown", + "id": "dbd85047", + "metadata": { + "editable": true + }, + "source": [ + "## Using the KL divergence\n", + "\n", + "In practice, for most $\\boldsymbol{h}$, $p(\\boldsymbol{x}\\vert \\boldsymbol{h}; \\boldsymbol{\\Theta})$\n", + "will be nearly zero, and hence contribute almost nothing to our\n", + "estimate of $p(\\boldsymbol{x})$.\n", + "\n", + "The key idea behind the variational autoencoder is to attempt to\n", + "sample values of $\\boldsymbol{h}$ that are likely to have produced $\\boldsymbol{x}$,\n", + "and compute $p(\\boldsymbol{x})$ just from those.\n", + "\n", + "This means that we need a new function $Q(\\boldsymbol{h}|\\boldsymbol{x})$ which can\n", + "take a value of $\\boldsymbol{x}$ and give us a distribution over $\\boldsymbol{h}$\n", + "values that are likely to produce $\\boldsymbol{x}$. Hopefully the space of\n", + "$\\boldsymbol{h}$ values that are likely under $Q$ will be much smaller than\n", + "the space of all $\\boldsymbol{h}$'s that are likely under the prior\n", + "$p(\\boldsymbol{h})$. This lets us, for example, compute $E_{\\boldsymbol{h}\\sim\n", + "Q}p(\\boldsymbol{x}\\vert \\boldsymbol{h})$ relatively easily. Note that we drop\n", + "$\\boldsymbol{\\Theta}$ from here and for notational simplicity.\n", + "\n", + "However, if $\\boldsymbol{h}$ is sampled from an arbitrary distribution with\n", + "PDF $Q(\\boldsymbol{h})$, which is not $\\mathcal{N}(0,I)$, then how does that\n", + "help us optimize $p(\\boldsymbol{x})$? The first thing we need to do is relate\n", + "$E_{\\boldsymbol{h}\\sim Q}P(\\boldsymbol{x}\\vert \\boldsymbol{h})$ and $p(\\boldsymbol{x})$. We will see where $Q$ comes from later.\n", + "\n", + "The relationship between $E_{\\boldsymbol{h}\\sim Q}p(\\boldsymbol{x}\\vert \\boldsymbol{h})$ and $p(\\boldsymbol{x})$ is one of the cornerstones of variational Bayesian methods.\n", + "We begin with the definition of Kullback-Leibler divergence (KL divergence or $\\mathcal{D}$) between $p(\\boldsymbol{h}\\vert \\boldsymbol{x})$ and $Q(\\boldsymbol{h})$, for some arbitrary $Q$ (which may or may not depend on $\\boldsymbol{x}$):" + ] + }, + { + "cell_type": "markdown", + "id": "2477d441", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\mathcal{D}\\left[Q(z)\\|P(z|X)\\right]=E_{z\\sim Q}\\left[\\log Q(z) - \\log P(z|X) \\right].\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "46ca3298", + "metadata": { + "editable": true + }, + "source": [ + "We can get both $p(\\boldsymbol{x})$ and $p(\\boldsymbol{x}\\vert \\boldsymbol{h})$ into this equation by applying Bayes rule to $p(\\boldsymbol{h}|\\boldsymbol{x})$" + ] + }, + { + "cell_type": "markdown", + "id": "b024079a", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\mathcal{D}\\left[Q(z)\\|P(z|X)\\right]=E_{z\\sim Q}\\left[\\log Q(z) - \\log P(X|z) - \\log P(z) \\right] + \\log P(X).\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "57cf294b", + "metadata": { + "editable": true + }, + "source": [ + "Here, $\\log P(X)$ comes out of the expectation because it does not depend on $z$.\n", + "Negating both sides, rearranging, and contracting part of $E_{z\\sim Q}$ into a KL-divergence terms yields:" + ] + }, + { + "cell_type": "markdown", + "id": "6d8bf875", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\log P(X) - \\mathcal{D}\\left[Q(z)\\|P(z|X)\\right]=E_{z\\sim Q}\\left[\\log P(X|z) \\right] - \\mathcal{D}\\left[Q(z)\\|P(z)\\right].\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "76456ab4", + "metadata": { + "editable": true + }, + "source": [ + "By Bayes rule, we have:" + ] + }, + { + "cell_type": "markdown", + "id": "1924f38e", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "E_{z\\sim Q}\\left[\\log P(Y_i|z,X_i)\\right]=E_{z\\sim Q}\\left[\\log P(z|Y_i,X_i) - \\log P(z|X_i) + \\log P(Y_i|X_i) \\right]\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "8fe3c445", + "metadata": { + "editable": true + }, + "source": [ + "Rearranging the terms and subtracting $E_{z\\sim Q}\\log Q(z)$ from both sides:" + ] + }, + { + "cell_type": "markdown", + "id": "c5ef147e", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\begin{array}{c}\n", + "\\log P(Y_i|X_i) - E_{z\\sim Q}\\left[\\log Q(z)-\\log P(z|X_i,Y_i)\\right]=\\hspace{10em}\\\\\n", + "\\hspace{10em}E_{z\\sim Q}\\left[\\log P(Y_i|z,X_i)+\\log P(z|X_i)-\\log Q(z)\\right]\n", + "\\end{array}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "cd28fa2e", + "metadata": { + "editable": true + }, + "source": [ + "Note that $X$ is fixed, and $Q$ can be \\textit{any} distribution, not\n", + "just a distribution which does a good job mapping $X$ to the $z$'s\n", + "that can produce $X$.\n", + "\n", + "Since we are interested in inferring $P(X)$, it makes sense to\n", + "construct a $Q$ which \\textit{does} depend on $X$, and in particular,\n", + "one which makes $\\mathcal{D}\\left[Q(z)\\|P(z|X)\\right]$ small:" + ] + }, + { + "cell_type": "markdown", + "id": "0f8ac050", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\log P(X) - \\mathcal{D}\\left[Q(z|X)\\|P(z|X)\\right]=E_{z\\sim Q}\\left[\\log P(X|z) \\right] - \\mathcal{D}\\left[Q(z|X)\\|P(z)\\right].\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "966ded1b", + "metadata": { + "editable": true + }, + "source": [ + "Hence, during training, it makes sense to choose a $Q$ which will make\n", + "$E_{z\\sim Q}[\\log Q(z)-$ $\\log P(z|X_i,Y_i)]$ (a\n", + "$\\mathcal{D}$-divergence) small, such that the right hand side is a\n", + "close approximation to $\\log P(Y_i|X_i)$.\n", + "\n", + "This equation serves as the core of the variational autoencoder, and\n", + "it's worth spending some time thinking about what it says In two\n", + "sentences, the left hand side has the quantity we want to maximize:\n", + "$\\log P(X)$ (plus an error term, which makes $Q$ produce $z$'s that\n", + "can reproduce a given $X$; this term will become small if $Q$ is\n", + "high-capacity). The right hand side is something we can optimize via\n", + "stochastic gradient descent given the right choice of $Q$ (although it\n", + "may not be obvious yet how).\n", + "\n", + "So how can we perform stochastic gradient descent?\n", + "\n", + "First we need to be a bit more specific about the form that $Q(z|X)$\n", + "will take. The usual choice is to say that\n", + "$Q(z|X)=\\mathcal{N}(z|\\mu(X;\\vartheta),\\Sigma(X;\\vartheta))$, where\n", + "$\\mu$ and $\\Sigma$ are arbitrary deterministic functions with\n", + "parameters $\\vartheta$ that can be learned from data (we will omit\n", + "$\\vartheta$ in later equations). In practice, $\\mu$ and $\\Sigma$ are\n", + "again implemented via neural networks, and $\\Sigma$ is constrained to\n", + "be a diagonal matrix. The name variational \"autoencoder\" comes from\n", + "the fact that $\\mu$ and $\\Sigma$ are \"encoding\" $X$ into the latent\n", + "space $z$. The advantages of this choice are computational, as they\n", + "make it clear how to compute the right hand side. The last\n", + "term---$\\mathcal{D}\\left[Q(z|X)\\|P(z)\\right]$---is now a KL-divergence\n", + "between two multivariate Gaussian distributions, which can be computed\n", + "in closed form as:" + ] + }, + { + "cell_type": "markdown", + "id": "d4e8ede5", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\begin{array}{c}\n", + " \\mathcal{D}[\\mathcal{N}(\\mu_0,\\Sigma_0) \\| \\mathcal{N}(\\mu_1,\\Sigma_1)] = \\hspace{20em}\\\\\n", + " \\hspace{5em}\\frac{ 1 }{ 2 } \\left( \\mathrm{tr} \\left( \\Sigma_1^{-1} \\Sigma_0 \\right) + \\left( \\mu_1 - \\mu_0\\right)^\\top \\Sigma_1^{-1} ( \\mu_1 - \\mu_0 ) - k + \\log \\left( \\frac{ \\det \\Sigma_1 }{ \\det \\Sigma_0 } \\right) \\right)\n", + "\\end{array}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "4d1d0d07", + "metadata": { + "editable": true + }, + "source": [ + "where $k$ is the dimensionality of the distribution. In our case, this simplifies to:" + ] + }, + { + "cell_type": "markdown", + "id": "c9edc7c3", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\begin{array}{c}\n", + " \\mathcal{D}[\\mathcal{N}(\\mu(X),\\Sigma(X)) \\| \\mathcal{N}(0,I)] = \\hspace{20em}\\\\\n", + "\\hspace{6em}\\frac{ 1 }{ 2 } \\left( \\mathrm{tr} \\left( \\Sigma(X) \\right) + \\left( \\mu(X)\\right)^\\top ( \\mu(X) ) - k - \\log\\det\\left( \\Sigma(X) \\right) \\right).\n", + "\\end{array}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "1eb68e03", + "metadata": { + "editable": true + }, + "source": [ + "The first term on the right hand side is a bit more tricky.\n", + "We could use sampling to estimate $E_{z\\sim Q}\\left[\\log P(X|z) \\right]$, but getting a good estimate would require passing many samples of $z$ through $f$, which would be expensive.\n", + "Hence, as is standard in stochastic gradient descent, we take one sample of $z$ and treat $\\log P(X|z)$ for that $z$ as an approximation of $E_{z\\sim Q}\\left[\\log P(X|z) \\right]$.\n", + "After all, we are already doing stochastic gradient descent over different values of $X$ sampled from a dataset $D$.\n", + "The full equation we want to optimize is:" + ] + }, + { + "cell_type": "markdown", + "id": "a5b7d69d", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "\\begin{array}{c}\n", + " E_{X\\sim D}\\left[\\log P(X) - \\mathcal{D}\\left[Q(z|X)\\|P(z|X)\\right]\\right]=\\hspace{16em}\\\\\n", + "\\hspace{10em}E_{X\\sim D}\\left[E_{z\\sim Q}\\left[\\log P(X|z) \\right] - \\mathcal{D}\\left[Q(z|X)\\|P(z)\\right]\\right].\n", + "\\end{array}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "5f06b6bd", + "metadata": { + "editable": true + }, + "source": [ + "If we take the gradient of this equation, the gradient symbol can be moved into the expectations.\n", + "Therefore, we can sample a single value of $X$ and a single value of $z$ from the distribution $Q(z|X)$, and compute the gradient of:" + ] + }, + { + "cell_type": "markdown", + "id": "6bb2eda1", + "metadata": { + "editable": true + }, + "source": [ + "\n", + "
\n", + "\n", + "$$\n", + "\\begin{equation}\n", + " \\log P(X|z)-\\mathcal{D}\\left[Q(z|X)\\|P(z)\\right].\n", + "\\label{_auto1} \\tag{1}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "db3d86d0", + "metadata": { + "editable": true + }, + "source": [ + "We can then average the gradient of this function over arbitrarily many samples of $X$ and $z$, and the result converges to the gradient.\n", + "\n", + "There is, however, a significant problem\n", + "$E_{z\\sim Q}\\left[\\log P(X|z) \\right]$ depends not just on the parameters of $P$, but also on the parameters of $Q$.\n", + "\n", + "In order to make VAEs work, it is essential to drive $Q$ to produce codes for $X$ that $P$ can reliably decode." + ] + }, + { + "cell_type": "markdown", + "id": "fabec023", + "metadata": { + "editable": true + }, + "source": [ + "$$\n", + "E_{X\\sim D}\\left[E_{\\epsilon\\sim\\mathcal{N}(0,I)}[\\log P(X|z=\\mu(X)+\\Sigma^{1/2}(X)*\\epsilon)]-\\mathcal{D}\\left[Q(z|X)\\|P(z)\\right]\\right].\n", + "$$" + ] } ], "metadata": {}, diff --git a/doc/pub/week13/pdf/week13.pdf b/doc/pub/week13/pdf/week13.pdf index 040ac073e52ae1bb1ddf96e9d030f96a2464c879..a9a9429e7c477238307c8c86c74a6592f030a993 100644 GIT binary patch delta 227164 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

}B*S$$p|fJ&}zC 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�A^zt(iiy-zEueeJ=)(zuA% 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%0D1QX9%NNb7Yt6Ov>KGC6XBST8 zC4phntDYLH&C;F+OSowd$HbO#3$pQrV0oS#;ev2`(O<6Z5c4)@;eE}(qv~-!s96N`o8CP;h_)XFRRTI{>d+FMBvn+?vwF2mh-n8j0++^vdHr`)PH85 zjjDBq&aU)~z%vTcR@9%?H&NeoVhj+r$n}1)&teW`WWzfZzcQz-TfF?Kh$kSNJ)@AK zPs~`+(TK4L%Q<>m%~NKlwm@)a5_=a`OKa0Prob+J2SnjjYKba!Qr|8kRH*lIw4hir zK0R%^cJ)VJmUa#ndTz@P&*PR)f zKXlIFQ2G{$?J0&cp*=#`tGFp;;6ExOBtr7v2IZk$7@@x`eiL9xf6(L>N8+BH&qP}p zo$C6hjp3X{xp@-0oF(2bn=lBum`_ss*ub<{=o%6J7WMA~>@#{)b-L)U$d{3>s+YGi z;<2*5Wl6b7AMLE-77$4NT7SRie6I|crg5=xa-2uX?yYM%wO4T;KsdMN=(B6B9ZfuW zhk0i-pXPQC>8Z5!3r!_XOp3e*8`Qoy)r67^_zgaU;KILRyxDxDLU`wT6ij}d4FLs+6>BL((YTu>6jsWfyB9A1DrpEiE|KwAr7-W*ewe^}=vizBmT}(}h`DJZEonS;#h=?d zkshS7dlP}m0*G(C)PKEg`wTl4qJ{MqR!XZ#+|JYQB~}S*-jbYOaZPG%l{3hl!91!4O(eE2P!M+bQ

2szSB?OkP`-BwzR~yCnTVbXdW#n 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 delta 180307 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 z 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%0D9J;Nn( zTHSv^s0;7>52-3p)k>3~nYteTD?IIkp!wI7d>!CGKgrH>fVoYGP-oV>w{&puuGck} zG0Uidq4j-z!c~5!+XX>fsK*cxwugM`RdXA`YJ&ec58by$z(Sh>bMEZ3ZONsoRr~<9 z0z3G*7B@?((dpx^jPMv*$+3n+;6ENf$=iQ#lWv7SI1*wkD%-F(baGzI=bc0@9ps=t zPWXoF_jHH)ncJ}KMWFOZGO#pDHbuu-@AXrR{Wl#LVM?h1*|6hrb=&3as(g-JalAtp z%2>6@+A97$+}7rzy(1x#eHFu8(Jjm<;!TcjUHF3I_LX;TKtO86Ij06*yZ)hfO2vP( zz)wCaEb4u&Y}GUH0b$i6;Oqha2vo$(mIKrpB+T$@d3my;cx=mpR)iz=f-gs*T9)RV z`V5Sb5G%-D{dmrCv=cdObUP{)MmuOO8?B@Lt4*n*ZQz+*NG(f!bV{A-sGnl@UH7Ds zhh!S}O0xIY1(>JE>nM$8CkERc$z)9M&R{0-pu9Nki&DE~MC>?30kf36{Q+dzp7k%XHK z^cTE8n5|!J0fSWK^w(4;Z^guj2XLB$bE zX6nNynV3j)?D5u(Jg)mVN$`7f^n!7M%e0K3X2e|vl4y<0~=_t(?8P3%t?CkG=dP&RD4hG~V2BE!iV zj+$=DX@4wdz-^#dF2f)iVFbD*qT=o$goceM}{$ZZRry~;dvkPM-# z9~J1wIlOvUA*%P)2F@x~JJMK+hJ?T1QNzEzOV>rS`l;jK^4hwSIf(DC3A?}MSof*otO z#m7_hW6wxl>Cb%ri>mMVLW@sXTY)qk$Z9hkM;$0{9Y^{<4@8YTX9y=P3h0Fc+P4$v z48DBEk`Iq`hdh6piL}3oPecK`Lo$e~&f|Pw6U@0EEN_BmL?=rbPL?sapH^q+J!zQWjhv9BGfy(I z=b?~it~;yjyeSOLR!%#cH18c``ToQ|&d)ngcskYj8ybH~p{Z7Cal)^--V?JGrV6kj z_AXLmdY;JBDj4*G=6@h3{r_ho3A0kxqE);D z1UI?bXz$ei)`t=1)FpcM|6(kTpmhUXw8?m2mcOjd-g5tYRTUAFW2N>5L*-fhgdmo=O^Un z1&;Y{O~sG8M!I378Gv+1do4|+1cWE5v(rGB@tH+)wru<1p=|(%P9>zHy2X<+{0`us!?oC0QFgF#J z-bc(s$0(AqyiIPKWu76|26h!+>mF%Q9<#lVtfa+&$P8+1)tK5L50pWVEJdRvbeOt* zEG}}wfiPS3&T-A;-xdXh*@ts{`7}}3D%Qt0OwjR6dX|;h{sN4{j9+-bc zf)Y^>)g)kvubrXNyOl0u zZrMb#6tzEpR;~vj6q{>~(g|`#A0EBDS%-~`t~FgGq}Ihz zKGy1ieQamv8Pby@F!~hI3C?QC@-`26=~S{XlZb18tX<&8G5QE&9(uX%WR|@Imb>Hm zUi16AzJMKYP0K8+XJ-qJron%Wr+mn|mJb<;@w7-}p=(-FQU5Ad7b|i|uJ_13;jmv_ z>NK{Mb~sClQb;eNVE{9n*BXz%0D-gsli6E=bcm*t^vR_!@`5! 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

EF>2!R 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 diff --git a/doc/src/week13/week13.do.txt b/doc/src/week13/week13.do.txt index b3eaafe4..17d7d0f3 100644 --- a/doc/src/week13/week13.do.txt +++ b/doc/src/week13/week13.do.txt @@ -14,13 +14,15 @@ o Generative Adversarial Networks (GANs) #o "Video of lecture":"https://youtu.be/0VBmdP_iCzA" #o "Whiteboard notes":"https://github.com/CompPhysics/AdvancedMachineLearning/blob/main/doc/HandwrittenNotes/NotesApr262023.pdf" !eblock -!bblock Readings -o Reading recommendation: Goodfellow et al chapter 20.10-20-14 + +!split +===== Readings ===== +!bblock +o Reading recommendation: Goodfellow et al, for VAEs and GANs see sections 20.10-20.11 o To create Boltzmann machine using Keras, see Babcock and Bali chapter 4, see URL:"https://github.com/PacktPublishing/Hands-On-Generative-AI-with-Python-and-TensorFlow-2/blob/master/Chapter_4/models/rbm.py" o See Foster, chapter 7 on energy-based models at URL:"https://github.com/davidADSP/Generative_Deep_Learning_2nd_Edition/tree/main/notebooks/07_ebm/01_ebm" !eblock - #todo: add about Langevin sampling, see https://www.lyndonduong.com/sgmcmc/ # add material about VAEs # add code on RBMs @@ -157,7 +159,10 @@ See discussions in Foster, chapter 7 on energy-based models at URL:"https://gith That notebook is based on a recent article by Du and Mordatch, _Implicit generation and modeling with energy-based models_, see URL:"https://arxiv.org/pdf/1903.08689.pdf." +!split +===== Langevin sampling ===== +_Note_: Notes to be added !split ===== Theory of Variational Autoencoders ===== @@ -188,7 +193,7 @@ the final ouput \] !et -The goal is to minimize the construction error. +The goal is to minimize the construction error, often done by optimizing the means squared error. !split ===== Schematic image of an Autoencoder ===== @@ -197,12 +202,100 @@ FIGURE: [figures/ae1.png, width=700 frac=1.0] !split -===== Mathematics of VAEs ===== +===== Mathematics of Variational Autoencoders ===== + +We have defined earlier a probability (marginal) distribution with hidden variables $\bm{h}$ and parameters $\bm{\Theta}$ as +!bt +\[ +p(\bm{x};\bm{\Theta}) = \int d\bm{h}p(\bm{x},\bm{h};\bm{\Theta}), +\] +!et +for continuous variables $\bm{h}$ and +!bt +\[ +p(\bm{x};\bm{\Theta}) = \sum_{\bm{h}}p(\bm{x},\bm{h};\bm{\Theta}), +\] +!et +for discrete stochastic events $\bm{h}$. The variables $\bm{h}$ are normally called the _latent variables_ in the theory of autoencoders. We will also call then for that here. + +!split +===== Using the conditional probability ===== + +Using the the definition of the conditional probabilities $p(\bm{x}\vert\bm{h};\bm{\Theta})$, $p(\bm{h}\vert\bm{x};\bm{\Theta})$ and +and the prior $p(\bm{h})$, we can rewrite the above equation as +!bt +\[ +p(\bm{x};\bm{\Theta}) = \sum_{\bm{h}}p(\bm{x}\vert\bm{h};\bm{\Theta})p(\bm{h}, +\] +!et -More material will be added here +which allows us to make the dependence of $\bm{x}$ on $\bm{h}$ +explicit by using the law of total probability. The intuition behind +this approach for finding the marginal probability for $\bm{x}$ is to +optimize the above equations with respect to the parameters +$\bm{\Theta}$. This is done normally by maximizing the probability, +the so-called maximum-likelihood approach discussed earlier. !split -===== Kullback-Leibler relative entropy (to be corrected) ===== +===== VAEs versus autoencoders ===== + +This trained probability is assumed to be able to produce similar +samples as the input. In VAEs it is then common to compare via for +example the mean-squared error or the cross-entropy the predicted +values with the input values. Compared with autoencoders, we are now +producing a probability instead of a functions which mimicks the +input. + +In VAEs, the choice of this output distribution is often Gaussian, +meaning that the conditional probability is +!bt +\[ +p(\bm{x}\vert\bm{h};\bm{\Theta})=N(\bm{x}\vert f(\bm{h};\bm{\Theta}), \sigma^2\times \bm{I}), +\] +!et +with mean value given by the function $f(\bm{h};\bm{\Theta})$ and a +diagonal covariance matrix multiplied by a parameter $\sigma^2$ which +is treated as a hyperparameter. + +!split +===== Gradient descent ===== + +By having a Gaussian distribution, we can use gradient descent (or any +other optimization technique) to increase $p(\bm{x};\bm{\Theta})$ by +making $f(\bm{h};\bm{\Theta})$ approach $\bm{x}$ for some $\bm{h}$, +gradually making the training data more likely under the generative +model. The important property is simply that the marginal probability +can be computed, and it is continuous in $\bm{\Theta}$.. + +!split +===== Are VAEs just modified autoencoders? ===== + +The mathematical basis of VAEs actually has relatively little to do +with classical autoencoders, for example the sparse autoencoders or +denoising autoencoders discussed earlier. + +VAEs approximately maximize the probability equation discussed +above. They are called autoencoders only because the final training +objective that derives from this setup does have an encoder and a +decoder, and resembles a traditional autoencoder. Unlike sparse +autoencoders, there are generally no tuning parameters analogous to +the sparsity penalties. And unlike sparse and denoising autoencoders, +we can sample directly from $p(\bm{x})$ without performing Markov +Chain Monte Carlo. + + +!split +===== Training VAEs ===== + +To solve the integral or sum for $p(\bm{x})$, there are two problems +that VAEs must deal with: how to define the latent variables $\bm{h}$, +that is decide what information they represent, and how to deal with +the integral over $\bm{h}$. VAEs give a definite answer to both. + + + +!split +===== Kullback-Leibler relative entropy (notation to be updated) ===== When the goal of the training is to approximate a probability distribution, as it is in generative modeling, another relevant @@ -320,7 +413,12 @@ approximate is not the _true_ distribution we wish to estimate, it is limited to the training data. Hence, in unsupervised training as well it is important to prevent overfitting to the training data. Thus it is common to add regularizers to the cost function in the same -manner as we discussed for say linear regression. +manner as discussed for say linear regression. + + +!split +===== Back to VAEs ===== + !split @@ -530,9 +628,9 @@ determines the reward for the discriminator, while the generator gets the conjugate reward !bt -\begin{equation} +\[ -v(\theta^{(g)}, \theta^{(d)}) -\end{equation} +\] !et @@ -1034,222 +1132,168 @@ distribution which qualitatively looks a whole lot like the MNIST dataset. !split -===== Marginal distribution again ===== +===== Using the KL divergence ===== -We have defined earlier a probability (marginal) distribution with hidden variables $\bm{h}$ and parameters $\bm{\Theta}$ as +In practice, for most $\bm{h}$, $p(\bm{x}\vert \bm{h}; \bm{\Theta})$ +will be nearly zero, and hence contribute almost nothing to our +estimate of $p(\bm{x})$. + +The key idea behind the variational autoencoder is to attempt to +sample values of $\bm{h}$ that are likely to have produced $\bm{x}$, +and compute $p(\bm{x})$ just from those. + +This means that we need a new function $Q(\bm{h}|\bm{x})$ which can +take a value of $\bm{x}$ and give us a distribution over $\bm{h}$ +values that are likely to produce $\bm{x}$. Hopefully the space of +$\bm{h}$ values that are likely under $Q$ will be much smaller than +the space of all $\bm{h}$'s that are likely under the prior +$p(\bm{h})$. This lets us, for example, compute $E_{\bm{h}\sim +Q}p(\bm{x}\vert \bm{h})$ relatively easily. Note that we drop +$\bm{\Theta}$ from here and for notational simplicity. + + + +However, if $\bm{h}$ is sampled from an arbitrary distribution with +PDF $Q(\bm{h})$, which is not $\mathcal{N}(0,I)$, then how does that +help us optimize $p(\bm{x})$? The first thing we need to do is relate +$E_{\bm{h}\sim Q}P(\bm{x}\vert \bm{h})$ and $p(\bm{x})$. We will see where $Q$ comes from later. + +The relationship between $E_{\bm{h}\sim Q}p(\bm{x}\vert \bm{h})$ and $p(\bm{x})$ is one of the cornerstones of variational Bayesian methods. +We begin with the definition of Kullback-Leibler divergence (KL divergence or $\mathcal{D}$) between $p(\bm{h}\vert \bm{x})$ and $Q(\bm{h})$, for some arbitrary $Q$ (which may or may not depend on $\bm{x}$): !bt \[ -p(\bm{x};\bm{\Theta}) = \int d\bm{h}p(\bm{x},\bm{h};\bm{\Theta}), + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(z|X) \right]. \] !et -for continuous variables $\bm{h}$ and + + +We can get both $p(\bm{x})$ and $p(\bm{x}\vert \bm{h})$ into this equation by applying Bayes rule to $p(\bm{h}|\bm{x})$ !bt \[ -p(\bm{x};\bm{\Theta}) = \sum_{\bm{h}}p(\bm{x},\bm{h};\bm{\Theta}), + \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(X|z) - \log P(z) \right] + \log P(X). \] !et -for discrete stochastic events $\bm{h}$. The variables $\bm{h}$ are normally called the _latent variables_ in the theory of autoencoders. We will also call then for that here. - -!split -===== Using the conditional probability ===== -Using the the definition of the conditional probabilities $p(\bm{x}\vert\bm{h};\bm{\Theta})$, $p(\bm{h}\vert\bm{x};\bm{\Theta})$ and -and the prior $p{\bm{h})$, we can rewrite the above equation as +Here, $\log P(X)$ comes out of the expectation because it does not depend on $z$. +Negating both sides, rearranging, and contracting part of $E_{z\sim Q}$ into a KL-divergence terms yields: !bt \[ -p(\bm{x};\bm{\Theta}) = \sum_{\bm{h}}p(\bm{x}\vert\bm{h};\bm{\Theta})p(\bm{h}, +\log P(X) - \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z)\|P(z)\right]. \] !et - -which allows us to make the dependence of $\bm{x}$ on $\bm{h}$ -explicit by using the law of total probability. The intuition behind -this approach for finding the marginal probability for $\bm{x}$ is to -optimize the above equations with respect to the parameters -$\bm{\Theta}$. This is done normally by maximizing the probability, -the so-called maximum-likelihood approach discussed earlier. - -!split -===== VAEs versus autoencoders ===== - -This trained probability is assumed to be able to produce similar -samples as the input. In VAEs it is then common to compare via for -example the mean-squared error or the cross-entropy the predicted -values with the input values. Compared with autoencoders, we are now -producing a probability instead of a functions which mimicks the -input. - -In VAEs, the choice of this output distribution is often Gaussian, -meaning that the conditional probability is +By Bayes rule, we have: !bt \[ -p(\bm{x}\vert\bm{h};\bm{\Theta})=N(\bm{x}\vert f(\bm{h};\bm{\Theta}), \sigma^2\times \bm{I}), +E_{z\sim Q}\left[\log P(Y_i|z,X_i)\right]=E_{z\sim Q}\left[\log P(z|Y_i,X_i) - \log P(z|X_i) + \log P(Y_i|X_i) \right] \] !et -with mean value given by the function $f(\bm{h};\bm{\Theta})$ and a -diagonal covariance matrix multiplied by a parameter $\sigma^2$ which -is treated as a hyperparameter. - -!split -====== Gradient descent ===== -By having a Gaussian distribution, we can use gradient descent (or any -other optimization technique) to increase $p(\bm{x};\bm{\Theta})) by -making $f(\bm{h}; \bm{\Theta})$ approach $bm{x}$ for some $\bm{h}$, -gradually making the training data more likely under the generative -model. The important property is simply that the marginal probability -can be computed, and is continuous in $\bm{\Theta}$.. +Rearranging the terms and subtracting $E_{z\sim Q}\log Q(z)$ from both sides: +!bt +\[ +\begin{array}{c} +\log P(Y_i|X_i) - E_{z\sim Q}\left[\log Q(z)-\log P(z|X_i,Y_i)\right]=\hspace{10em}\\ +\hspace{10em}E_{z\sim Q}\left[\log P(Y_i|z,X_i)+\log P(z|X_i)-\log Q(z)\right] +\end{array} +\] +!et +Note that $X$ is fixed, and $Q$ can be \textit{any} distribution, not +just a distribution which does a good job mapping $X$ to the $z$'s +that can produce $X$. -!split -===== Are VAEs just modified autoencoders? ===== -The mathematical basis of VAEs actually has relatively little to do -with classical autoencoders, for example the sparse autoencoders or -denoising autoencoders discussed earlier. +Since we are interested in inferring $P(X)$, it makes sense to +construct a $Q$ which \textit{does} depend on $X$, and in particular, +one which makes $\mathcal{D}\left[Q(z)\|P(z|X)\right]$ small: +!bt +\[ +\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]. +\] +!et -VAEs approximately maximize -the probability equation discussed above. They are called -autoencoders only because the final training objective that -derives from this setup does have an encoder and a decoder, and -resembles a traditional autoencoder. Unlike sparse autoencoders, there -are generally no tuning parameters analogous to the sparsity -penalties. And unlike sparse and denoising autoencoders, we can sample directly from $p(\bm{x})$ -without performing Markov Chain Monte Carlo. - -To solve the integral or sum for $p(\bm{x})$, there are two problems that VAEs must deal with: how to define the latent variables $\bm{h}$, that is decide what information they represent, and how to deal with the integral over $\bm{h}$. -VAEs give a definite answer to both. - - -In practice, for most $z$, $P(X|z)$ will be nearly zero, and hence contribute almost nothing to our estimate of $P(X)$. - -The key idea behind the variational autoencoder is to attempt to sample values of $z$ that are likely to have produced $X$, and compute $P(X)$ just from those. -This means that we need a new function $Q(z|X)$ which can take a value of $X$ and give us a distribution over $z$ values that are likely to produce $X$. -Hopefully the space of $z$ values that are likely under $Q$ will be much smaller than the space of all $z$'s that are likely under the prior $P(z)$. -This lets us, for example, compute $E_{z\sim Q}P(X|z)$ relatively easily. -%Given that we are sampling $z$ from some distribution other than $\mathcal{N}(0,I)$, however, the math becomes a bit less straightforward. -%Hence, the variational ``autoencoder'' framework first samples $z$ from some distribution different from $\mathcal{N}(0,1)$ (specifically, a distribution of $z$ values which are likely to give rise to $Y_i$ given $X_i$), and uses that sample to approximate $P(Y|X)$ in the following way. -However, if $z$ is sampled from an arbitrary distribution with PDF $Q(z)$, which is not $\mathcal{N}(0,I)$, then how does that help us optimize $P(X)$? -The first thing we need to do is relate $E_{z\sim Q}P(X|z)$ and $P(X)$. -We'll see where $Q$ comes from later. - -The relationship between $E_{z\sim Q}P(X|z)$ and $P(X)$ is one of the cornerstones of variational Bayesian methods. -We begin with the definition of Kullback-Leibler divergence (KL divergence or $\mathcal{D}$) between $P(z|X)$ and $Q(z)$, for some arbitrary $Q$ (which may or may not depend on $X$): -\begin{equation} - \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(z|X) \right]. -\label{eq:kl} -\end{equation} -\noindent We can get both $P(X)$ and $P(X|z)$ into this equation by applying Bayes rule to $P(z|X)$: -\begin{equation} - \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log Q(z) - \log P(X|z) - \log P(z) \right] + \log P(X). -\end{equation} -\noindent Here, $\log P(X)$ comes out of the expectation because it does not depend on $z$. Negating both sides, rearranging, and contracting part of $E_{z\sim Q}$ into a KL-divergence terms yields: -\begin{equation} - \log P(X) - \mathcal{D}\left[Q(z)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z)\|P(z)\right]. -\end{equation} -%By Bayes rule, we have: -%\vspace{-0.05in} -%\begin{equation} -% E_{z\sim Q}\left[\log P(Y_i|z,X_i)\right]=E_{z\sim Q}\left[\log P(z|Y_i,X_i) - \log P(z|X_i) + \log P(Y_i|X_i) \right] -%\end{equation} -%\vspace{-0.05in} -%\noindent Rearranging the terms and subtracting $E_{z\sim Q}\log Q(z)$ from both sides: -%\vspace{-0.05in} -%\begin{equation} -%\begin{array}{c} -% \log P(Y_i|X_i) - E_{z\sim Q}\left[\log Q(z)-\log P(z|X_i,Y_i)\right]=\hspace{10em}\\ -% \hspace{10em}E_{z\sim Q}\left[\log P(Y_i|z,X_i)+\log P(z|X_i)-\log Q(z)\right] -%\end{array} -%\end{equation} -%\vspace{-0.05in} -\noindent Note that $X$ is fixed, and $Q$ can be \textit{any} distribution, not just a distribution which does a good job mapping $X$ to the $z$'s that can produce $X$. -Since we're interested in inferring $P(X)$, it makes sense to construct a $Q$ which \textit{does} depend on $X$, and in particular, one which makes $\mathcal{D}\left[Q(z)\|P(z|X)\right]$ small: -\begin{equation} - \log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]=E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]. - \label{eq:variational} -\end{equation} -%Hence, during training, it makes sense to choose a $Q$ which will make $E_{z\sim Q}[\log Q(z)-$ -%$\log P(z|X_i,Y_i)]$ (a $\mathcal{D}$-divergence) small, such that the right hand side is a close approximation to $\log P(Y_i|X_i)$. -\noindent This equation serves as the core of the variational autoencoder, and it's worth spending some time thinking about what it says\footnote{ -Historically, this math (particularly Equation~\ref{eq:variational}) was known long before VAEs. -For example, Helmholtz Machines~\cite{dayan1995helmholtz} (see Equation 5) use nearly identical mathematics, with one crucial difference. -The integral in our expectations is replaced with a sum in Dayan et al.~\cite{dayan1995helmholtz}, because Helmholtz Machines assume a discrete distribution for the latent variables. -This choice prevents the transformations that make gradient descent tractable in VAEs. -}. -In two sentences, the left hand side has the quantity we want to maximize: $\log P(X)$ (plus an error term, which makes $Q$ produce $z$'s that can reproduce a given $X$; this term will become small if $Q$ is high-capacity). -The right hand side is something we can optimize via stochastic gradient descent given the right choice of $Q$ (although it may not be obvious yet how). -Note that the framework---in particular, the right hand side of Equation~\ref{eq:variational}---has suddenly taken a form which looks like an autoencoder, since $Q$ is ``encoding'' $X$ into $z$, and $P$ is ``decoding'' it to reconstruct $X$. -We'll explore this connection in more detail later. -%That is, we have solved our problem of sampling $z$ by training a distribution $Q$ to predict which values of $z$ are likely to produce $X$, and not considering the rest. %we can optimize $P(X)$ in our model just by optimizing the right hand side of this equation! - -Now for a bit more detail on Equatinon~\ref{eq:variational}. -Starting with the left hand side, we are maximizing $\log P(X)$ while simultaneously minimizing $\mathcal{D}\left[Q(z|X)\|P(z|X)\right]$. -$P(z|X)$ is not something we can compute analytically: it describes the values of $z$ that are likely to give rise to a sample like $X$ under our model in Figure~\ref{fig:model}. -However, the second term on the left is pulling $Q(z|x)$ to match $P(z|X)$. -Assuming we use an arbitrarily high-capacity model for $Q(z|x)$, then $Q(z|x)$ will hopefully actually \textit{match} $P(z|X)$, in which case this KL-divergence term will be zero, and we will be directly optimizing $\log P(X)$. -As an added bonus, we have made the intractable $P(z|X)$ tractable: we can just use $Q(z|x)$ to compute it. - -\subsection{Optimizing the objective} - -So how can we perform stochastic gradient descent on the right hand side of Equation~\ref{eq:variational}? -First we need to be a bit more specific about the form that $Q(z|X)$ will take. -The usual choice is to say that $Q(z|X)=\mathcal{N}(z|\mu(X;\vartheta),\Sigma(X;\vartheta))$, where $\mu$ and $\Sigma$ are arbitrary deterministic functions with parameters $\vartheta$ that can be learned from data (we will omit $\vartheta$ in later equations). -In practice, $\mu$ and $\Sigma$ are again implemented via neural networks, and $\Sigma$ is constrained to be a diagonal matrix. -%The name variational ``autoencoder'' comes from the fact that $\mu$ and $\Sigma$ are ``encoding'' $X$ into the latent space $z$. -The advantages of this choice are computational, as they make it clear how to compute the right hand side. -The last term---$\mathcal{D}\left[Q(z|X)\|P(z)\right]$---is now a KL-divergence between two multivariate Gaussian distributions, which can be computed in closed form as: -\begin{equation} +Hence, during training, it makes sense to choose a $Q$ which will make +$E_{z\sim Q}[\log Q(z)-$ $\log P(z|X_i,Y_i)]$ (a +$\mathcal{D}$-divergence) small, such that the right hand side is a +close approximation to $\log P(Y_i|X_i)$. + + +This equation serves as the core of the variational autoencoder, and +it's worth spending some time thinking about what it says In two +sentences, the left hand side has the quantity we want to maximize: +$\log P(X)$ (plus an error term, which makes $Q$ produce $z$'s that +can reproduce a given $X$; this term will become small if $Q$ is +high-capacity). The right hand side is something we can optimize via +stochastic gradient descent given the right choice of $Q$ (although it +may not be obvious yet how). + + + +So how can we perform stochastic gradient descent? + +First we need to be a bit more specific about the form that $Q(z|X)$ +will take. The usual choice is to say that +$Q(z|X)=\mathcal{N}(z|\mu(X;\vartheta),\Sigma(X;\vartheta))$, where +$\mu$ and $\Sigma$ are arbitrary deterministic functions with +parameters $\vartheta$ that can be learned from data (we will omit +$\vartheta$ in later equations). In practice, $\mu$ and $\Sigma$ are +again implemented via neural networks, and $\Sigma$ is constrained to +be a diagonal matrix. The name variational ``autoencoder'' comes from +the fact that $\mu$ and $\Sigma$ are ``encoding'' $X$ into the latent +space $z$. The advantages of this choice are computational, as they +make it clear how to compute the right hand side. The last +term---$\mathcal{D}\left[Q(z|X)\|P(z)\right]$---is now a KL-divergence +between two multivariate Gaussian distributions, which can be computed +in closed form as: +!bt +\[ \begin{array}{c} \mathcal{D}[\mathcal{N}(\mu_0,\Sigma_0) \| \mathcal{N}(\mu_1,\Sigma_1)] = \hspace{20em}\\ \hspace{5em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma_1^{-1} \Sigma_0 \right) + \left( \mu_1 - \mu_0\right)^\top \Sigma_1^{-1} ( \mu_1 - \mu_0 ) - k + \log \left( \frac{ \det \Sigma_1 }{ \det \Sigma_0 } \right) \right) \end{array} -\end{equation} -\noindent where $k$ is the dimensionality of the distribution. In our case, this simplifies to: -\begin{equation} +\] +!et + +where $k$ is the dimensionality of the distribution. In our case, this simplifies to: +!bt +\[ \begin{array}{c} \mathcal{D}[\mathcal{N}(\mu(X),\Sigma(X)) \| \mathcal{N}(0,I)] = \hspace{20em}\\ \hspace{6em}\frac{ 1 }{ 2 } \left( \mathrm{tr} \left( \Sigma(X) \right) + \left( \mu(X)\right)^\top ( \mu(X) ) - k - \log\det\left( \Sigma(X) \right) \right). \end{array} -\end{equation} +\] +!et -The first term on the right hand side of Equation~\ref{eq:variational} is a bit more tricky. +The first term on the right hand side is a bit more tricky. We could use sampling to estimate $E_{z\sim Q}\left[\log P(X|z) \right]$, but getting a good estimate would require passing many samples of $z$ through $f$, which would be expensive. Hence, as is standard in stochastic gradient descent, we take one sample of $z$ and treat $\log P(X|z)$ for that $z$ as an approximation of $E_{z\sim Q}\left[\log P(X|z) \right]$. After all, we are already doing stochastic gradient descent over different values of $X$ sampled from a dataset $D$. -%, since we need to compute Equation~\ref{eq:variational} on The full equation we want to optimize is: -\begin{equation} + +!bt +\[ \begin{array}{c} E_{X\sim D}\left[\log P(X) - \mathcal{D}\left[Q(z|X)\|P(z|X)\right]\right]=\hspace{16em}\\ \hspace{10em}E_{X\sim D}\left[E_{z\sim Q}\left[\log P(X|z) \right] - \mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. \end{array} - \label{eq:expected} -\end{equation} +\] +!et + If we take the gradient of this equation, the gradient symbol can be moved into the expectations. Therefore, we can sample a single value of $X$ and a single value of $z$ from the distribution $Q(z|X)$, and compute the gradient of: +!bt \begin{equation} \log P(X|z)-\mathcal{D}\left[Q(z|X)\|P(z)\right]. - \label{eq:onesamp} \end{equation} -We can then average the gradient of this function over arbitrarily many samples of $X$ and $z$, and the result converges to the gradient of Equation~\ref{eq:expected}. +!et + +We can then average the gradient of this function over arbitrarily many samples of $X$ and $z$, and the result converges to the gradient. -There is, however, a significant problem with Equation~\ref{eq:onesamp}. +There is, however, a significant problem $E_{z\sim Q}\left[\log P(X|z) \right]$ depends not just on the parameters of $P$, but also on the parameters of $Q$. -However, in Equation~\ref{eq:onesamp}, this dependency has disappeared! -In order to make VAEs work, it's essential to drive $Q$ to produce codes for $X$ that $P$ can reliably decode. -To see the problem a different way, the network described in Equation~\ref{eq:onesamp} is much like the network shown in Figure~\ref{fig:net} (left). -The forward pass of this network works fine and, if the output is averaged over many samples of $X$ and $z$, produces the correct expected value. -However, we need to back-propagate the error through a layer that samples $z$ from $Q(z|X)$, which is a non-continuous operation and has no gradient. -Stochastic gradient descent via backpropagation can handle stochastic inputs, but not stochastic units within the network! -The solution, called the ``reparameterization trick'' in~\cite{Kingma14a}, is to move the sampling to an input layer. -Given $\mu(X)$ and $\Sigma(X)$---the mean and covariance of $Q(z|X)$---we can sample from $\mathcal{N}(\mu(X),\Sigma(X))$ by first sampling $\epsilon \sim \mathcal{N}(0,I)$, then computing $z=\mu(X)+\Sigma^{1/2}(X)*\epsilon$. %, where $\circ$ denotes elementwise product. -Thus, the equation we actually take the gradient of is: -\begin{equation} - E_{X\sim D}\left[E_{\epsilon\sim\mathcal{N}(0,I)}[\log P(X|z=\mu(X)+\Sigma^{1/2}(X)*\epsilon)]-\mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. -\end{equation} -This is shown schematically in Figure~\ref{fig:net} (right). -Note that none of the expectations are with respect to distributions that depend on our model parameters, so we can safely move a gradient symbol into them while maintaning equality. -That is, given a fixed $X$ and $\epsilon$, this function is deterministic and continuous in the parameters of $P$ and $Q$, meaning backpropagation can compute a gradient that will work for stochastic gradient descent. -It's worth pointing out that the ``reparameterization trick'' only works if we can sample from $Q(z|X)$ by evaluating a function $h(\eta,X)$, where $\eta$ is noise from a distribution that is not learned. -Furthermore, $h$ must be \textit{continuous} in $X$ so that we can backprop through it. -This means $Q(z|X)$ (and therefore $P(z)$) can't be a discrete distribution! -If $Q$ is discrete, then for a fixed $\eta$, either $h$ needs to ignore $X$, or there needs to be some point at which $h(\eta,X)$ ``jumps'' from one possible value in $Q$'s sample space to another, i.e., a discontinuity. +In order to make VAEs work, it is essential to drive $Q$ to produce codes for $X$ that $P$ can reliably decode. +!bt +\[ + E_{X\sim D}\left[E_{\epsilon\sim\mathcal{N}(0,I)}[\log P(X|z=\mu(X)+\Sigma^{1/2}(X)*\epsilon)]-\mathcal{D}\left[Q(z|X)\|P(z)\right]\right]. +\] +!et