Tuesday, October 13, 2015

Introduction To Supervised Learning

What is Supervised Learning?


Supervised Learning is the Machine Learning task of inferring a function from labelled training data. The training data consist of a set of training examples. In supervised learning, each example is a pair consisting of an input object (typically a vector) and a desired output value (also called the supervisory signal). A supervised learning algorithm analyses the training data and produces an inferred function, which can be used for mapping new examples. An optimal scenario will allow for the algorithm to correctly determine the class labels for unseen instances. This requires the learning algorithm to generalize from the training data to unseen situations in a "reasonable" way (see inductive bias).

Different types of Supervised Learning 

There are several ways in which the standard supervised learning problem can be generalized:
  • Semi-supervised learning: In this setting, the desired output values are provided only for a subset of the training data. The remaining data is unlabelled.
  • Active learning: Instead of assuming that all of the training examples are given at the start, active learning algorithms interactively collect new examples, typically by making queries to a human user. Often, the queries are based on unlabelled data, which is a scenario that combines semi-supervised learning with active learning.
  • Structured prediction: When the desired output value is a complex object, such as a parse tree or a labelled graph, then standard methods must be extended.
  • Learning to rank: When the input is a set of objects and the desired output is a ranking of those objects, then again the standard methods must be extended. 

Approaches and algorithms

There are many powerful algorithms in Supervised Learning for regression and classification. Some of them are as follows:

Regression algorithms