Do you really need to use it?
Machine learning (ML) is not a magic stick that you can touch on all your problems and wait for a reliable solution.
Advances in ML in terms of accuracy and speed have made us blatantly approach any problem with an ML-based solution in mind.
It is a dangerous state of mind, which is likely to produce unprecedented results. I can assure you that you don’t want unprecedented production results.
In this article, we’ll go over 4 questions that need to be answered before considering ML as the solution to your problem.
1. Do you have training data that has similar characteristics or patterns with the data you want to make predictions for?
ML is not magic. He cannot produce without being trained first. Therefore, the first and foremost requirement of any ML system is data. Before determining if we can apply ML to a problem, we need to make sure we have access to the data.
But the data we will use to train a model must have similar patterns to the data we want to predict.
Let’s say we want to train a model for making movie recommendations on a platform. If we train it with data from before 2000, it’s likely to fail to make good recommendations because people’s tastes change over time.
In some cases, the data has no model. It follows a purely random process.
2. Is there an easier solution?
Some of the problems are so trivial that you don’t need an ML system to solve them. In such cases, simpler solutions should be preferred as it takes relatively more time and money to implement the ML-based solution.
Consider a sales forecasting task and you have two candidates for the solution. One is done by taking the moving average based on the previous days and weeks. The other is an ML model with dozens of features calculated using a large amount of data.
If the former provides a fairly good solution or is outperformed by the ML model by a very small margin, you should probably choose the simpler moving average model. Spending more time and money on the ML model might not be worth the small improvement. Additionally, once you decide to scale, the cost of deploying the ML model can increase significantly.
3. Is it profitable?
This is related to the previous point of choosing between a simpler solution and a complex ML model. However, in this case you only have an ML model as a solution to our problem.
Even if ML is the only solution, it might not be something you want to adopt. You should pay special attention to monetary rewards.
Creating an ML system and deploying it in production costs money. If you work with large amounts of data, which is usually the case, the costs increase considerably.
Collecting, storing and processing data and training models in the cloud can be a huge expense.
It comes down to comparing the value ML provides to your business and the cloud bill you receive. If you’re spending thousands of dollars running an ML system on the cloud and your business is getting very little out of it, you should probably look for a better solution.
4. Can you afford mistakes?
Even if you create a cutting-edge model that works very well, there will be errors. No ML model will be 100% accurate.
So the question is whether you can afford to make mistakes. Think of cancer detection on x-rays. This is literally a life-saving case. Would you only trust an ML model for this task?
The ML model can be used as a supporting document, but it cannot be trusted to make the final call.
Machine learning is a high-performing tool that helps solve many problems in various businesses. However, it is not the ideal solution for all tasks.
The issues mentioned in this article should be resolved before investing time and money in an ML-based solution.
Machine learning is great but not always your best friend.
You can become a average member to unlock full access to my writing, as well as the rest of Medium. If you already are, don’t forget to subscribe if you would like to receive an email each time I publish a new article.
Thanks for the reading. Please let me know if you have any comments.