Generative adversarial network

Machine learning framework

Definition

A class of machine learning frameworks where two neural networks contest in a zero-sum game to generate new data.

Core concept

Based on indirect training through a discriminator network, aiming to produce data that looks authentic.

Generative Adversarial Networks (GANs)

Generative Adversarial Networks (GANs) are a powerful method for generating images that resemble those in a given dataset. This technique involves two neural networks—a generator and a discriminator—competing against each other. The generator creates images, while the discriminator evaluates their authenticity. Over time, this adversarial process results in the generator producing increasingly realistic images.

Structure of GANs

A GAN consists of two main components:

Training Process

The training process of GANs involves an adversarial game between the generator and the discriminator:

  1. Initialization: The generator produces obviously fake images, and the discriminator quickly learns to identify them as fake.
  2. Adversarial Process: As training progresses, the generator improves, producing images that are increasingly difficult for the discriminator to classify as fake. Simultaneously, the discriminator becomes more proficient at distinguishing between real and fake images.
  3. Convergence: Ideally, the generator becomes so good that the discriminator cannot reliably distinguish between real and generated images. At this point, the generator is producing highly realistic images.

Applications of GANs