This repository contains the implementation of various generative models, e.g., GANs, VAEs, Transformers, Diffusion Models, etc.
GANs folder contains the implementation of various GANs, e.g., DCGAN, cGAN, AcGAN, LS-GAN etc.
src
folder contains the implementation of the GANs, and notebooks
folder contains the notebooks used to train and test the models.
- Conditional DCGAN (cDCGAN) | Notebook
- Auxiliary Classifier GAN (ACGAN)
- Conditional GAN (cGAN) | Notebook
- Vanilla GAN | Notebook
- Least Squares GAN (LS-GAN)
- VAE-GAN | Notebook
Here are some of the results of the GANs implemented in this repository:
-
Conditional DCGAN
The title shows the label of the generated image, and the image is the generated image.
AE_VAEs folder contains the implementation of various Autoencoders and Variational Autoencoders.
src
folder contains the implementation of the models, and notebooks
folder contains the notebooks used to train and test the models.
- Autoencoder | Notebook
- Denoising Autoencoder (DAE) | Notebook
- Variational Autoencoder (VAE) | Notebook
- Conditional Variational Autoencoder (cVAE) | Notebook
Here are some of the results of the AE_VAEs implemented in this repository:
-
Autoencoder
The image shows the original and the reconstructed digit from the MNIST dataset.
-
Conditional VAE
The image titile shows the label of the generated image, and the image is the generated image.
Understanding AE&VAE:
Understanding GANs:
Understanding Transformers:
Understanding Diffusion Models:
- https://encord.com/blog/diffusion-models/#:~:text=Diffusion%20models%20are%20a%20class%20of%20generative%20models%20that%20simulate,a%20sequence%20of%20invertible%20operations
- https://lilianweng.github.io/posts/2021-07-11-diffusion-models/
- https://www.assemblyai.com/blog/diffusion-models-for-machine-learning-introduction/
requirements.yml file contains the list of all the required libraries to run the code in this repository.
To install the required libraries, run the following command:
conda env create -f requirements.yml