Variational Autoencoder (VAE) vs. GAN

by allenlu2007

Both VAE and GAN are unsupervised learning

Another difference: while they both fall under the umbrella of unsupervised learning, they are different approaches to the problem. A GAN is a generative model – it’s supposed to learn to generate realistic *new* samples of a dataset. Variational autoencoders are generative models, but normal “vanilla” autoencoders just reconstruct their inputs and can’t generate realistic new samples.


pro: clear objective/cost function

con: injected noise and imperfect reconstruction, result is blurred compared with GAN



pro: result is better especially with noise?  Nicer image.

con: no clear object/cost function for comparison.  Hard to train and converge


Combine both : adversarial autoencodre (AAE)

By Ian Goodfellow group


GAN: maximum likelihood -> implicit density -> direct  (最後希望 generative model 產生 sample 原來的 density)

VAE: maximum likelihood -> explicit density -> approximate density (Gaussian)