We’re probably not that good.
But on October 2019, I led a small team of software developers to the CodeNaija Hackathon organized by Andela and Github, and sponsored by Flutterwave and Microsoft, and out of the 20+ teams that competed, we bagged the win.
We built an offline-supported android application that uses machine learning to help cassava farmers detect early cassava disease infestation.
Using a dataset of cassava images from Kaggle, which included four labels of different classes of cassava diseases and one extra label for healthy images, we tried training simultaneously in Google Cloud AutoML and TensorFlow.
And for reasons relating to lack of much time, we had to stick to AutoML. However, for the sake of cost in AutoML, we needed to reduce the number of each labelled class of images, and still satisfy AutoML’s required amount of the different labels with which to train.
Then, we trained and evaluated twice for a total of about 4 hours, and felt the last of the two models was good to go.
Since, AutoML allows to export trained models into TFLite packages so they can run on edge or mobile devices, we were able to download the converted model and include in our Android app for farmers’ offline use.
And although quite unstable and incomplete, see a demo here, where:
- the first scanned test image is labelled Healthy,
- the second test image is labelled Infected with CMD,
- the third test image is labelled Infected with CBB,
- the last test image is labelled Healthy.
Andela Nigeria made a twitter thread about each winning team and their solutions. See below:
Much later, Github also made a blog post (https://github.blog/developer-skills/application-development/presenting-codenaija-a-hackathon-hosted-by-andela-and-githubs-blacktocats/) and tweeted about it:
We’d definitely do more work on it. Right now, we’re enjoying the scope engagement meetings with Matt of M12.