This course has been archived and is no longer supported. For our latest courses on Python, consider trying our evergreen curriculums with a 1-Year Unlimited Access Package.
Generative Adversarial Networks (GANs) are a type of artificial intelligence algorithm which has two different Neural Networks compete against each to gain knowledge. Introduced in 2014 by Ian Goodfellow, this technique can be successfully used to generate realistic photographs of objects, nature and even human faces. Other applications include removing noise from astrophysical images, generating new fake data for other neural networks, or even enhancing photos. You know how in movies, the FBI always does that cool zoom on a photo of a suspect? GANs can be used to actually do that!
This course begins with the basics and intuition of GANs, introducing the the two types of Models – Discriminative and Generative – and their specific tasks in the algorithm. Continuing through this course, you’ll learn the difference between regular GANs, DCGANs (Deep Convolutional GANs) and AC-GANs (Auxiliary Classifer GANs), and how to implement them using Python.
What you’ll learn:
- Classifying the data as real or artificially generated through a Discriminator
- Fooling the Discriminator into believing generated data is real via a Generator
- Analyzing the problem using Game Theory
- Training a GAN – including an intuition of the algorithm and the math behind it
- Tips and tricks – normalizing data, optimization, label smoothing and more
- Challenges of training GANs – mode colapse, counting, perspective and Global Structure