The model architecture used is similar to Resnet9 but smaller and faster. Few convolutional layers with residual layers in between them, along with batch normalization is used. It is trained using PyTorch and then converted to ONNX format for easy deplyment using Heroku. For the UI, Streamlit has been used.
Dataset used for training is from Kaggle BIRDS SPECIES IMAGE CLASSIFICATION which contains over 58000 training images of more than 300+ species.
View the notebook here: bird_species_classification.ipynb
Predictions on unseen test data: