Machine Learning is a huge field and comes with multiple areas of application. There are different types of machine learning so to solve a problem it is very important to understand that in which area of machine learning your problem fits. Once you identify this area, you can pick up any one algorithms from this area that suits your problem the best and apply machine learning.
In this article we will help you to understand broad areas into which machine learning is divided.
Types of Machine Learning – Three Pillars
Machine Learning in this modern world consist of three broad areas or pillars as you may say-
- Supervised Learning
- Unsupervised Learning
- Reinforcement Learning
Each of these 3 areas in itself are huge and covers many topics, class of problems and algorithms.
Let us take a intuitive look at each of these areas closely in the following sections.
Supervised Learning deals with those class of problems where we know what are the outputs. For example, in Loan Application System, output is already known as
1. Loan Approved 2. Loan Rejected.
Similarly in House Price Prediction System we already know the output price of house for past data.
So the idea is if a machine can go through the past data and its output it can probably understand the hidden correlation and pattern between data and its effect on output. This is known as training or supervising phase.
Once machine equips itself with this training it can then start taking look at new unseen data and make educated predictions about the output.
Supervised Learning is the most widely used machine learning technique now a days because companies are making used of past data within the organization to make predictions about their business, customers, risks etc. Below are some popular use cases of supervise learning –
- Spam Detection
- Loan Approval System
- Image classification
- Recommender System
- Medical Diagnostic System
- Stock Price Prediction
- Handwriting or Speech recognition
- Weather Forecast System
Unsupervised learning deals with those class of problems where output is not known beforehand. We are looking for some answers from the data but do not know the precise answers before hand. Since we don’t have the output answer with us there is no training phase either.
For example let us assume a popular retail company wants to understand its customer groups so that it can do some targeted ad campaign to those groups. It does not have answer to it upfront. We feed customer’s data and its purchase history into unsupervised learning system and asks it to divide the customers into say 10 groups. The machine will do some crunching and produce 10 groups of customers.
Customer in each group will have something in common. In one group customer might be of similar income class. Customers in other groups might be showing similar purchase pattern. In some other group customers might be showing similar expenditures. And so on. With this segmentation in hand, company can now start targeting customers of each group separately with promotions and offers.
It is worth noting that we did not know before hand what characteristics each group will have, i.e. we had no answer before we actually did unsupervised learning. This technique of unsupervised learning is known as Clustering.
Unsupervised learning, is a great way of coming up with some surprisingly hidden information from data.
Some of the popular use case of unsupervised learning are –
- Customer Segmentation
- Image Segmentation
- Market Basket Analysis
- Fraud Detection
- Anomaly Detection
Reinforcement Learning is significantly different from the other two types of learning we discussed above. In this paradigm we have an agent that explores its environment to reach a goal. While exploring its environment it takes some decisions. If the decision helps him to get closer towards the goal, Agent is awarded a positive reward else it is punished by a negative reward. To put this in a blunt term, this can also be looked as a trial an error approach.
As usual an example will make it more clear and a video speaks more. Reinforcement learning has a popular use in game playing by computer agent. This video show how a computer plays Atari’s Breakout game. It learns the game environment for hours and then finally learns human like strategy to play like expert.
Reinforcement Learning is now finding popular uses across industrial areas like
- Robotics and Automation
In The End…
This post was aimed in giving a top level view of different types of machine learning paradigms. Of course there is much more to cover in depth but this was purposefully kept a simple read so that beginners are at ease.
Do remember it is very important to understand that in which one of these machine learning areas your problem lies. From this post you should be able to understand this now.