darklorddad/HF-Swinburne-COS30082-AML-Multi-Class-Classification
Multi-Class Classification (Bird Species)
 
Project Overview
This project tackles the challenge of fine-grained visual categorisation by classifying 200 different species of birds. The primary goal is to build and train a model that can accurately identify bird species from images, using deep learning techniques.
Dataset
The project uses the Caltech-UCSD Birds 200 (CUB-200) dataset. This is a challenging image dataset containing photos of 200 bird species, primarily from North America.
- Total Species: 200
- Total Images: 6,033
- Class Distribution: The number of images per class is imbalanced, ranging from 20 to 39 images per species in the training set.
/Class-distribution.png)
Methodology
Several models were trained to find the best-performing architecture for this classification task. The approach uses transfer learning, fine-tuning pre-trained models that have demonstrated strong performance on general image classification tasks.
Results
The performance of each model was evaluated on the test set. The SwinV2-Large model achieved the highest accuracy.
Evaluation
The model's performance is evaluated using two primary metrics:
- Top-1 Accuracy: The overall classification accuracy across all test images.
- Formula:
Top-1 accuracy = (1/N) * Σ_k=1^N 1{argmax(y) == groundtruth} - Average Accuracy Per Class: The average of accuracies for each individual bird species, providing insight into the model's performance on a per-class basis.
- Formula:
Ave = (1/C) * Σ_i=1^C T_i
Where N is the total number of testing images, C is the total number of classes, y is the output probabilities, and T_i is the average accuracy for class C_i.
Licence
This project is licensed under the GNU Affero General Public License v3.0. See the LICENCE file for full details.
Copyright (C) 2025 darklorddad
