Learn to recognise what defines different machine learning solutions.
There are different ways for a machine to learn. Different approaches to ML are commonly distinguished by the kinds of problems they try to solve, as well as the type and amount of feedback provided by the programmer.
Broadly, we can divide machine learning into three subareas:
- Supervised learning
- Unsupervised learning
- Reinforcement learning
Although this might look like a neat categorisation, it's not always easy to place a particular method. Let's see what differentiates these three categories.
Let's say you want to teach a machine to recognise dogs from cats. You give it as input photographs labelled as "cat" or "dog". Studying the examples, the algorithm will learn to recognise what distinguishes a cat from a dog and to assign the correct label to each new image you ask it to analyse.
In supervised learning, the machine needs labelled examples to learn. Those examples are used to train an algorithm to automatically assign the correct label.
In the journalistic context, supervised learning can, for example, train an algorithm to spot documents that might be interesting for an investigation. On a number of occasions this has already proven useful to investigative journalists having to deal with large volumes of documents.
With unsupervised learning, the examples provided to the machine are not labelled. The algorithm is tasked with learning by itself to recognise patterns in the data, for example with the goal of clustering together records that share similar characteristics.
In other words, the algorithm is trained to discover some structure in the unlabelled data that you ask it to analyse. This might be used by a business to better understand its customers, for example by grouping them into categories that show similar shopping behaviours.
In journalism, these kinds of techniques have been deployed by investigative journalists to uncover tax evasion and to help campaign finance reporters link multiple donation records to the same donor.
The third type is reinforcement learning. Similarly to unsupervised learning, it doesn't need labelled data. It is instead based on the idea of learning what actions to take through trial and error, or in other words: by making mistakes. Initially the algorithm acts randomly, exploring the environment, but it learns with time by being rewarded when it makes the right choices.
Reinforcement learning is commonly used to teach machines to play games, with the most famous example being AlphaGo, the computer program developed by DeepMind that in 2016 managed to beat world’s top player Lee Sedol at the Chinese board game Go.
Journalistic applications are still rare, but reinforcement learning is used, for example, for headline testing.
Deep learning is another type of learning that has made a name for itself in recent years thanks to the increased computing powers we already discussed. It's in itself a subfield of machine learning, but differently from the approaches we just studied, deep learning is defined by the complexity and depth (hence the name) of the mathematical model involved.
The depth of the model refers to the use of multiple layers of analysis that allow the algorithm to learn progressively more complex structures. Deep learning is based on artificial neural networks, whose architecture is inspired by human biological systems, for example by how visual information is processed by our brain through our eyes.
Supervised, unsupervised, reinforcement, neural networks... your head must be spinning.
This lesson was not designed to put you off. It's important to understand the complexity of the field of machine learning and meet its subfields, but unless you want to dive deeper (pun intended) into the data science rabbit hole, what you should retain from this lesson is fairly simple: different problems require different solutions and different ML approaches to be tackled successfully.
In the next lesson, we will look at what situations in your work might welcome a machine learning solution. After that, we will explore the process that allows a machine to learn and introduce the concept of bias, with a few tips on how to deal with it.