VR

GAN for MNIST Synthesis

Generative Adversarial Network trained on MNIST and deployed as a live demo on HuggingFace Spaces.

PythonPyTorchGradioHuggingFace SpacesDocker

What This Is

A GAN that generates handwritten digits, trained on MNIST and deployed as a live interactive demo on HuggingFace Spaces. Training the model was the straightforward part. Building the pipeline around it — Gradio app, Docker container, CI/CD to HuggingFace — was where most of the work went.

How It Works

  • Generator (1.49M params) and Discriminator (1.46M params) trained on MNIST with LeakyReLU and Batch Normalization for stable training
  • Gradio web app with structured logging, type hints, and input validation
  • Automatic GPU detection and acceleration
  • Deployed to HuggingFace Spaces with CI/CD integration

Results

  • Live demo running on HuggingFace Spaces where anyone can generate digits
  • Containerized with Docker for portable deployment
  • Model serialization optimized for fast inference