# Supervised & Unsupervised Learning

1,302 Views
Feb 01, 2019

Machine learning is the field of computer science that gives computer systems the ability to learn from data — and it’s one of the hottest topics in the industry right now.

We will now take a closer look at the concepts of supervised and unsupervised learning. And also understand exactly what the differences are between these two techniques. So to begin, let us take a look at an example which we have studied so far. Where we have a linear regression line, which plots the relationship between a particular cause, x, and an effect, y.

[Video description begins] A graph appears that plots Cause on the X-axis and Effect on the Y-axis. A downward slanting straight line is drawn among the cluster of plotted dots. Under this graph is the text, Find the line that best fits the underlying data. [Video description ends]

So the point of linear regression is to find a best fit straight line which models such a relationship. And this is expressed by the equation, Y = Wx + b. In a linear regression, the aim is to find those values of W and b, which best represent your data.

[Video description begins] The following instruction appears on the screen: Find the values of the weights W and bias b. [Video description ends]

This is where the learning part of machine learning comes into the picture. So whether your model is one which performs the regression or classification, you will first feed it a corpus of data. This represents your training data, and your model will go through each of the data points within it, and then make a prediction. Following that, a loss will be computed.

[Video description begins] The graphical representation shows a Corpus of data passing through a classifier, resulting in a classification. The loss is shown being sent back into the classifier. [Video description ends]

This is a measure of how far away your predicted value is from the actual one. And the aim of any training, is to minimize this loss value. At the end of this training phase, you'll end up with your trained model. Which in the case of a linear regression, could be a straight line or a plane. And in the case of a classification model, which uses support vector machines, this will be a hyperplane. In either of these cases though, a loss is computed by comparing the predicted value with the actual y value.

Now, what if you actually do not have any y values to work with? For instance, consider that you have a corpus of data which includes millions of emails, but there is no categorization available, whether those emails are spam or ham. So the machine learning techniques which we have studied so far in this learning part. Which has included classification and regressions, are examples of supervised learning. This is where our data set includes not only the input features x, but also labels y which correspond to those input features. A machine learning algorithm will go through all of the input data points and then plot a relationship y = f(x).

[Video description begins] The following formula appears on the screen: y = some_function(x). [Video description ends]

This is in fact similar to performing some form of reverse engineering in order to learn of the relationship between the input x and the output y. It is the input training dataset or the corpus which will be iterated over, often multiple times, in order to learn of the weights and biases which will represent this relationship. In the case of a linear regression, the goal of the training phase is to find the relationship, Y = Wx + b. Where W represents the weight, and b is the bias. So in short, supervised learning is where you have a set of input features and a collection of correctly labeled outputs corresponding to them.

And this data will be used in the training phase in order to learn a relationship. Which is represented by Y = f(x). This particular relationship can then be used in order to make predictions on real data later on. And both regression as well as classification are examples of supervised learning. So given that, we now move along to the concept of unsupervised learning. Where we have a collection of data, however, we need to examine that data and then generate an output without having any correct labels or identifiers to work with.

So to summarize, unsupervised learning is where your model has to learn of patterns by merely looking at the data. Once those patterns have been identified, you can then decide what course of action to take based on those results. So just to contrast supervised and unsupervised learning. In the case of supervised learning such as regression and classification, you will have training data to work with. This will include not only the features x, but also a corresponding label for each of the features y.

And it is the job of the supervised learning algorithm to learn of this relationship between x and y. It will do this by constantly adjusting the model parameters in the training phase until its loss is minimized. And now moving along to unsupervised learning, this is a situation where you do not have any training labels to work with. The task of the unsupervised learning algorithm is to structure the model in such a way so that some patterns can be gleaned from the underlying data. Once such patterns have been obtained, it is up to the user to decide how exactly to act upon them.

For example, if you have information about a lot of users on social media, and you apply some unsupervised learning algorithm on them, they may break up all of the users into groups. Where some groups represent music lovers and other groups represent sports lovers. An advertiser may wish to target the music lovers with music-themed advertisements and sports-themed advertisements for the sports fans.

So let us now summarize some of the characteristics of unsupervised learning. This is where you'll often end up with a large unlabeled dataset. That is, there are no y values to speak of. The job of the unsupervised learning algorithm is to structure a model in such a way that patterns can be gathered from the underlying data. And an important point to keep in mind is that these patterns are self-discovered by the model. There are no specific patterns which are being searched for.

And there are no correct or incorrect patterns which can be gleaned. So an example of a supervised learning model is a classifier. Which can label an email which enters your inbox as spam or ham, and then take an action accordingly. If the email is marked as spam, it will be sent to your trash folder. And if not, it will appear in your inbox. In the case of an unsupervised learning algorithm however, the input data is not labeled in any way.

The output of unsupervised learning are a collection of self-discovered patterns within the data. There are no correct or incorrect answers which are produced by an unsupervised learning algorithm. Just a collection of patterns which the user can use in order to make a further decision. So given that there are no correct or incorrect answers when it comes to applying unsupervised learning. How exactly can this help?