Computer Vision
Monkey Breed Classification
Transfer learning on VGG16 pushes monkey breed classification from 78% (trained from scratch) to 96%. Plus CAM heatmaps showing where the network actually looks — turns out it is mostly the eyes and nose, not the fur.

Objectives
- 1Apply CNNs to monkey breed classification using Transfer Learning.
- 2Visualize CNN internal state using CAM method.
- 3Compare VGG16 and VGG19 network performance.
- 4Compare CNN with skip connections vs Transfer Learning networks.
Conclusions
- Transfer Learning with VGG16 achieved 96% accuracy versus 78% for CNNs trained from scratch.
- VGG16 and VGG19 showed similar performance, with VGG16 being more efficient due to fewer parameters.
- CAM visualizations reveal the network focuses on facial features, particularly eyes and nose, for classification.
- Skip connections improve gradient flow but do not outperform pre-trained ImageNet weights for this dataset size.
Technologies
- NumPy
- Pandas
- Matplotlib
- Seaborn
- OpenCV
- Keras
- TensorFlow
- VGG16
- VGG19
- FastAPI