Gives computer the ability to learn without being explicitly programmed.
Examples of Machine learning. Robots observing physical behaviour of human and copy the movements. Google and facebook learning what information are relevant to user and push those information to users automatically. Robots learn how to navigate new terrains and find balance without the intervention of programmers.
Data provided to the machine are labelled. For example, when providing a data set of different people's height, you also tell the machine whether data belong to a guy or a girl. The machine learn from the guy/girl label whether a person of a certain height is more likely to be a guy or girl.
eg. Given emails labelled as spam/not spam, learn a spam filter
eg. Given a dataset of patients labelled as diabetes/non diabetes, learn to classify new patients as having diabetes or not.
Data provided to the machine are not given labels. The machine cluster datas that are 'close' together and try to make sense of each cluster by itself. For example, google automatically cluster websites that contains a certain keywords together in its news site.
Another application is in separating out background noises from voice in a single recording
eg. Given a set of news article, group them into set of articles about the same story.
eg. Given a dataset of customers, automatically discover market segments and group customers into different market segments.
Machine Learning Coding Environment
It is recommended to use Octave to start learning to code for Machine learning. Numerous lines of codes can be summarized in a single line of code using prebuilt functions in Octave.
Copied and Pasted from the free Coursera Course
What is Machine Learning?
Two definitions of Machine Learning are offered. Arthur Samuel described it as: "the field of study that gives computers the ability to learn without being explicitly programmed." This is an older, informal definition.
Tom Mitchell provides a more modern definition: "A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E."
Example: playing checkers.
E = the experience of playing many games of checkers
T = the task of playing checkers.
P = the probability that the program will win the next game.
In supervised learning, we are given a data set and already know what our correct output should look like, having the idea that there is a relationship between the input and the output. Supervised learning problems are categorized into "regression" and "classification" problems. In a regression problem, we are trying to predict results within a continuous output, meaning that we are trying to map input variables to some continuous function. In a classification problem, we are instead trying to predict results in adiscrete output. In other words, we are trying to map input variables into discrete categories.
Given data about the size of houses on the real estate market, try to predict their price. Price as a function of size is a continuous output, so this is a regression problem.
We could turn this example into a classification problem by instead making our output about whether the house "sells for more or less than the asking price." Here we are classifying the houses based on price into two discretecategories.
Unsupervised learning, on the other hand, allows us to approach problems with little or no idea what our results should look like. We can derive structure from data where we don't necessarily know the effect of the variables.
We can derive this structure by clustering the data based on relationships among the variables in the data.
With unsupervised learning there is no feedback based on the prediction results, i.e., there is no teacher to correct you. It’s not just about clustering. For example, associative memory is unsupervised learning.
Clustering: Take a collection of 1000 essays written on the US Economy, and find a way to automatically group these essays into a small number that are somehow similar or related by different variables, such as word frequency, sentence length, page count, and so on.
Associative: Suppose a doctor over years of experience forms associations in his mind between patient characteristics and illnesses that they have. If a new patient shows up then based on this patient’s characteristics such as symptoms, family medical history, physical attributes, mental outlook, etc the doctor associates possible illness or illnesses based on what the doctor has seen before with similar patients. This is not the same as rule based reasoning as in expert systems. In this case we would like to estimate a mapping function from patient characteristics into illnesses.