Machine learning is a combination of various scientific branches, including applied mathematics, probability, statistics, and computer science.
For ML to function, it needs data. A machine learning system learns from datasets and makes decisions without human intervention based on this data. An ML model requires one or more inputs (features in datasets). The system learns from these inputs (through training or fitting) and produces an output (decision or prediction).
Some problems can be tackled by analysts and developers simply by observing and finding patterns in the data (using traditional software). However, when the data has too many features, this task becomes extremely difficult. In such cases, machine learning is very helpful and quite fast at solving these kinds of problems.
A rule-based system has a well-defined and limited set of rules. It can tackle the problem for which it was created as long as it doesn't encounter cases that aren't covered by those rules. Rule-based systems can have extremely complex designs and handle thousands of cases, but they’ll inevitably fail after a while.
Regarding the code used, covering thousands of cases requires a complex series of rules. This code becomes difficult to maintain and understand. Adding new rules to the code risks breaking the existing logic.
At this point, a machine learning solution becomes preferable to a rule-based solution. A machine learning system can discover new patterns on its own (through statistical methods) without human intervention and without breaking the existing logic. When faced with new, unseen patterns, an ML system is able to improve and adapt its existing patterns.
Machine learning is beneficial when the problem is too complex to handle with traditional software, when there's a large amount of data to process, or when the data has a complex architecture, such as image, audio, or text files. If new, unseen cases consistently present novel patterns, then machine learning is the best option.
Some application of machine learning include: