I am not clear with the concept that an unsupervised model learns. We are giving an input and output to the supervised model, so that it can generate a particular value, pattern or something out of it which can be used to categorize something in the future. By contrast, in unsupervised learning, we are clustering, so why do we need learning?

Can anyone detail me with some real-world examples?


Imagine you have a dataset of people who have cancer. You have information about their age, physique, diagnosis, treatments, and results.

Using this data, you want to prescribe a set of treatments for a new patient, P.

Obviously, if there is someone in the dataset that has very similar traits as P and had a positive result with their treatments, you could prescribe the same set of treatments. However, this is incredibly unlikely and becomes more infeasible as more information about P is observed (e.g. Has brown hair and hates pasta).

A better option is to cluster the dataset into groups that have positive outcomes for treatment results. For example, perhaps patients with lung cancer who smoke and are given treatment A do better than patients with lung cancer who didn't smoke and are given the same treatment A. These patients should then be divided based on this outcome.

Once these different clusters are found, patient P can be evaluated against each of the clusters and a set of treatments can be prescribed (e.g. Most of the treatments from cluster A, but 1 treatment from cluster B).

Unsupervised learning is the method of finding these clusters, which helps find structure to the data to better answer questions.


Supervised Learning: This is performed with the help of a teacher. A child works on the basis of the output that he/she has to produce. Their actions are supervised by a teacher. Similarly in ANNs, each vector requires a corresponding target vector, which represents the desired output.

Unsupervised Learning: Consider the learning process of a tadpole, it learns by itself, it isn't taught by any teacher. In ANN, during the training process, the network receives the input patterns and organizes these patterns to form clusters. When a new input pattern is applied, the neural network gives an output response indicating the class to which the input pattern belongs. If for an input, a pattern class cannot be found then a new class is generated.

In this case, there is no feedback from the environment, the network must itself discover patterns, regularities, features or categories from the input data and relations for the input data over the output.


Not the answer you're looking for? Browse other questions tagged or ask your own question.