liveBook · Manning

Generative adversarial network

As explained in Grokking Machine Learning

A generative adversarial network is a generative model composed of competing generator and discriminator networks that learn to produce realistic data.

Predictive models answer questions such as whether an image shows a cat or a dog. Generative models instead learn how data looks so they can produce new, similar examples. A generative adversarial network (GAN) uses two competing neural networks: a generator creates realistic-looking images, and a discriminator tries to distinguish generated images from real ones. section 10.5 section 2.3

During training, the two networks interact:

  • The discriminator receives real images and images made by the generator. section 10.5
  • The generator aims to make images realistic enough to challenge the discriminator. section 10.5
  • With a dataset of human faces, this process can produce realistic-looking faces. section 10.5

GANs are one approach to generative machine learning, which is difficult and can require lots of data and computing power. The idea here is intuitive rather than a detailed treatment of how to build or train one. section 2.3 section 10.5

How Grokking Machine Learning covers it

How deep it goes
Defines generator and discriminator roles and their training interaction, but leaves generative learning largely unexplored.
Examples
Illustrates GANs with face-image generation and names paintings, music, and stories as generative outputs.
What you can do after
Understand how competing networks can learn to produce realistic-looking images from a dataset.
How it connects
Connects GANs to neural networks, generative machine learning, and unsupervised learning.

Also explained in

Compare how 12 books explain generative adversarial network →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Grokking Machine Learning. The section links point to the parts of the book it draws on.