7 Image Generation with Variational Autoencoders (VAEs)

 

This chapter covers

  • Understanding autoencoders (AEs) vs. variational autoencoders (VAEs)
  • Building and training an autoencoder to reconstruct handwritten digits
  • Building and training a VAE to generate human face images
  • Performing encoding arithmetic and interpolation with a trained VAE

So far, you have learned how to generate shapes, numbers, and images, all by using generative adversarial networks (GANs). In this chapter, you’ll learn to create images by using another generative model: variational autoencoders (VAEs). You’ll also learn the practical uses of VAEs by performing encoding arithmetic and encoding interpolation.

7.1 An overview of autoencoders

7.1.1 What is an autoencoder?

7.1.2 Steps in building and training an autoencoder

7.2 Build and train an autoencoder to generate digits

7.2.1 Gather handwritten digits

7.2.2 Build and train an autoencoder

7.2.3 Save and use the trained autoencoder

7.3 What are variational autoencoders?

7.3.1 Differences between AEs and VAEs

7.3.2 The blueprint to train a VAE to generate human face images

7.4 A variational autoencoder to generate human face images

7.4.1 Build a variational autoencoder

7.4.2 Train the variational autoencoder

7.4.3 Generate images with the trained VAE

7.4.4 Encoding arithmetic with the trained VAE

7.5 Summary