machine learning vs rule engine

When to use Machine Learning and when NOT to

Today everyone seems to agree that machine learning is the new cool kid. But when does it actually make sense to utilize machine learning to solve your problems? Hopefully this guide will give you an idea!

What kind of Problems are Solveable with Machine Learning?

So, what problems can machine learning solve? Machine learning algorithms can mainly be used for two things:

  • Supervised learning: Predicting what will happen in the future, given historical data. This is called supervised learning.
  • Unsupervised learning: Finding patterns in data. This is called non-supervised learning.

The field of study has many applications, including health, transport and marketing.

A topical application of supervised learning is the classification of images. For example, in many cases a doctor can tell if a tumor is benign or malignant by looking at pictures of it. This problem can be solved by machine learning. Using historical data, it is possible to create a model that can predict whether a tumor is benign or malignant. Classifying images of tumors is a job that many places do manually today. Here, machine learning has the potential to both streamline the process and reduce the margin of error.

Another well-known example, which probably seems rather mysterious to many, is self-driving cars. The self-driving cars have collected data from previous trips. In new traffic situations, the car will make decisions based on experiences from similar situations. It is thus dependent on huge data sets to avoid critical mistakes. Once the decision and outcome of the new traffic situation has been taken, this is added to the dataset. In this way, self-driving cars will constantly improve.

An example of unsupervised learning is the grouping of customers. Same types of customers will end up in the same customer group. This can be useful if, for example, we want to give different customer groups different follow-up, recommendations or advertising.

Prerequisites for using Machine Learning

If we have a need that falls into one of the two problem types mentioned above, it may be appropriate to solve it using machine learning. However, the fact that the problem falls into these groups is not enough to say with certainty that the best way to solve the problem is with a machine learning algorithm. There are some important factors that should also be in place:

  • Large amounts of data: We should have large amounts of good, historical data. How much and what data is needed depends on the problem to be solved.
  • Rule engine is not an option: We should not use machine learning to solve a problem if it is possible to solve it using a rule engine.
  • There are no established algorithms: We should not use machine learning to solve a problem if there are already established algorithms for the specific problem.
  • Many input variables: In order to use machine learning we prefer to have many input variables. If we have few input variables it can often be worthwhile to solve the problem using a non-iterative method.


Let’s avoid wasting time and/or money on machine learning solutions if there are better alternatives. Machine learning algorithms can be unbeatable when used properly, but some factors such as large amounts of data and good input variables must be in place to achieve good results.

Check out our other machine learning guides here.