This repository contains a collection of Generative Adversarial Network (GAN) implementations using PyTorch. GANs are a popular class of deep learning models that learn to generate realistic synthetic data by pitting a generator network against a discriminator network in a two-player adversarial game.
In this repository, we provide PyTorch implementations of various GAN architectures. Each implementation includes the generator, discriminator, and training loop, code necessary to train and generate samples from the respective GAN model.
By studying and experimenting with these implementations, you can gain a better understanding of GANs and how they can be implemented using PyTorch. Additionally, you can use these implementations as a starting point for your own GAN projects and modify them to suit your specific requirements.
The following GAN architectures have been implemented in this repository:
-
Implemented Networks
- Deep Convolutional GAN (DCGAN)
- Conditional GAN (CGAN)
-
Upcoming Nteworks
- Wasserstein GAN (WGAN)
- WGAN with Gradient Penalty (WGAN-GP)
- CycleGAN
- InfoGAN
- Style GAN
Each implementation is contained within its own directory.
Refer to the main README.md file for setting up the project.
The following dependencies are required to run the GAN implementations:
- Python 3.9>=
- PyTorch
- Torchvision
- NumPy
- Matplotlib
You can install the required Python packages by running the following command:
pip install -r requirements.txt
Contributions to this repository are welcome! If you have any improvements, bug fixes, or additional GAN implementations you would like to contribute, please follow the standard GitHub workflow:
- Fork the repository.
- Create a new branch for your changes.
- Make the necessary modifications.
- Commit your changes.
- Push your changes to your forked repository.
- Submit a pull request to the original repository.