A lightweight Streamlit web application that visualizes and compares predictions from two trained models on Fashion-MNIST:
- Custom CNN (baseline model)
- VGG16 Transfer Learning (feature extraction / optional fine-tuning)
The app supports image upload, shows the input image, provides class probabilities + predicted class, and displays training curves (loss/accuracy) loaded from saved artifacts.
This project demonstrates practical skills in:
- Building a simple ML web app for inference and visualization
- Packaging and loading trained TensorFlow/Keras models (
.keras) - Handling preprocessing for different model input formats (28×28 grayscale vs 224×224 RGB for VGG16)
- Showing probability distributions and readable outputs for end users
- Logging and visualizing training history (loss/accuracy) from saved artifacts
Upload an image (jpg/png)
Display the uploaded image
Select model: Custom CNN vs VGG16
Predict class + show probabilities (Top-K table + bar chart)
Show training curves (loss/accuracy) from saved history JSON files