How shayan-zavvarei/quickdraw_cnn works
This repository is an educational assignment and reference implementation for training and evaluating a PyTorch CNN on QuickDraw drawings. The workflow loads labeled image folders, splits them into training and test sets, trains a 100-class model, evaluates and plots metrics, then saves weights for later evaluation. The README also requires a PDF report; the supplied tree contains report guidance, but no notebook or report-generation implementation. Source excerpts are partial, so the graph omits uncertain wiring.
Main entry points: QuickDraw_CNN_Code.py DataLoaders · Report_Template.md PDF report
Components 15
Data preparation
- QuickDraw dataset
QuickDraw_CNN_Code.py - Image transforms
QuickDraw_CNN_Code.py - Train/test split
QuickDraw_CNN_Code.py - DataLoaders
QuickDraw_CNN_Code.py
Model training
- CNN model
QuickDraw_CNN_Code.py - Training loop
QuickDraw_CNN_Code.py - Epoch evaluation
QuickDraw_CNN_Code.py
Evaluation and deliverables
- Metric history
QuickDraw_CNN_Code.py - Metric plots
QuickDraw_CNN_Code.py - Detailed evaluation
QuickDraw_CNN_Code.py - Saved weights
QuickDraw_CNN_Code.py - Reload evaluation
QuickDraw_CNN_Code.py - PDF report
Report_Template.md
Other components
- Student
- Class images
Connections 18
- Student → QuickDraw dataset: runs workflow
- Class images → QuickDraw dataset: loads images
- QuickDraw dataset → Image transforms: applies
- QuickDraw dataset → Train/test split: provides samples
- Train/test split → DataLoaders: creates loaders
- DataLoaders → Training loop: batches data
- Training loop → CNN model: updates weights
- Training loop → Epoch evaluation: evaluates epochs
- Epoch evaluation → Metric history: records metrics
- Metric history → Metric plots: plots metrics
- DataLoaders → Detailed evaluation: supplies test data
- CNN model → Detailed evaluation: predicts classes
- Training loop → Saved weights: saves state
- Saved weights → Reload evaluation: loads state
- DataLoaders → Reload evaluation: supplies test data
- CNN model → Reload evaluation: provides architecture
- Metric plots → PDF report: supports report
- Detailed evaluation → PDF report: provides results