465-Lecture 12
465-Lecture 12
465-Lecture 12
Lecture 12
Generative models (Autoencoders, Variational Autoencoders)
Supervised vs Unsupervised learning
• Supervised Learning
• Data: (x, y) -- x is data, y is label
• Goal: Learn function to map x → y
• Examples: Classification, regression, object detection, semantic segmentation,
etc.
• Unsupervised Learning
• Data: (x) -- x is data, no labels!
• Goal: Learn some hidden or
underlying structure of the data
• Examples: Clustering, feature or
dimensionality reduction, etc
Autoencoders
• L1 Regularization
• We can add a term to our loss function that penalizes the absolute value of the
vector of activations
• In layer h for observation i, scaled by a tuning parameter λ
Denoising autoencoders
Denoising autoencoders
• With this approach, our model isn't able to simply develop a mapping
which memorizes the training data because our input and target output
are no longer the same
• Rather, the model learns a vector field for mapping the input data towards
a lower-dimensional manifold
Autoencoders: In summary
• Our input data is converted into an encoding vector where each dimension
represents some learned attribute about the data
• The most important detail to grasp here is that our encoder network is
outputting a single value for each encoding dimension
• The decoder network then subsequently takes these values and attempts
to recreate the original input
Variational autoencoders
• Rather than directly outputting values for the latent state as we would in a
standard autoencoder, the encoder model of a VAE will output parameters
describing a distribution for each dimension in the latent space
• Since we're assuming that our prior follows a normal distribution, we'll
output two vectors describing the mean and variance of the latent state
distributions
• If we were to build a true multivariate Gaussian model, we'd need to define
a covariance matrix describing how each of the dimensions are correlated
Implementation
Implementation