Generative Adversarial Network - an example in Keras (Python)

Author: Goran Trlin

A simple Generative Adversarial Network example written using Keras library in Python (backed by TensorFlow).

The objective of this small program is to generate new hand-drawn circles based on the small input dataset.

Key notes:

  • The GAN is based on the CNN network from the previous article and enhanced with a generator network
  • Binary cross-entropy is used as the loss function for both the discriminator and the generator network
  • Adam algorithm is used as the optimizer
  • The training dataset is very small. It contains only hand-drawn circles. However, the network is able to create new images similar to the ones found in the input dataset.

The code for this project can be found on GitHub.