Follow the White Rabbit

The field of artificial intelligence and machine learning has exploded in the last decade. And thanks to The Matrix and Keanu Reeves, it’s all a bit scary and sexy. In this post, I’ll talk about some basic concepts of machine learning. Like with kids, there are different “learning styles”; in the case of the machines, they’re known as either supervised or unsupervised learning.


You can teach a child to do something. You can even teach a dog! But, you cannot teach a machine. The word is train. Write that down because machine learning people will get very upset if you continually use the word “teach”.

machine learning
A couple of smart computers

Algorithms and Predictions

Usually, when you write a computer program, it is a set of specific instructions telling the computer what to do. In machine learning, the program you write (called an algorithm) builds a mathematical model out of the information (data set) you feed the computer. You’re basically asking the machine to figure out patterns in the data and make predictions about new data based on old (training) data.

Supervised Learning

There are two different types of “learning”: supervised versus unsupervised. In supervised learning, you’re training the machine to give you an answer based on the information you’ve fed it (data set). For example, I want the computer to classify cells for me. Sure, I can classify these cells myself, but if I have 200,000 pictures, wouldn’t it be faster to just automate the identification process?

To start, I provide the machine with 10,000 pictures of all different kinds of bacteria, all labeled and already-identified (by me, the human) as “prokaryotes”. Then, I give it another 10,000 pictures of already-labeled and identified “eukaryotes”. The learning algorithm should be able to pick up on similarities and patterns from each set of data. Next time I show the computer a completely novel picture of… let’s say, Salmonella, it should be able to accurately conclude that the image is a prokaryote.

Unsupervised Learning

Sometimes, we’re not looking for a result. Sometimes, we just want the machine to pick up on patterns we, humans, may miss. Unsupervised learning gives the machine a data set and asks it to find those patterns. For example, I give the computer the lipid profiles (HDL, LDL, triglyceride levels) of 10,000 people. The algorithm will sort through all this data (faster than I can) to tell me what they all have in common and what patterns it sees in this data set. If I’m able to link this information to the patients’ cardiovascular health, it could potentially help me identify high-risk heart attack patients.

And that’s it, a little bit of information on what machine learning is about and how it’s done. I hope this post has inspired you to delve deeper into the field of machine learning. Or perhaps you now feel the urge to unplug Alexa.