These generative models were proposed by Goodfellow and other researchers (in Generative Adversarial Networks, Goodfellow I. J., Pouget-Abadie J., Mirza M., Xu B., Warde-Farley D., Ozair S., Courville A., and Bengio Y., arXiv:1406.2661 [stat.ML]) in order to exploit the power of adversarial training, along with the flexibility of deep neural networks. Without the need for too many technical details, we can introduce the concept of adversarial training as a technique based on game theory, whose goal it is to optimize two agents that play against one another. When one agent tries to cheat its opponent, the other agent has to learn how to distinguish between correct and fake input. In particular, a GAN is a model that's split into two well-defined components:
- A generator
- A discriminator (also known as a critic)
Let's start by supposing...