
Explore autoencoders and variational autoencoders, including intuitive and mathematical explanations, their applications in generative modeling, and training a neural network to generate new, realistic images.
Build a training loop for a variational autoencoder, training an encoder and decoder with Adam optimizers, tracking mean squared error loss and progress with tqdm.
Explore a PyTorch implementation of a variational autoencoder, including encoder‑decoder networks, reparameterization, KL divergence, and training on 0‑1 normalized data with a 2‑D latent space.
Wrap up the variational autoencoders discussion and invite constructive feedback to improve this course, while noting interest in a follow-up autoencoders course.
In a world of increasingly accessible data, unsupervised learning algorithms are becoming more and more efficient and profitable. Companies that understand this will soon have a competitive advantage over those who are slow to jump on the artificial intelligence bandwagon. As a result, developers with Machine Learning and Deep Learning skills are increasingly in demand and have gold on their hands.
In this course, we will see how to take advantage of a raw dataset, without any labels. In particular, we will focus exclusively on Autoencoders and Variational Autoencoders and see how they can be trained in an unsupervised way, making them particularly attractive in the era of Big Data.
This course, taught using the Python programming language, requires basic programming skills. If you don't have the required foundation, I recommend that you brush up on your skills by taking a crash course in programming. Also, it is best to have basic knowledge of optimization (we will use gradient optimization) and machine learning.
Concepts covered:
Autoencoders and their implementation in Python
Variational Autoencoders and their implementations in Python
Unsupervised Learning
Generative models
PyTorch through practice
The implementation of a scientific ML paper (Auto-Encoding Variational Bayes)
Don't wait any longer before jumping into the world of unsupervised Machine Learning!