Thursday, April 23, 2015

Machine Learning : Supervised vs Unsupervised Learning

Machine Learning : Training computers to solve a problem without giving explicit instructions !

Everybody remembers the movie 'Terminator' and 'The Matrix'. Both movies take the idea of 'Artificial Intelligence' and show the extreme end of the spectrum. The computers in the movies (Skynet and the Matrix) somehow become so intelligent that they try to take control of the human civilization leading to a war between Man and Machine.




Ok, Lets skip the hypothetical (??) scenarios. Can computers really become so intelligent? We'll see. But there is a huge area of 'training' them to perform a task in a better and faster way than humans. And this area can be called a 'Machine Learning' or even 'Artificial Intelligence'

More Robust Definition : A computer program is said to learn from experience E with respect to some task T  and some performance measure P,  if its performance on T, as measured by P, improves with experience E.

Supervised Learning :  When the computer is provided with some data to train itself, and then it uses the training to apply the same model to a new and unseen data. Examples would include Linear and Logistic Regressions, Neural Networks, and SVMs.

Unsupervised Learning : When the computer is given the data and it applies some algorithm to understand the pattern in the data without the need of an explicit training. An example would be to give a list of data points in a 2-D plane and applying k-means clustering on the data.



There are a lot of factors, parameters and optimization that goes into the actual application and making sure the results are coming out as intended. After all, the computers are also an invention of human mind :)

An interesting example : The Cocktail Party Problem

The solution is just a one line code in MATLAB :)



No comments:

Post a Comment