A GAN is a modeling algorithm that pits two neural networks against each other. One of them uses random data to create output. The other evaluates the real target data and the generated output and determines which is real. Over time, the first neural network creates better fake target data and the second neural network continues to try and determine which is the real target data. The two neural networks continue to compete and the models both improve to create increasingly realistic synthetic data.
Breaking down the term, we can see how this modeling technique differs from others. First, it is generative, which means that the goal is to generate data. This is in contrast to other models, such as classification or regression, that predict probabilities or values. Next, it is adversarial. That is, there are two models that are set to compete against each other...