Recently, we’ve heard that title (Machine Learning) in lots of different fields which are dealing with huge amount of data, and the ability of the ML to can predict the result of any new unknown inputs data like prediction of the cancer breast for patient depends on his medical analysis and comparing at with old analysis for another patient !
So here we can extract ML definition as we’ve read last paragraph, ML
is the science of programming computers so they can, and if we need more engineering definition, ML is
learn from historical stored data
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. (Tom Mitchell, 1997)
Types of Machine Learning Systems
Machine learning systems are divided on the way of computer program learning
- Learning under human supervision (
supervised, unsupervised, semi-supervised, and Reinforcement Learning)
- Learning incrementally on the fly (
online versus batch learning)
- Learning by simply comparing new data points to known data points, or instead detect patterns in the training data and build a predictive model, much like scientists do (
instance-based versus model-based learning)
Learning under human supervision
Machine Learning system in this area could be seen as the amount of ”Supervision” Human Interaction. Briefly, we will talk about the types of different learning methods. (talking about every algorithm individually in details later)
- Supervised Learning
The ML algorithms are dealing with labelled data like (classification and regression algorithms).
- Unsupervised Learning
The ML algorithms are dealing with unlabeled data like (Clustering and Dimensionality reduction algorithms)
- semi-supervised learning
The ML algorithms are dealing with combination of a small amount of labelled data with a large amount of unlabeled data during training.
- Reinforcement Learning
This an area of machine learning concerned with how a robot ought to take actions to achieve the goal at the minimum cost possible.
Learning incrementally on the fly
- Batch Learning:
The Machine learning model is trained on the whole data due to the nature of business or usage case, this type is called offline learning as it takes a very long time (hours/days/weeks) to complete, depends on the volume of data (Imagine having to train Terabytes if not bigger of data all at once).
- Online Learning:
The data is model trained once it gets in the system that the model training is continuous, with continuous evaluation and monitoring, but the data is chunked into pieces or mini-batches
Learning by comparing data sets
- Instance-based learning:
Depends on comparing new problem instances with instances seen in training, which have been stored in memory like in K-nearest neighbors model the model looks to the closest neighborhood to the input example, which is sometimes called memory-based learning.
- Model-based learning
Using the training data to create a model which represents the whole data, not about one instance in data.