The three categories of algorithms within Machine Learning explained
Machine Learning is becoming an increasingly important topic within artificial intelligence. There are many ways to implement machine learning, but first you will have to choose an algorithm which is suitable for what you will develop. Within machine learning, there are many kinds of algorithms. These can be divided into three main categories: supervised learning, unsupervised learning and reinforcement learning. Romain Huet, Senior Data Scientist at TMC, explains these different categories and when they can be used.
1. Supervised learning
With this type of machine learning, you have both your input variables and your output variables available: so, you have a complete dataset. During the training of the model, examples of ‘how it is supposed to be’ are given, so the machine can learn to predict future output based on new input. If you already know what a model should predict based on a certain input and when you have this data available, supervised learning is the most suitable algorithm for your case.
We hereby give you an example of how supervised learning can be used by a company. Imagine that you are a teacher who would like to make predictions of the test results for your students next test. First you would need a dataset, in this case: their attendance during class and how well are they making their assignments (input data) and their score for the last exam (output data). With this input data, the algorithm can learn to recognize a correlation between the behavior during the course and the exam results. Now you can make predictions of future exam results. In order to do so, you would need to collect the same input data and give it to the trained model which will provide you with the expected exam results.
2. Unsupervised learning
Unsupervised learning can be considered as the opposite of supervised learning. This method can be used if you have a dataset with only input data, but you don’t have a desired output yet. In this case, you would like to search for groups or categories in your existing data: a relation between observations in order to define groups. The machine will scan incoming data and structure these into categories or clusters.
Therefore, unsupervised learning is mainly used in exploring processes. Let’s say you have a big dataset with food, but you don’t know in which categories you would like to split them. The algorithm can look for similarities, e.g.: fruits and vegetables. This would be two categories. Ultimately this can be subdivided even more, for example fruit can be categorized into citrus and exotic fruit.
3. Reinforcement learning
Reinforcement learning is a form of machine learning in which a machine learns based on trial and error. With Reinforcement Learning the model will be optimized via feedback to previous actions and experiences. Usually the optimization is based on rewards, meaning that some actions might provide more meaningful experiences, e.g. a mouse getting cheese when getting out of a maze. The model will update itself by using this feedback to optimize the rewards, depending on the action to undertake.
To give an impressive example about how reinforcement learning was actually used, we will explain how a computer was taught to finish a level of Super Mario. The model is taught that the longer a level is played, and the more points it collects, the better. Thus, the algorithm starts playing the game. Each time it ‘dies’ on the game, he knows he has to make improvements at that point. When the algorithm is gaining more points in the game, this is considered a reward. At that point, the algorithm knows he must try those moves again. In the end, the algorithm has learned how to finish a game of Super Mario by trial and error. In this video you can get more insights about how this model was built.