An exploration and implementation of image classification on the Fashion-MNIST dataset using both PyTorch and TensorFlow / Keras.
This repository demonstrates model construction, training, and performance evaluation across PyTorch and TensorFlow frameworks.
The project itself was originally part of a project done for ECS 170 at UC Davis. I ended up coding it in both:
- PyTorch
- TensorFlow
Consequently, the goal of this project evolved into a personal project to compare model implementation workflows and performance on the Fashion-MNIST benchmark dataset using the two distinct frameworks.
Fashion-MNIST consists of 70,000 grayscale images (28x28 pixels) spanning 10 distinct clothing categories (60,000 training images and 10,000 test images).
Categories:
T-shirt/top, Trouser, Pullover, Dress, Coat, Sandal, Shirt, Sneaker, Bag, Ankle boot
Note: This codebase was originally written ~3 years ago. While the core deep learning architecture and logic remain sound, some dependencies or API calls (e.g., legacy
torchexport interfaces or earliertf.kerassyntax) may trigger deprecation warnings in newer framework releases.There may also be some bugs in the current TensorFlow version. Planned Updates / Roadmap:
- Refactor PyTorch training loop to use current
torch.compileand moderntorch.exportstandards.- Update TensorFlow dependencies and test compatibility against latest Keras versions.
- Check for and fix any possible bugs in the TensorFlow Implementation
- Add
requirements.txt/environment.ymlwith pinned legacy versions for reproducible environments.
.
├── pytorch/ # PyTorch dataset loading, model definitions, & training scripts
├── tensorflow/ # TensorFlow/Keras scripts & evaluation
└── README.md