Definition
A generative adversarial network trains two models with opposing objectives. The generator maps random noise, and sometimes a condition such as a class label, into a candidate sample. The discriminator receives real and generated examples and learns to tell them apart. Training alternates their updates so the generator gets better at producing examples the discriminator accepts.
The original formulation is a minimax game. Under idealized conditions, the generator recovers the data distribution and the discriminator can do no better than assign one-half probability to real versus generated samples. Real training is less orderly. A weak discriminator gives the generator poor feedback, while a much stronger discriminator can leave the generator with unhelpful gradients. Mode collapse occurs when the generator produces too little variety even though individual samples look plausible.
Name and attribution
Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio introduced the adversarial generative framework in their 2014 paper "Generative Adversarial Nets." The modern GAN name and acronym derive from that work.
Distinguish it from nearby terms
A diffusion model learns to reverse a specified noising process and usually samples through repeated denoising. A GAN learns through competition with a discriminator and often generates in one forward pass. An ordinary classifier can also be adversarially attacked, but that does not make it a GAN.
Check your understanding
The discriminator reaches near-perfect accuracy early, while generator samples stop improving. Which model supplies the generator's learning signal, and why can an unbalanced game stall training?