The field of study that gives computers the ability to learn without being explicitly programmed.
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.
Experience E, Task T, Performance P
ML objective is the function: \[ \hat{y} = f(x) \]
Three main types of ML problems
To learn a mapping between input examples and the target variable.
The training data has the target variable.
Target variable is discrete, belonging to two or more classes
e.g. handwritten digit recognition
Target variable is continuous real value
e.g. predicting length of a salmon
To describe or extract relationships in data
Training data does not have values of target variable
An agent operates in an environment and must learn to operate using feedback.
No fixed training data
e.g. Google’s AlphaGo
ML requires massive data to train on
Data should be unbiased and of good quality
Not easy to get in practice
We can only make reliable predictions about data which is in the same range as our training data.
If we try to extrapolate beyond what was covered in the training data we’ll probably get wrong answers.
It’s a challenge to accurately interpret results generated by the algorithms.
You have to carefully choose the algorithms for your purpose.