A generative adversarial network (GAN) is a class of machine learning frameworks designed by Ian Goodfellow and his colleagues in 2014.
Two neural networks contest with each other in a game (in the form of a zero-sum game, where one agent’s gain is another agent’s loss).
Given a training set, this technique learns to generate new data with the same statistics as the training set.
For example, a GAN trained on photographs can generate new photographs that look at least superficially authentic to human observers, having many realistic characteristics.
Though originally proposed as a form of generative model for unsupervised learning, GANs have also proven useful for semi-supervised learning, fully supervised learning, and reinforcement learning.