TorchGAN is a Pytorch based framework for designing and developing Generative Adversarial Networks. This framework has been designed to provide building blocks for popular GANs and also to allow customization for cutting edge research. Using TorchGAN's modular structure allows
- Trying out popular GAN models on your dataset.
- Plug in your new Loss Function, new Architecture, etc. with the traditional ones.
- Seamlessly visualize the training with a variety of logging backends.
System / PyTorch Version | 1.8 | 1.9 | nightly |
---|---|---|---|
Linux py3.8 | |||
Linux py3.9 | |||
OSX py3.8 | |||
OSX py3.9 | |||
Windows py3.9 | |||
Windows py3.9 |
Using pip (for stable release):
$ pip install torchgan
Using pip (for latest master):
$ pip install git+https://github.com/torchgan/torchgan.git
From source:
$ git clone https://github.com/torchgan/torchgan.git
$ cd torchgan
$ python setup.py install
The documentation is available here
The documentation for this package can be generated locally.
$ git clone https://github.com/torchgan/torchgan.git
$ cd torchgan/docs
$ pip install -r requirements.txt
$ make html
Now open the corresponding file from build
directory.
The tutorials
directory contain a set of tutorials to get you started with torchgan. These tutorials can be run using Google Colab or Binder. It is highly recommended that you follow the tutorials in the following order.
- Introductory Tutorials:
- Intermediate Tutorials:
- Advanced Tutorials:
This software was developed as part of academic research. If you would like to help support it, please star the repository. If you use this software as part of your research, teaching, or other activities, we would be grateful if you could cite the following:
@article{Pal2021,
doi = {10.21105/joss.02606},
url = {https://doi.org/10.21105/joss.02606},
year = {2021},
publisher = {The Open Journal},
volume = {6},
number = {66},
pages = {2606},
author = {Avik Pal and Aniket Das},
title = {TorchGAN: A Flexible Framework for GAN Training and Evaluation},
journal = {Journal of Open Source Software}
}
List of publications & submissions using TorchGAN (please open a pull request to add missing entries):
- Can GAN-Generated Network Traffic be used to Train Traffic Anomaly Classifiers?
- Ward2ICU: A Vital Signs Dataset of Inpatients from the General Ward
We appreciate all contributions. If you are planning to contribute bug-fixes, please do so without any further discussion. If you plan to contribute new features, utility functions or extensions, please first open an issue and discuss the feature with us. For more detailed guidelines head over to the official documentation.
This package has been developed by
- Avik Pal (@avik-pal)
- Aniket Das (@Aniket1998)
This project exists thanks to all the people who contribute.