In a field like Computer Vision, which has been explored and studied for long, Generative Adversarial Network (GAN) was a recent addition which instantly became a new standard for training machines.
GAN is an architecture developed by Ian Goodfellow and his colleagues in 2014 which makes use of multiple neural networks that compete against each other to make better predictions.
Generator, the network that is responsible for generating new data from training data, and Discriminator, the one that identifies and distinguishes a generated image/fake image from an original image of the training set together form a GAN. Both these networks learn based on their previous predictions, competing with each other for a better outcome.
In this article we will break down a simple GAN made with Keras into 8 simple steps.
How To Build A GAN In 8 Simple Steps
We will follow the steps given below to build a simple Generative Adversarial Network.
- Importing the necessary modules
- Building a simple Generator network
- Building a simple Discriminator network
- Building a GAN by stacking the generator and discriminator
- Plotting the generated images
- A training method for GAN
- Loading and processing MNIST data
- Training The GAN