Top 4 learnings from implementing machine learning for startups
CTO - 26 June 2020 -
CTO - 26 June 2020 -
Every technology startup needs to embrace machine learning and AI to stay relevant in their business. Thanks to the buzz around AI / ML and VC’s interest to see AI / ML in the decks used by founders to pitch their ideas, startups are figuring out ways to introduce machine learning into their products. Machine learning, if implemented well, can have a direct impact on their ability to succeed and raise the next round of funding. However, the path to implementation of machine learning solutions for a startup does come with a baggage of hurdles.
So why it is hard to implement machine learning-backed features for startups? Let’s go through the top considerations to implement ML for a startup and the right ways to address them-
A machine learning model is as good as the data used for training it. For most startups, the biggest challenge is the availability of data, especially the one that is related to their business problem. Generic datasets are not useful when it comes to the unique problems that startups are trying to solve. They would have to get hold of data for the feature they plan to roll out first. How does one get out of such a catch-22 situation?
One way to do this is to start with a simple machine learning model that can work with sparse data, refine it with rule-based extraction techniques, and roll out the model/ a subset of the feature to the customers. For improving the model, try and set up a pipeline for a collection of labeled data. Techniques such as data fingerprinting using autoencoders can also be used to incrementally develop the ML model.
With the spiraling popularity of neural networks and their success in case of face recognition and other object recognition problems, most startups tend to implement neural networks to solve business problems. Some of the challenges faced while implementing neural network-based solutions are-
Machine learning models based on regression, decision trees, and Support Vector Machine (SVM) can serve as a good starting point.
Why do we need a data pipeline when there is no data? Most people assume that once a model goes into production, the job is done. In reality, it’s just the beginning. The model performance in the test and production environments could vary based on the distribution and the size of data. Many times, the choice of the algorithm also depends on the scale of execution. One might need to compromise on the model accuracy and choose a simpler algorithm to ensure that the model scales and also controls cost.
In order to measure the performance of the model in production and iteratively improve upon it, a data pipeline is required to collect data, label data, retrain the model, and validate before deployment. Setting up the right validation method is also a key challenge, which I shall be discussing later in a separate article.
Considering all the above tasks, every startup needs a data scientist with a deep mathematical background, problem-solving skills, and engineering expertise. Most Data Scientists / Machine Learning experts have a post-graduation in mathematics and are best at building complex models but aren’t necessarily good at implementing an incremental engineering solution.
Individuals excelling in both engineering and mathematical skills are rare to find and expensive to hire. But then, the question is- do we need data scientists? Can ML services such as AutoML or AmazonML do the job for us? Unfortunately, no. What these platforms provide is a set of tools for data analysis and model building. Startups still need a seasoned data scientist who’d flawlessly discovers features, figure out the model, and choose the right validation method.
The idea of pairing up a data scientist with a product engineer works really well. While the product engineer helps with the data pipeline and the extraction rules, the data scientist focuses on feature engineering, model development, and validation.
A machine learning solution can take considerable time to build, and it might require a year or two to attain absolute accuracy in terms of performance. It also requires IT infrastructure to store and process the data, which could turn out to be an expensive pursuit. Startups cannot afford to wait for a year to figure out if the problem can be solved or not making the use of ML. So, it’s imperative to know the efficacy of the solution as early as possible. In other words, fail fast.
Similar to the lean methodology for product development, startups need to adopt an iterative approach to ML model development – starting with simple models, setting up a data pipeline to collect labeled data, and move towards more complex algorithms.