Machine Learning (ML) is coming into its own, with a growing recognition that ML can play a key role in a wide range of critical applications, such as data mining, natural language processing, image recognition, and expert systems.
ML provides potential solutions in all these domains and more, and is set to be a pillar of our future civilization. So, what does exactly learning means for a computer?
What Is Machine Learning?
Machine learning is an application of artificial intelligence (AI) that provides systems the ability to automatically learn and improve from experience without being explicitly programmed.
Machine learning focuses on the development of computer programs that can access data and use it learn for themselves.
Let’s try to understand Machine Learning in layman terms. Consider you are trying to toss a paper to a dustbin.
After first attempt, you realize that you have put too much force in it. After second attempt, you realize you are closer to target but you need to increase your throw angle.
What is happening here is basically after every throw we are learning something and improving the end result. We are programmed to learn from our experience.
Who Invented Machine Learning?
The term Machine Learning was coined by Arthur Samuel in 1959, an American pioneer in the field of computer gaming and artificial intelligence and stated that “it gives computers the ability to learn without being explicitly programmed”.
And in 1997, Tom Mitchell gave a “well-posed” mathematical and relational definition that “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.
Machine Learning is a latest buzzword floating around. It deserves to, as it is one of the most interesting subfield of Computer Science.
Machine Learning Categories
1. Supervised Learning
Supervised machine learning algorithms can apply what has been learned in the past to new data using labeled examples to predict future events. Starting from the analysis of a known training dataset, the learning algorithm produces an inferred function to make predictions about the output values. The system is able to provide targets for any new input after sufficient training.
The learning algorithm can also compare its output with the correct, intended output and find errors in order to modify the model accordingly.
In Supervised learning, an AI system is presented with data which is labeled, which means that each data tagged with the correct label.
The goal is to approximate the mapping function so well that when you have new input data (x) that you can predict the output variables (Y) for that data.
As shown in the above example, we have initially taken some data and marked them as ‘Spam’ or ‘Not Spam’. This labeled data is used by the training supervised model, this data is used to train the model.
Once it is trained we can test our model by testing it with some test new mails and checking of the model is able to predict the right output.
There are 2 types of Supervised Learning:
- Classification – A classification problem is when the output variable is a category, such as “red” or “blue” or “disease” and “no disease”.
- Regression – A regression problem is when the output variable is a real value, such as “dollars” or “weight”.
2. Unsupervised Learning
In unsupervised learning, an AI system is presented with unlabeled, uncategorized data and the system’s algorithms act on the data without prior training. The output is dependent upon the coded algorithms. Subjecting a system to unsupervised learning is one way of testing AI.
Unsupervised learning algorithms can perform more complex processing tasks than supervised learning systems. However, unsupervised learning can be more unpredictable than the alternate model.
A system trained using the unsupervised model, might, for example, figure out on its own how to differentiate cats and dogs, it might also add unexpected and undesired categories to deal with unusual breeds, which might end up cluttering things instead of keeping them in order.
Types of unsupervised learning:
- Clustering – It deals with finding a structure or pattern in a collection of uncategorized data. A simple definition of a cluster could be “the process of grouping the object into classes such that each member of a class is similar to the other in one or the other way.”
- Association – An association rule learning problem is where you want to discover rules that describe large portions of your data, such as people that buy X also tend to buy Y.
3. Reinforcement Learning
A reinforcement learning algorithm, or agent, learns by interacting with its environment. The agent receives rewards by performing correctly and penalties for performing incorrectly.
The agent learns without intervention from a human by maximizing its reward and minimizing its penalty. It is a type of dynamic programming that trains algorithms using a system of reward and punishment.
How Machine Learning Works?
- Data Gathering – Gathering past data in any form suitable for processing.The better the quality of data, the more suitable it will be for modeling
- Data Processing – Sometimes, the data collected is in the raw form and it needs to be pre-processed. Example: Some tuples may have missing values for certain attributes, an, in this case, it has to be filled with suitable values in order to perform machine learning or any form of data mining.
- Divide the input data into training,cross-validation and test sets. The ratio between the respective sets must be 6:2:2
- Building models with suitable algorithms and techniques on the training set.