The goal of this project was to build and understand how a Generative Adversarial Network works. They are essentially composed of two competing networks, one trying to make a fake image (the generator) and the other trying to classify the image as fake or real (the discriminator). This required first an understanding of the Neural Networks and Convolutional Neural Networks. Though the theory of how these networks work is pretty straightforward, the actual implementation is what is really important. There is no method of determining the various details of these networks (the hyperparameters) and has to be determined experimentally. The project involved the implementation of a CNN and a GAN network and training then on the CIFAR-10 and MNIST datasets respectively.
Checkpoint | Progress |
---|---|
Checkpoint 1 (11.04.2021) | Neural Networks and Deep Learning, Improving Deep Neural Networks in Coursera |
Checkpoint 2 (06.06.2021) | Trained a CNN model on CIFAR-10 dataset |
Final Submission (18.07.2021) | Trained a GAN on MNIST dataset |
The folder Checkpoint 1 contains the screenshots of the Coursera page and Checkpoint contains the Jupyter Notebook for the CNN trained on the CIFAR-10 dataset. DCGAN.ipynb and DCGAN_with_Wassertain_Loss.ipynb contains the two GAN models trained on the MNIST dataset.