/Face-Generation-Wasserstein-Gan-s-GP

This project demonstrates a GAN built with PyTorch, using a subset of 5000 CelebA images. It leverages Wasserstein GAN with Gradient Penalty (WGAN-GP) for facial image generation. The provided models are trained for 200 epochs, showcasing integration of techniques from key research papers. Deeper Networks and more Training can improve results.

Primary LanguageJupyter Notebook

CelebA WGAN-GP Project

This project demonstrates the implementation of a Generative Adversarial Network (GAN) using the CelebA face dataset. The GAN is built with PyTorch and utilizes the Wasserstein GAN with Gradient Penalty (WGAN-GP) technique. The project showcase my ability to build a GAN model from different research papers and provides a starting point for further experimentation and improvement.

Dataset

The dataset used is a subset of the CelebA dataset, which contains facial images. For this project, the dataset was reduced to 5000 images. You can access the dataset here.

Model Details

Training

  • Epochs: The model was trained for 200 epochs.
  • Results: The current results may not be optimal due to the limited number of training epochs and the complexity of the model. The trained generator and discriminator are included for further experimentation.

Usage

To run the project:

  1. Open the provided Jupyter notebook.
  2. Load the pre-trained models:
    • generator.pth
    • discriminator.pth
  3. You can also further train the models to improve results. Note that a deeper neural network with more parameters might yield better performance.

Files Included

  • generator.pth: The pre-trained generator model.
  • discriminator.pth: The pre-trained discriminator model.
  • notebook.ipynb: Jupyter notebook for running and experimenting with the models.

Notes

  • The models may benefit from additional training epochs and/or a more complex neural network architecture to achieve better results.

References

Feel free to contribute to this Project.