Generative Adversarial Networks (GANs)

  • Course level: Intermediate


Variational autoencoders and Generative Adversarial Networks have been 2 of the most interesting developments in deep learning and machine learning recently.

Yann LeCun, a deep learning pioneer, has said that the most important development in recent years has been adversarial training, referring to GANs.

GAN stands for generative adversarial network, where 2 neural networks compete with each other.

What is unsupervised learning?

Unsupervised learning means we’re not trying to map input data to targets, we’re just trying to learn the structure of that input data. Once we’ve learned that structure, we can do some pretty cool things.


What Will I Learn?

  • Learn the basic principles of generative models
  • Build a variational autoencoder in Theano and Tensorflow
  • Build a GAN (Generative Adversarial Network) in Theano and Tensorflow

Topics for this course

6 Lessons

Generative Adversarial Networks (GANs)

Introduction and Back-Propagation19:18
Loss Derivation from Scratch33:22
Explanation of Loss Function29:21
Optimization of Loss Function14:25
Limitations of GANs28:43
TensorFlow code in Google Colab32:36
Generative Adversarial Networks
28 £

Enrolment validity: Lifetime


  • Know how to build a neural network in Theano and/or Tensorflow
  • Probability
  • Multivariate Calculus
  • Numpy, etc.