In this project, I've defined and trained a DCGAN on a dataset of faces. The goal of this project was to get a generator network to generate new images of faces that look as realistic as possible!
The data set used to train the adversarial networks is CelebFaces Attributes Dataset (CelebA).
This project is part of the Udacity Deep Learning Nanodegree
In order to better view and work on the jupyter Notebook I encourage you to use nbviewer . You can simply copy and paste the link to this website and you will be able to edit it without any problem. Alternatively you can clone the repository using
git clone https://github.com/rishabhchhillar/Face-Generation/
then in the command Line type, after you have downloaded jupyter notebook type
jupyter notebook
locate the notebook and run it.
As the network makes use of a sophisticated deep convolutional neural network the training process is impossible to be done by a common laptop. In order to train your models to your local machine you have three options
- Cuda -- If you have an NVIDIA GPU then you can install CUDA from here. With Cuda you will be able to train your model however the process will still be time consuming
- Cloud Services -- There are many paid cloud services that let you train your models like AWS or Google Cloud
- Coogle Colab -- Google Colab gives you free access to a tesla K80 GPU for 12 hours at a time. Once 12 hours have ellapsed you can just reload and continue! The only limitation is that you have to upload the data to Google Drive and if the dataset is massive you may run out of space.
However, once a model is trained then a normal CPU can be used for the prediction and you will have an answer within some seconds.
- Rishabh Chhillar
- Udacity
This project is licensed under the MIT License - see the (LICENSE.md) file.