First proposed in 2014 by Ian Goodfellow et al. from the University of Montreal, GANs are certainly the most popular solution for generative tasks.
As their name indicates, GANs use an adversarial scheme so they can be trained in an unsupervised manner (this scheme inspired the DANN method introduced earlier in this chapter). Having only a number of images, x, we want to train a generator network to model p(x), that is, to create new valid images. We thus have no proper ground truth data to directly compare the new images with (since they are new). Not able to use a typical loss function, we pit the generator against another network—the discriminator.
The discriminator's task is to evaluate whether an image comes from the original dataset (real image) or if it was generated by the other network (fake image). Like the domain discriminating head in DANN, the discriminator is trained in a supervised manner as a binary classifier using the implicit image labels (real versus...