You’ve heard this before, AI will take your job, cook your dinner, and then eat it for you. There’s been a lot of hype around “artificial intelligence”, “machine learning”, “neural networks”, “big data” etc, so if it still feels like magic, let’s reveal the guy behind the curtain.
The best way to think about artificial intelligence (AI) is as a decision-making tool. The tool doesn’t know why it’s making a decision, but will make one nevertheless. Back when calculators were too big, and slide rules were still a thing, one could describe a machine as intelligent if it could solve math problems. Today, intelligence means deciding whether a credit card transaction is considered fraud, whether you’re located east or west, or if something is a hot dog, or not. This type of intelligence is considered narrow, because unlike a normal human with general intelligence, you can’t put it in front of a task it has never seen before, and have it figure out what to do.1
Training an Algorithm
Imagine you have a robot dog named Cooper, and you want to teach Cooper to be friendly to nice people, and unfriendly to everyone else. You first have to train Cooper by bringing all the nice people you know and labeling them as “nice” in front of the dog. You also have to point out features about them like their preference for hats, the color red, and handlebar mustaches. In future if these people come by, the dog decision algorithm will know that those people are nice, but if other people come, Cooper can only make some assumptions based on the features you told it to pay attention to. If someone with a hat, a red suit, and a handlebar mustache shows up, Cooper predicts it’s one of your friends.
You can apply this concept to any dataset, especially to produce forecasts based on existing data. This is often referred to as predictive analytics.
You want Cooper to stop making awful assumptions, because now every eccentric with a handlebar mustache is knocking on your door.2 So now whenever someone drops by, you tell your dog to look you in the eyes, if you’re angry, Cooper should label that person as “not nice”, and if you’re happy, Cooper should label that person as “nice”. Now he knows about more people you think are “nice”, and with more people coming to your house, he discovers that handlebar mustaches do not feature as commonly among “nice” people as you led Cooper to believe. This is called machine learning, and this makes sense because Cooper is a robot.3
Basically, an algorithm that can improve itself with more data can be said to be using machine learning.
Deep Learning & Neural Networks
So far, Cooper has been supervised and told “nice” from “not nice”. But you want Cooper to be an even smarter robot dog, and for him to make better assumptions about people in general. What if it’s another dog? Cooper wouldn’t be able to find any of the features he has come to expect. You leave Cooper unsupervised, so he has no labels to assign, instead he starts to decide on his own what features are important and common, and starts clustering people together in his robot brain. So later, when you come home, you can start teaching Cooper how to react to different groups, for example, strangers in uniforms are good, but people with weapons are bad. Here you would be combining unsupervised learning with supervised learning, clustering with labeling. The way most unsupervised learning happens today, is with neural networks and other similar deep learning techniques.
It can get quite technical here, but in a nutshell, the machine is trying to decide what features are important, and how they should be weighted relative to each other. Neural networks in particular are called that because they use the concept of digital neurons to identify patterns between inputs in a way that mimics the way a neuron in a brain might. (ie. multiple weighted inputs to a single output, repeated across a whole network of neurons) The whole deep learning field is challenging because half the battle is figuring out how the algorithm actually came to its conclusion to prevent things like over-fitting where an a algorithm is created that fits all your existing data perfectly, but performs awfully with new data because it’s not generalized enough.
The Rest of the Story
Today, a lot of the hard math and optimization associated with creating smart algorithms has been handled by free and relatively easy to use software, but it’s not a silver bullet. The limitations are:
- Poor data = poor conclusions
- Messy data = poor algorithms, and incorrect conclusions
- Misunderstood data = incorrect conclusions, fun news headlines
- Data with biases = biased algorithms, biased conclusions
Despite this, companies with large amounts of data including behemoths Google and Microsoft, have been able to solve great challenges in Computer Vision (looking at images and knowing what’s there), and Natural Language Processing (finding patterns in text), two big areas of machine learning alongside predictive analytics in numerical data.
For those without massive sets of training data, there are exciting developments too:
- Reinforcement Learning is a trial and error process for learning new tasks, just look at Google DeepMind’s simultaneously hilarious and terrifying running simulation.
- Generative Models are a way of generating new results with a limited set of existing data. Montreal company, Lyre Bird, only needs a minute of your voice to copy it!
- Efficient Learning is overcoming challenges of overfitting, and outliers to create effective models with limited data sets. One way they do this, is by using successful models for other challenges, and using those as a basis for new model.4
Confusing? Here’s a nice diagram.
Basically, AI is a messy field with many powerful tools which can help solve previously unsolvable problems. New tools are being invented and developed daily, powered by increasingly more sophisticated computing. Inevitably, AI will get smarter, and this will have massive implications for every aspect of our lives. Deciding on why a problem should be solved in the first place however, and how it should be approached, is still a trick for humans, we’re good at it, but our robot dogs are learning fast, and they’re smarter than ever.