/GAN-MNIST

Primary LanguagePythonMIT LicenseMIT

# GAN-MNIST

Objective

This is a task to using a GAN to generate fake MNIST images.

Getting started

After cloning this repo, install dependencies

# [OPTIONAL] create conda environment
conda create --name pantheon-py38 python=3.8
conda activate pantheon-py38

# install requirements
pip install -r requirements.txt

Train model with experiment configuration

# default
python run.py experiment=train_mnist_gan.yaml

# train on CPU
python run.py experiment=train_mnist_gan.yaml trainer.gpus=0

# train on GPU
python run.py experiment=train_mnist_gan.yaml trainer.gpus=1

You can override any parameter from command line like this

python run.py experiment=train_mnist_gan.yaml trainer.max_epochs=20 datamodule.batch_size=32

WANDB Graphs and Results

  1. Baseline model (Original model without any change: lr: 0.00002; batch_size=32; epochs=20)
    • example_train
    • example_train
  2. CNN-Based GAN (CNN-based GAN: lr: 0.00002; batch_size=32; epochs=50)
    • example_train
    • example_train
  3. CNN-Based GAN on FashionMINST (CNN-based GAN: lr: 0.0002; batch_size=256; epochs=45)
    • example_train
    • example_train