Abstract: A system and related methods for generating class-specific data are disclosed. The data belong to an input space with an unknown initial probability distribution and a known classification scheme. From a relatively small, unbalanced dataset of samples with respect to the classification scheme in the input space, the system is programmed to learn a series of invertible transformations from the input space to a target space, a target probability distribution for the samples in the target space, and a trainable parameter probability distribution for each parameter of the target probability distribution to represent uncertainty information related to the target probability distribution. The system is programmed to further identify how to sample from each parameter probability distribution, which determine how to sample from the target probability distribution, to generate samples in the input space that are more likely to belong to specific classes.