Thanks to the Fast.Ai + PyTorch, I finally trained my bird model with just the 1st one lesson.
What more fascinating is that coding with Fast.Ai is incredibly simple!
Here is my bird detection demo video link
1. My application scenario:
Basically, I am doing categorical classification. So I have data set for birds and data set for not birds(which includes many objects, e.g. human, backyard, cats, dogs, ponds as I will use my bird model in my backyard and these are the possible objects).
So my need is: I just need to know whether there are birds or not in the camera’s vision.
My question is: Is binary classification the right way to go? If yes, how to do it? If no, then what’s the correct way to detect birds-or-not-birds?
2. Comparison between Fast.Ai + PyTorch + ResNet50 V.S. Keras + Tensorflow + InceptionV3
Previously, I spent weeks on Keras + Tensorflow to train my bird model, the training for 8000 images(train + validation) with Inception V3 using transferring learning took 2hours for each epoch; whereas same data set, same batch size(48), but with ResNet50 + Fast.Ai, each training epoch only took around 50 seconds~!
Also, I found that Fast.Ai + PyTorch take much more advantage of GPU (99%) than Keras + Tensorflow (16%), so I’m quite happy to see such great improvement with much less time required.