In the context of machine learning, what is the difference between unsupervised learning, supervised learning and semi-supervised learning?
And what are some of the main algorithmic approaches to look at?
|
In the context of machine learning, what is the difference between unsupervised learning, supervised learning and semi-supervised learning? And what are some of the main algorithmic approaches to look at? |
|||||||
|
|
Generally, the problems of machine learning may be considered variations on function estimation for classification, prediction or modeling. In supervised learning one is furnished with input (x1, x2, . .,) and output (y1, y2, . .,) and are challenged with finding a function that approximates this behavior in a generalizable fashion. The output could be a class label (in classification) or a real number (in regression)-- these are the "supervision" in supervised learning. In the case of unsupervised learning, in the base case, you receives inputs x1, x2, . ., but neither target outputs, nor rewards from its environment are provided. Based on the problem (classify, or predict) and your background knowledge of the space sampled, you may use various methods: density estimation (estimating some underlying PDF for prediction), k-means clustering (classifying unlabeled real valued data), k-modes clustering (classifying unlabeled categorical data), etc. Semi-supervised learning involves function estimation on labeled and unlabeled data. This approach is motivated by the fact that labeled data is often costly to generate, whereas unlabeled data is generally not. The challenge here mostly involves the technical question of how to treat data mixed in this fashion. See this Semi-Supervised Learning Literature Survey for more details on semi-supervised learning methods. In addition to these kinds of learning, there are others, such as reinforcement learning whereby the learning method interacts with its environment by producing actions a1, a2, . . .. that produce rewards or punishments r1, r2, ... |
||||
|
|
|
Unsupervised Learning Unsupervised learning is when you have no labeled data available for training. Examples of this are often clustering methods. Supervised Learning In this case your training data exists out of labeled data. The problem you solve here is often predicting the labels for data points without label. Semi-Supervised Learning In this case both labeled data and unlabeled data are used. This for example can be used in Deep belief networks, where some layers are learning the structure of the data (unsupervised) and one layer is used to make the classification (trained with supervised data) |
|||
|
|
|
I don't think that supervised/unsupervised is the best way to think about it. For basic data mining, it's better to think about what you are trying to do. There are four main tasks:
[1] Apparently Goldman Sachs created tons of great neural networks for prediction, but then no one understood them, so they had to write other programs to try to explain the neural networks. |
|||||
|