Conditional GANs
The first goal of a generative model is to be able to produce good quality images. Then we would like to be able to have some control over the images that are to be generated.
In Chapter 1, Getting Started with Image Generation Using TensorFlow, we learned about conditional probability and generated faces with certain attributes using a simple conditional probabilistic model. In that model, we generated a smiling face by forcing the model to only sample from the images that had a smiling face. When we condition on something, that thing will always be present and will no longer be a variable with random probability. You can also see that the probability of having those conditions is set to 1.
To enforce the condition on a neural network is simple. We simply need to show the labels to the network during training and inference. For example, if we want the generator to generate the digit 1, we will need to present the label of 1 in addition to the usual random...