Abstract
This study presents a low-level Convolutional Neural Network (CNN) implemented from scratch in Python for fine-grained pet breed classification on the Oxford-IIIT Pet Dataset. The project is motivated by the limited transparency of high-level deep learning frameworks, which often obscure core operations such as convolution, activation, pooling, backpropagation, and parameter updates. To address this, the study develops a custom CNN pipeline using fundamental numerical operations in order to examine both classification performance and the internal mechanics of CNN learning. The dataset contains 37 pet breed categories and more than 7,000 images, providing a challenging benchmark due to substantial variation in pose, scale, illumination, and background, as well as strong visual similarity among breeds. The proposed system includes manual data preprocessing, label encoding, image normalization, train-validation-test splitting, training-time augmentation, and a custom CNN architecture composed of three convolutional blocks followed by two fully connected layers. The model is trained and evaluated using loss, accuracy, weighted F1-score, and confusion matrix analysis. Experimental results show that the network performs clearly above random guessing, achieving a validation accuracy of 0.3099 and a test accuracy of 0.2578, with corresponding weighted F1-scores of 0.2994 and 0.2647. Although the performance remains modest compared with advanced framework-based systems, the results demonstrate that a from-scratch CNN can learn meaningful visual representations for a difficult multi-class classification task. Overall, the study contributes a practical baseline model and a transparent implementation framework that supports deeper understanding of convolutional neural networks from both mathematical and computational perspectives.
Advisor
Nord, Alex
Department
Computer Science
Recommended Citation
Do, Quoc, "From Pixels to Patterns: A Low-Level Convolutional Neural Network for Pet Detection" (2026). Senior Independent Study Theses. Paper 13414.
https://openworks.wooster.edu/independentstudy/13414
Disciplines
Computer and Systems Architecture | Other Computer Engineering
Keywords
Machine Learning, neuron Networks, Convolutional, CNN
Publication Date
2026
Degree Granted
Bachelor of Arts
Document Type
Senior Independent Study Thesis
© Copyright 2026 Quoc Do
