Deep generative models can be either generative or discriminative. Generative models directly model the joint distribution of inputs and outputs, while discriminative models directly model the conditional distribution of outputs given inputs. Common deep generative models include restricted Boltzmann machines, deep belief networks, variational autoencoders, generative adversarial networks, and deep convolutional generative adversarial networks. These models use different network architectures and training procedures to generate new examples that resemble samples from the training data distribution.