Generative models are designed to learn the underlying distribution of a dataset and generate new data points that could plausibly come from the same distribution. Discriminative models make predictions based on specific traits, such as classifying photographs of animals. In contrast, generative models have the ability to create new instances of data, such generating a new image of an animal or a traffic sign. Image classification with deep neural networks tipically required a consi- derable amount of data to operate with good performance. When there is not that much data, data augmentation strategies are commonly used to tackle the issue. Moreover, aside from simple transformations, generative models have been also used to augment datasets in order to improve the performance of the base model. In this work, you are tasked **to improve the performance of pre-determined image classifier by augmenting the dataset with images generated by gene- rative models**. The idea is to have the generative models to generate more samples for the training dataset with the overall intention to improve the performance of the classifier.