Generative Adversarial Network is a machine learning architecture containing two modules. The generator attempts to create an output that is similar to the network’s training data, while the discriminator attempts to tell the generator’s outputs apart from the training data. The generator is reinforced based on how well its outputs fool the discriminator, so the two modules are adversaries.
GANs are best known for working well with images; for example, generating pictures of human faces.