Today we will be talking about Generative Adversarial Network because they are cool and they can do lots of cool things. People use to create sketches, write poems, edit videos. The infamous DeepFakes uses GAN. It is an approach to generative modeling using deep learning methods.

Introduced in 2014, by Ian Goodfellow, the objective of the GAN is to create fake images that are as realistic as possible. GAN is based on a game theory objective to find Nash Equilibrium between Generator and Discriminator, two components of GAN. The two networks, Generator and Discriminator, play a zero-sum game against each other until the discriminator is fooled for at least half the number of times. The generator converts random noise into observations that look as if they have been sampled from the original dataset while the discriminator tries to distinguish between the real and fake samples. The key to GAN lies in how we alternate the training between the networks so that the generator learns to fool the discriminator, while the discriminator gets better at correctly identifying fake samples. This drives the generator to fool the discriminator in more engaging ways.

The Generator Model The generator model takes a fixed size random vector and generates samples in the domain. The vector is randomly sampled from Gaussian Distribution, which seeds the generative process. The aim of the generator is to learn the data distribution.

The Discriminator Model The discriminator model takes an example from the domain (real or generated) and predicts the binary class of the sample (real or fake). The real examples come from training data while the fake examples are created by a generator network. The discriminator is a simple classification model.

After the training process, the generator model is kept and used to generate new samples.

GANs have the power to generate data similar to the training data. Thus they help in data augmentation. GANs provide a more domain-specific approach for data augmentation. Besides this, GANs have many other applications — Image superresolution, Creating Art, Image-to-Image translation, Drug Designing etc.

Perhaps the most compelling reason why GANs are used is because of their success. Since 2014 when GAN was first introduced, the results through the model are getting better manifolds every year. GANs have been able to generate samples so realistic that humans are unable to tell the difference between fake and real.