Pre-trained GANs, VAEs + classifiers for MNIST / CIFAR10
A simple starting point for modeling with GANs/VAEs in pytorch.
- includes model class definitions + training scripts
- includes notebooks showing how to load pretrained nets / use them
- tested with pytorch 1.0+
- generates images the same size as the dataset images
mnist
Generates images the size of the MNIST dataset (28x28), using an architecture based on the DCGAN paper. Trained for 100 epochs. Weights here.
data samples | dcgan samples | vae samples |
---|---|---|
For comparison with a less complicated architecture, I've also included a pre-trained non-convolutional GAN in the mnist_gan_mlp folder, based on code from this repo (trained for 300 epochs).
I've also included a pre-trained LeNet classifier which achieves 99% test accuracy in the mnist_classifier folder, based on this repo.
cifar10
The cifar10 gan is from the pytorch examples repo and implements the DCGAN paper. It required only minor alterations to generate images the size of the cifar10 dataset (32x32x3). Trained for 200 epochs. Weights here.
data samples | generated samples |
---|---|
I've also linked to a pre-trained cifar10 classifier in the cifar10_classifier folder from this repo.
cifar100
Similiar to the above gans, the cifar100 gan here generates 32x32x1 images for generating grayscale images. Trained for 200 epochs. Weights here. There are also weights/code for generating images which are 34x45x1.
data samples | generated samples |
---|---|
reference
- based on the official pytorch examples repo with modifications to generate the appropriate size
- feel free to use/share this code openly
- for similar projects, see related repos: (e.g. imodels, neural-network-interpretations) or my website (csinva.io)
- tweets @csinva_