Predict
Category Submission: Exciting X-Factors
Predict is a simple but powerful Machine Learning SMS API that can predict the gender of an individual from their first name.
Demo Link
https://twilio-predict.herokuapp.com/redoc
Link to Code
https://github.com/diop/predict
Example
- Web --> https://twilio-predict.herokuapp.com/predict/michelle
- SMS --> https://twilio-predict.herokuapp.com/hook
Software Requirement
- Python 3.7 or later
- FastAPI
- scikit-learn
- Jupyter Notebook
- A Twilio account - sign up
API Documentation
How I built it (what's the stack? did I run into issues or discover something new along the way?)
As I mentioned in my previous post, SMS is a great equalizer when it comes to democratizing access to artificial intelligence. My idea was to build a Machine Learning model and be able to serve it via SMS as a proof of concept.
With SMS one does not need an internet connection or powerful mobile phones to have access to life-changing services. Only a cellular connection will suffice. What if we can leverage that basic text message infrastructure to empower the people who need it the most, and give them access to intelligence augmented services? Because then all of a sudden a farmer in a remote area can text a photo of his crop to get diagnosis or prediction on the crop's health. Somewhere else, in a remote area, a nurse can text the photo of skin leisure and get diagnostic on that particular disease. The possibilities are endless!
In this hackathon, I wanted to focus on the problem-solving aspects of SMS because most people who live in the developed world have no idea what it's like to live without adequate internet access.
There were 3 parts to my process. The first step was to gather the dataset of names, male and female. The second step was to do some data analysis and make sure that the dataset did not have any missing or duplicated values. I also needed to check if the dataset was balanced as well, meaning that I had a good even ratio of female names to males ones, not to introduce some biases in the machine learning model. Finally, the third step was to build the model and deploy it so that the Twilio client could consume it.
This process is almost typical for any machine learning model that needs to be deployed to production. Let's help make the world a better place!
Top comments (0)