In a GAN, the networks are trained through adversarial play: both networks compete against each other. As an example, let's assume that we want the GAN to create forgeries of artworks:
- The first network, the generator, has never seen the real artwork but is trying to create an artwork that looks like the real thing.
- The second network, the discriminator, tries to identify whether an artwork is real or fake.
- The generator, in turn, tries to fool the discriminator into thinking that its fakes are the real deal by creating more realistic artwork over multiple iterations.
- The discriminator tries to outwit the generator by continuing to refine its own criteria for determining a fake.
- They guide each other ...