In recent days, Machine Learning is showing tremendous potential but compared to human intelligence, it is still in its earliest stage and specialized to the problem for which it is developed. For example, any ML model developed to predict cancer cells will not predict the presence of Cats in those images. In the current stage, it is not able to observe multiple dimensions and gain intelligence from there. Machine Learning can learn only those specific things for which it is specially designed. So we can say that it is controlled by humans who have designed them.
A group of scientists is also researching Artificial General Intelligence (AGI) related to self-decision-making machines. The concept of AGI is too complex to discuss here.
At the current stage, we can say that any Machine Learning approach can be mapped to find interdependencies or relations between input and output data.
If we try to find the answer to Different types of Machine Learning, we will get different answers, like Classification and Regression, Supervised and Unsupervised, Probabilistic and Non-probabilistic, and many more.
BUT! Have you ever thought?
Why are there different classification categories for the same Machine Learning?
To find this answer, let’s quickly see the simplest pipeline for any machine learning approach to solve the given problem statement.
There are 5 major components playing a vital role in the whole pipeline and the classification of Machine Learning depends upon the nature of all these 5 components. Looking into this pipeline, we can quickly identify the 5 different bases on which Machine Learning can be classified.
Let’s start classifying it on every basis one by one.
Based on the type of Input data that is used to train the algorithms, Machine Learning problems can be classified into four different categories,
Let's explore each of these categories in detail
It is called Supervised learning because the process of learning from training data can be thought of as a teacher who is supervising the learning process. In the below figure, the teacher explicitly provides information on the input data in the form of annotation.
Unsupervised Learning:- Here we only have input data (X) and no corresponding output variables. So there is no teacher to supervise. But now we must be thinking, how machines will learn mapping functions then? This is an interesting field, where machines try to form a pseudo output and then learn mapping functions. Pseudo output can be like the similarity among data samples. In simple terms, we can say that they try to treat underlying characteristics present in the input data as their output data. No explicit output data is required.
This approach is mainly used to dive deeper into data analysis. If you compare this with the above image in the image below, we don’t have any information about the shape type of the input data. But our model can still segregate them based on their color and size. This segregation, done by machines, can be termed Unsupervised Learning.
Reinforcement Learning (RL):- In supervised learning, we present our data in pairs of input and output to our algorithms. In Reinforcement Learning, our machines work as an agent in a virtual environment and perform possible actions in that environment. For example, suppose we asked our machines to play chess. Here Machine is the agent, and the chessboard is the environment.
Our agent is trying to move King, and we know that the king can perform specific movements only. So all the movements a king can make at any stage of the game is the possible set of actions that our agent can take. The agent selects the best action from all the options present at that environmental state, and based on that selection, receives reward/risks. In simple words, our agent will not take any such move that will land our king in checkmate condition. The algorithm tries to maximize the reward with the best set of actions or minimize the risk (of losing the game), and in this way, it learns.
Based on the type of problem that we are trying to solve, we can classify the Machine learning problem into three different categories.
Let's dive deeper into each of these categories
Clustering Problem:- Clustering is a type of problem that requires the use of Machine Learning algorithms to group the given data samples into a specified number of groups. A simple example will be to group the lemons according to their sizes.
Note:- It apparently resembles the classification problem, but the major difference between these algorithms is, the Classification problem is Supervised Learning while Clustering is Unsupervised Learning.
Based on the Nature of the Algorithm used in the Machine Learning process, Machine learning can be classified into three categories.
Based on solution nature, one can classify machine learning into two different categories.
Naturally, ML algorithms are designed to learn the historical input data, make inferences from that historical data, and predict the output for future inputs.
To predict the output, the model can take two approaches:-
Based on the Nature of output, Machine learning can be classified into two different categories.
Question 1: On what basis, the same model can be classified as a supervised model and a classification model?
Question 2: What is the difference between supervised and unsupervised learning?
Question 3: What is the difference between classification and clustering?
Question 4: What makes Reinforcement Learning different from supervised, unsupervised and semi-supervised learning?
Question 5: How Deep-Learning and Neural Networks are different?
In this article, we classified machine learning models on the basis of five different categories. The purpose of this article was to make learners aware about all the classifications of machine learning. Later the detailed descriptions about "supervised and unsupervised learning algorithms" and "classification and regression" problems will be presented.
Subscribe to get well-designed content on data structures and algorithms, machine learning, system design, oops, and mathematics. enjoy learning!
In starting, Machine Learning or Artificial intelligence may be a buzzword to many who are curious but don’t know where to get started. To start with, Machine Learning may seem like a formidable task, especially if one lacks a certain background.
In this blog, we will try to make our computers ready for machine learning practicals. There are various ways to make computer systems AI-enabled, but in this blog, we will try the most preferred and easy-to-use method, i.e., Python3 with Sublime Text 3. Overview of the blog: Installation Of Python3 on Windows, Linux & Mac, Installation of Sublime Text 3 on Windows, Linux & Mac, Installation of pip/pip3, Installation of Numpy, Scipy, Pandas, Installation of Machine Learning Framework, Installation of Deep-learning Framework, Installation of a Visualisation tool.