General Adversarial Network (GAN)

A Generative Adversarial Network (GAN) is a machine learning framework involving two neural networks—often referred to as the Generator and the Discriminator—that are trained simultaneously in a minimax game:

  1. Generator (G)

    → Creates (or “generates”) new data that mimics the characteristics of real data.
    → Learns from feedback provided by the Discriminator, continually refining its ability to produce more convincing outputs.

  2. Discriminator (D)

    → Evaluates whether the inputs it receives are real (from the training dataset) or generated (from the Generator).
    → Provides feedback to the Generator, indicating how closely its outputs resemble true data examples.

By competing against each other, both networks improve over time. The Generator becomes better at creating realistic data, and the Discriminator becomes more adept at detecting generated vs. real data. Although best known for image generation – such as producing photorealistic images – GANs have also been adapted for text, audio, and various other data types.