Making Bird.Id

Bird.Id was created as an early project for Fast.ai’s deep learning course. The primary aim was to complete an end-to-end example.

Screenshot_2019-12-14 Bird Id

The dataset consists of images of 10 bird species, the ones mostly commonly found in New Zealand’s forests, and totals ~1000 raw images. Data transformations from the fastai library are used to increase the size of the dataset for model training.

The model architecture is resnet34 available in Pytorch and wrapped for convenience by fastai.vision. Training was run using Jupyter Notebooks and Google’s Colabratory.

Having read, listened-to, and tried a number of approaches to deep learning, the approach outlined above is, I believe, the easiest learning pathway to a functioning neural net using current tooling.

Bird.Id is split between a user interface (UI) and a REST API which hosts the model. Both are hosted on Azure using low tiers.

  • Build the UI in the language/framework you know as it’s the least interesting part of the project. I used ASP.NET Core.
  • The REST API is built with Docker, Gunicorn, Flask, and Python. Useful links are:
    • Cougar or not (for hosting a fastai model in a python app)
    • Pytorch (for hosting Pytorch in Flask)

 

Go to Bird.Id