Machine Learning is a technology that “allows computers to perform specific tasks intelligently, by learning from examples”. Rather than crafting an algorithm to do a job step by step…you craft an algorithm that learns to do things itself then train it on large amounts of data. It is all about spotting patterns in massive amounts of data.
In practice creating machine learning tools is done in several steps.
- First create a machine learning engine. It is a program implementing an algorithm of how to learn in general. (This step is for experts!)
- Next you train it on relevant data (e.g. images of animals). The more data it sees the better it gets at recognising things or making decisions (e.g. identifying animals).
- You package up the newly trained tool in a user interface to make it easy for anyone to use it.
- Your users then use the new machine learning application by giving it new data (e.g. you show it pictures of animals and it tells you what kind of animal they are).
Here is an example of a robot with a machine learning brain. It reacts just to the tone of voice – it doesn’t understand the words. It learnt very much like a dog does. It was ‘rewarded’ when it reacted in an appropriate way and was ‘punished’ when it reacted in an inappropriate way. Eventually it learnt to behave like this.
What do we mean by spotting patterns? One way to think about it is that it is just grouping the data based on which is most similar. So in the case of our robot that has learnt to show a given expression when it hears a given sound it is grouping the data (sounds combined with the positions of its eyes, mouth and eyebrows) as illustrated in the diagram. Each time it hears a sound and places its eyes, mouth and eyebrows in a particular position, it gets feedback on whether that was appropriate or not. Over time it learns the pattern of which combinations are acceptable.
Ultimately it learns to show expressions that are very human like.
Suppose the idea was to train a tool as a classifier to be able to tell what something is – is a sound sad, happy or surprising? Then, once it has learnt the patterns, when some new data arrives (represented by the red dot), a new sound say combined with the expression on listeners faces, it just makes a choice based on which cluster that data point most clearly corresponds to. The red dot must correspond to a sad sound.