A systematic approach to improving image classification accuracy on the CIFAR-10 dataset using PyTorch.
This project explores various techniques to improve deep learning model performance on CIFAR-10:
- Experiment tracking system for comparing different configurations
- GPU acceleration (optimized for RTX 5090)
- Systematic hyperparameter tuning
- Model architecture improvements
- Data augmentation strategies
- Automated Experiment Tracking: Every training run is tracked with hyperparameters, accuracy, and timing
- GPU Support: Automatic device detection and optimization for CUDA-enabled GPUs
- Results Visualization: Color-coded comparison tables showing all experiments
- Persistent Storage: CSV export/import for tracking experiments across sessions
pip install torch torchvision numpy matplotlib pandas- Open
image_classifier.ipynbin Jupyter - Run cells 1-3 to setup environment and load data
- Modify hyperparameters in cell 7 for different experiments
- Run training cells (7-8)
- Evaluate and track results (cells 13-15)
Each experiment automatically records:
- Model architecture
- Hyperparameters (learning rate, batch size, optimizer, etc.)
- Training time
- Test accuracy
- Device used (CPU/GPU)
View all experiments in a comparison table with color-coded accuracy metrics.
CIFAR-10: 60,000 32x32 color images in 10 classes
- 50,000 training images
- 10,000 test images
- Classes: plane, car, bird, cat, deer, dog, frog, horse, ship, truck
├── image_classifier.ipynb # Main notebook with experiment tracking
├── data/ # CIFAR-10 dataset (auto-downloaded)
├── experiment_results.csv # Saved experiment history
└── cifar_net.pth # Saved model weights
- Increase epochs (50-100+)
- Add data augmentation
- Increase batch size
- Use Adam optimizer
- Deeper architectures (ResNet)
- Batch normalization
- Learning rate scheduling
- Ensemble methods
Track your progress! Each run is saved to experiment_results.csv and can be visualized in the results table.
MIT License
- CIFAR-10 dataset from Canadian Institute for Advanced Research
- PyTorch team for the excellent framework