What is the difference between supervised learning and unsupervised learning?

Viewed 172846

In terms of artificial intelligence and machine learning, what is the difference between supervised and unsupervised learning? Can you provide a basic, easy explanation with an example?

28 Answers

Supervised Learning

Supervised learning is based on training a data sample from data source with correct classification already assigned. Such techniques are utilized in feedforward or MultiLayer Perceptron (MLP) models. These MLP has three distinctive characteristics:

  1. One or more layers of hidden neurons that are not part of the input or output layers of the network that enable the network to learn and solve any complex problems
  2. The nonlinearity reflected in the neuronal activity is differentiable and,
  3. The interconnection model of the network exhibits a high degree of connectivity.

These characteristics along with learning through training solve difficult and diverse problems. Learning through training in a supervised ANN model also called as error backpropagation algorithm. The error correction-learning algorithm trains the network based on the input-output samples and finds error signal, which is the difference of the output calculated and the desired output and adjusts the synaptic weights of the neurons that is proportional to the product of the error signal and the input instance of the synaptic weight. Based on this principle, error back propagation learning occurs in two passes:

Forward Pass:

Here, input vector is presented to the network. This input signal propagates forward, neuron by neuron through the network and emerges at the output end of the network as output signal: y(n) = φ(v(n)) where v(n) is the induced local field of a neuron defined by v(n) =Σ w(n)y(n). The output that is calculated at the output layer o(n) is compared with the desired response d(n) and finds the error e(n) for that neuron. The synaptic weights of the network during this pass are remains same.

Backward Pass:

The error signal that is originated at the output neuron of that layer is propagated backward through network. This calculates the local gradient for each neuron in each layer and allows the synaptic weights of the network to undergo changes in accordance with the delta rule as:

Δw(n) = η * δ(n) * y(n).

This recursive computation is continued, with forward pass followed by the backward pass for each input pattern till the network is converged.

Supervised learning paradigm of an ANN is efficient and finds solutions to several linear and non-linear problems such as classification, plant control, forecasting, prediction, robotics etc.

Unsupervised Learning

Self-Organizing neural networks learn using unsupervised learning algorithm to identify hidden patterns in unlabelled input data. This unsupervised refers to the ability to learn and organize information without providing an error signal to evaluate the potential solution. The lack of direction for the learning algorithm in unsupervised learning can sometime be advantageous, since it lets the algorithm to look back for patterns that have not been previously considered. The main characteristics of Self-Organizing Maps (SOM) are:

  1. It transforms an incoming signal pattern of arbitrary dimension into one or 2 dimensional map and perform this transformation adaptively
  2. The network represents feedforward structure with a single computational layer consisting of neurons arranged in rows and columns. At each stage of representation, each input signal is kept in its proper context and,
  3. Neurons dealing with closely related pieces of information are close together and they communicate through synaptic connections.

The computational layer is also called as competitive layer since the neurons in the layer compete with each other to become active. Hence, this learning algorithm is called competitive algorithm. Unsupervised algorithm in SOM works in three phases:

Competition phase:

for each input pattern x, presented to the network, inner product with synaptic weight w is calculated and the neurons in the competitive layer finds a discriminant function that induce competition among the neurons and the synaptic weight vector that is close to the input vector in the Euclidean distance is announced as winner in the competition. That neuron is called best matching neuron,

i.e. x = arg min ║x - w║.

Cooperative phase:

the winning neuron determines the center of a topological neighborhood h of cooperating neurons. This is performed by the lateral interaction d among the cooperative neurons. This topological neighborhood reduces its size over a time period.

Adaptive phase:

enables the winning neuron and its neighborhood neurons to increase their individual values of the discriminant function in relation to the input pattern through suitable synaptic weight adjustments,

 Δw = ηh(x)(x –w).

Upon repeated presentation of the training patterns, the synaptic weight vectors tend to follow the distribution of the input patterns due to the neighborhood updating and thus ANN learns without supervisor.

Self-Organizing Model naturally represents the neuro-biological behavior, and hence is used in many real world applications such as clustering, speech recognition, texture segmentation, vector coding etc.

Reference.

There are many answers already which explain the differences in detail. I found these gifs on codeacademy and they often help me explain the differences effectively.

Supervised Learning

enter image description here Notice that the training images have labels here and that the model is learning the names of the images.

Unsupervised Learning

enter image description here Notice that what's being done here is just grouping(clustering) and that the model doesn't know anything about any image.

Supervised Learning: You give variously labelled example data as input, along with the correct answers. This algorithm will learn from it, and start predicting correct results based on the inputs thereafter. Example: Email Spam filter

Unsupervised Learning: You just give data and don't tell anything - like labels or correct answers. Algorithm automatically analyses patterns in the data. Example: Google News

Supervised learning: say a kid goes to kinder-garden. here teacher shows him 3 toys-house,ball and car. now teacher gives him 10 toys. he will classify them in 3 box of house,ball and car based on his previous experience. so kid was first supervised by teachers for getting right answers for few sets. then he was tested on unknown toys. aa

Unsupervised learning: again kindergarten example.A child is given 10 toys. he is told to segment similar ones. so based on features like shape,size,color,function etc he will try to make 3 groups say A,B,C and group them. bb

The word Supervise means you are giving supervision/instruction to machine to help it find answers. Once it learns instructions, it can easily predict for new case.

Unsupervised means there is no supervision or instruction how to find answers/labels and machine will use its intelligence to find some pattern in our data. Here it will not make prediction, it will just try to find clusters which has similar data.

Supervised learning

You have input x and a target output t. So you train the algorithm to generalize to the missing parts. It is supervised because the target is given. You are the supervisor telling the algorithm: For the example x, you should output t!

Unsupervised learning

Although segmentation, clustering and compression are usually counted in this direction, I have a hard time to come up with a good definition for it.

Let's take auto-encoders for compression as an example. While you only have the input x given, it is the human engineer how tells the algorithm that the target is also x. So in some sense, this is not different from supervised learning.

And for clustering and segmentation, I'm not too sure if it really fits the definition of machine learning (see other question).

Supervised Learning: You have labeled data and have to learn from that. e.g house data along with price and then learn to predict price

Unsupervised learning: you have to find the trend and then predict, no prior labels given. e.g different people in the class and then a new person comes so what group does this new student belong to.

Supervised Learning is basically where you have input variables(x) and output variable(y) and use algorithm to learn the mapping function from input to the output. The reason why we called this as supervised is because algorithm learns from the training dataset, the algorithm iteratively makes predictions on the training data. Supervised have two types-Classification and Regression. Classification is when the output variable is category like yes/no, true/false. Regression is when the output is real values like height of person, Temperature etc.

UN supervised learning is where we have only input data(X) and no output variables. This is called an unsupervised learning because unlike supervised learning above there is no correct answers and there is no teacher. Algorithms are left to their own devises to discover and present the interesting structure in the data.

Types of unsupervised learning are clustering and Association.

Supervised Machine Learning

"The process of an algorithm learning from training dataset and predict the output. "

Accuracy of predicted output directly proportional to the training data (length)

Supervised learning is where you have input variables (x) (training dataset) and an output variable (Y) (testing dataset) and you use an algorithm to learn the mapping function from the input to the output.

Y = f(X)

Major types:

  • Classification (discrete y-axis)
  • Predictive (continuous y-axis)

Algorithms:

  • Classification Algorithms:

    Neural Networks  
    Naïve Bayes classifiers  
    Fisher linear discriminant  
    KNN 
    Decision Tree 
    Super Vector Machines
    
  • Predictive Algorithms:

    Nearest  neighbor  
    Linear Regression,Multi Regression 
    

Application areas:

  1. Classifying emails as spam
  2. Classifying whether patient has disease or not
  3. Voice Recognition

  4. Predict the HR select particular candidate or not

  5. Predict the stock market price

In Simple Supervised learning is type of machine learning problem in which we have some labels and by using that labels we implement algorithm such as regression and classification .Classification is applied where our output is like in the form of 0 or 1 ,true/false,yes/no. and regression is applied where out put a real value such a house of price

Unsupervised Learning is a type of machine learning problem in which we don't have any labels means we have some data only ,unstructured data and we have to cluster the data (grouping of data)using various unsupervised algorithm

Supervised learning:

A supervised learning algorithm analyzes the training data and produces an inferred function, which can be used for mapping new examples.

  1. We provide training data and we know correct output for a certain input
  2. We know relation between input and output

Categories of problem:

Regression: Predict results within a continuous output => map input variables to some continuous function.

Example:

Given a picture of a person, predict his age

Classification: Predict results in a discrete output => map input variables into discrete categories

Example:

Is this tumer cancerous?

Supervised learning

Unsupervised learning:

Unsupervised learning learns from test data that has not been labeled, classified or categorized. Unsupervised learning identifies commonalities in the data and reacts based on the presence or absence of such commonalities in each new piece of data.

  1. We can derive this structure by clustering the data based on relationships among the variables in the data.

  2. There is no feedback based on the prediction results.

Categories of problem:

Clustering: is the task of grouping a set of objects in such a way that objects in the same group (called a cluster) are more similar (in some sense) to each other than to those in other groups (clusters)

Example:

Take a collection of 1,000,000 different genes, and find a way to automatically group these genes into groups that are somehow similar or related by different variables, such as lifespan, location, roles, and so on.

Unsupervised learning

Popular use cases are listed here.

Difference between classification and clustering in data mining?

References:

Supervised_learning

Unsupervised_learning

machine-learning from coursera

towardsdatascience

Supervised Learning

enter image description here

Unsupervised Learning

enter image description here

Example:

Supervised Learning:

  • One bag with apple
  • One bag with orange

    => build model

  • One mixed bag of apple and orange.

    => Please classify

Unsupervised Learning:

  • One mixed bag of apple and orange.

    => build model

  • Another mixed bag

    => Please classify

In simple words.. :) It's my understanding, feel free to correct. Supervised learning is, we know what we are predicting on the basis of provided data. So we have a column in the dataset which needs to be predicated. Unsupervised learning is, we try to extract meaning out of the provided dataset. We don't have clarity on what to be predicted. So question is why we do this?.. :) Answer is - the outcome of Unsupervised learning is groups/clusters(similar data together). So if we receive any new data then we associate that with the identified cluster/group and understand it's features.

I hope it will help you.

supervised learning

supervised learning is where we know the output of the raw input, i.e the data is labelled so that during the training of machine learning model it will understand what it need to detect in the give output, and it will guide the system during the training to detect the pre-labelled objects on that basis it will detect the similar objects which we have provided in training.

Here the algorithms will know what's the structure and pattern of data. Supervised learning is used for classification

As an example, we can have a different objects whose shapes are square, circle, trianle our task is to arrange the same types of shapes the labelled dataset have all the shapes labelled, and we will train the machine learning model on that dataset, on the based of training dateset it will start detecting the shapes.

Un-supervised learning

Unsupervised learning is a unguided learning where the end result is not known, it will cluster the dataset and based on similar properties of the object it will divide the objects on different bunches and detect the objects.

Here algorithms will search for the different pattern in the raw data, and based on that it will cluster the data. Un-supervised learning is used for clustering.

As an example, we can have different objects of multiple shapes square, circle, triangle, so it will make the bunches based on the object properties, if a object has four sides it will consider it square, and if it have three sides triangle and if no sides than circle, here the the data is not labelled, it will learn itself to detect the various shapes

Machine learning is a field where you are trying to make machine to mimic the human behavior.

You train machine just like a baby.The way humans learn, identify features, recognize patterns and train himself, same way you train machine by feeding data with various features. Machine algorithm identify the pattern within the data and classify it into particular category.

Machine learning broadly divided into two category, supervised and unsupervised learning.

Supervised learning is the concept where you have input vector / data with corresponding target value (output).On the other hand unsupervised learning is the concept where you only have input vectors / data without any corresponding target value.

An example of supervised learning is handwritten digits recognition where you have image of digits with corresponding digit [0-9], and an example of unsupervised learning is grouping customers by purchasing behavior.

Related