Wikipedia defines machine learning as:

“the study of computer algorithms that improve automatically through experience”

This definition is very vague, and despite there not being a unique way to precisely describe the field, there are definitely better options.

These are a couple of definitions.

Machine learning…

  1. “… is the science of programming computers so they can learn from data
  2. “…is the field of study that gives computers the ability to learn without being explicitly programmed
  3. …is a sub-field of Artificial Intelligence (AI) that involves self-learning algorithms that derive knowledge from data

Notice how all these definitions have two things in common: programming and data. The usual way to build a computer program is to write code in a specific programming language and explicitly define its whole behaviour.

With Machine learning, what you do is let the program decide what to do by feeding it some data that defines this behaviour.

Let’s use a very simple example to quickly see the differences between a traditional computer program and software built using Machine Learning.

Before Machine Learning, email spam filters were built using a series of rules to detect if the incoming mail was spam or not.

For example, if it contained the words ‘Buy’, ‘Discount’, or ‘Price’, a lot of words in capital letters like ‘ DO THIS TO GET THE BEST SLEEP OF YOUR LIFE…’, an un-conventional sender like ‘kgsffsw@megaspammer.com’, or a combination of the previous, then the mail was classified as spam.

If none of the rules could apply to the mail, then it was sent through to our inbox. This meant that humans had to study spam e-mails, come up with a series of common characteristics, and then define a set of rules that would identify them.

With Machine Learning we let a computer do all these tasks, by teaching it to do them using data. Every time an email appears in your inbox and you send it to the spam folder, you are contributing to the improvement of intelligent spam filters that use ML.

Once enough mails have been manually classified as spam (in this manner or others), a set of emails composed of spam and not spam (as the system has to learn to differentiate between the two) is fed to the computer, that using statistics and mathematics learns to distinguish spam from not spam.

Now when a new email comes, this computer that has already learned to differentiate between spam and not spam, can decide whether to allow it into your inbox or not.

This is a very simple example that illustrates what Machine Learning is: a way of programming computers so that THEY can find patterns in data, learn from them, and use these lessons for different tasks.

What Machine Learning really is: Maths and Statistics

This can all sound very pretty and sophisticated, but in the end, Machine Learning is just maths and statistics, with the help of tremendous amounts of data, the appearance and improvement of complex algorithms, and amazing computing capabilities. And despite all the mystery around Machine Learning, it is no magic, it is simply an amazing technology.

Machine Learning and Artificial Intelligence

Machine Learning is a field that, as one of the three offered definitions mentioned, is a part of the wider framework of Artificial Intelligence.

This makes sense as if in broad terms AI tries to achieve some sort of intelligence using non-biological systems, shouldn’t one of the main characteristics of these systems be the ability to learn?

So from now on, when you hear Machine Learning or Artificial Intelligence, know that they are not the same and that the former is generally perceived as a branch of the latter.

What is Machine Learning used for?

Machine Learning is seamlessly integrated into our everyday life, without most of us knowing it. If you are wondering what Machine Learning can do, a quick Google search will return an interminable list of applications. Some of the coolest ones are:

  • It is at the heart of most of the autonomous driving systems, like the autopilot in Tesla cars for example.
  • It is the core of the software of our voice assistants like Alexa, Siri or Cortana.
  • Netflix, Amazon, and all those platforms that recommend us movies or products build these systems using Machine Learning.
  • And much more troubling stuff: DeepFakes, the videos of famous people saying stuff they didn’t really say, are made using Machine Learning.
  • Face recogniction.
  • Image classification software to help doctors in cancer detection.
  • Predictive Maintenance tools as we develop in Seetalabs!

So, Machine Learning and AI are not Skynet.