A Generative neural network aims to generate all the values of a phenomenon, both those that can be observed (input) and those that can be calculated from the ones observed (target). We try to understand how such a model can succeed in this goal by proposing a first distinction between generative and discriminative models.
Neural networks can be used as generative models: algorithms able to replicate the distribution of data in input to then be able to generate new values starting from that distribution. Usually, an image dataset is analyzed, and we try to learn the distribution associated with the pixels of the images to produce shapes similar to the original ones.
Often, in machine learning, we need to predict the value of a target vector y given the value of an input x vector. From a probabilistic perspective, the goal is to find the conditional probability...