Generative adversarial networks (GANs) are powerful algorithmic structures that use two neural networks, pitting one against the other, in order to generate new, synthetic instances of data that can pass for real data. In simple terms, GANs consist of:
- a Generator that creates synthetic instances of data and
- a Discriminator that tries to differentiate the synthetic data from the real
Over a few years, applications of the Generative Adversarial Networks (GANs) have seen astounding growth. The technique has been successfully used for high-fidelity natural image synthesis, data augmentation tasks, improving image compressions, and more. From emoting super-realistic expressions to exploring deep space, and from bridging the human-machine empathetic disconnect to introducing new art forms, GANs have it all covered.
The different architectures of GANs explored in this repo are listed below.
2. Deep Convolutional GAN (DCGAN)