Unfolding the classic dilemma: Artificial Intelligence vs Machine Learning vs Deep learning.

Source: Deep Learning on Medium


You can’t really live in 21st century and happen to ignore terms like Artificial Intelligence(AI) or Machine Learning(ML). Although these terms are used interchangeably, there is quite a difference between them. Despite a huge number of blogs and discussions available online, there is still some kind of confusion floating around.

This is due to the fact that most of the writer usually resort to a similar image or graphic in order to explain the difference between Artificial Intelligence, Machine Learning and Deep Learning.

Although this representation does a great job at emphasizing that deep learning comes under machine learning which itself is a subset of Artificial Intelligence, It lacks the ability to describe how these terms actually differ from each other. Moreover, to a person totally new to this field, this picture might convey hardly anything.

Let us now find out how these terms actually differ from each other,

Artificial Intelligence(AI): 
It can be dated back to to the year 1956, when American computer scientist John McCarthy coined the term “Artificial Intelligence”, and defined it as “the science and engineering of making intelligent machines”.

In simple words, AI is just the use of algorithms to solve problems varying from simple to complex.(keep this statement in your mind)

What this means is that, algorithm is designed in order to solve a particular problem which cannot be solved with a single computer program, this algorithm has the ability to react differently as it is tailored to serve that particular problem.
Let us take an example,
Assume that we have to detect/identify an orange in a given image. If we were to design an algorithm for this, it would be something like-

1.Check if there are any orange colored pixels present in the image.
2.Convert the image from RGB to grayscale.
3.Apply various filters and edge detection operations on the image.
4.Check if the edge detected resembles the shape of an orange.
5.Calculate the co ordinates where the orange is located in the image.
6.Finally, place a bounding box(border) around the orange in image.
(This is an oversimplified algorithm just for the sake of an example) 
*Kindly note that the algorithm has 2 main criteria, color and shape to detect orange.

If you think about it carefully, most of the steps above require some condition to be fulfilled in order to get executed. Like, for step 1 to be effective the input image should be a RGB(color image) or else the algorithm might fail to identify the orange. If the input image is a BW(black and white) with an orange present in it, the algorithm would still fail to detect it as there is no orange colored pixels present in it.
As we can see, the above problem requires a lot of conditions to be fulfilled and multiple programs in order to achieve results which is not possible with a single program.

Machine Learning(ML):
Remember how we stated that Artificial Intelligence is the use of algorithms over a single program to solve a certain problem?
Machine learning is the realization of algorithms for a given particular problem. 
I think we all agree that detecting a person’s face is far more complex than detecting an orange in a given image, imagine designing an algorithm for face detection.
Back then, as AI was being applied to more and more complex tasks, there was a need for a way to design relatively complex algorithms. This is where machine learning came into picture.
Machine learning is the technique in which we provide the machine with relevant data, further the machine has to find out patterns in the data using mathematical functions and give us an algorithm as per our requirement.
The only requirement of machine learning was that it required a lot of data to be able to provide good results, this was fulfilled in the recent decades with the introduction of internet.
Simply put, Machine learning can be looked upon as the automated technique of designing algorithms that are required by AI.

A detailed look at various Artificial Intelligence subsets.

Now that we know, AI is the use of algorithms and ML is a technique to provide AI with those algorithms we can move on to Deep learning.

Deep Learning(DL):
Deep learning is a special branch of machine learning that is inspired by the structure of human brain. The learning algorithms in DL work similarly how our brain works. 
DL is used widely used for complex tasks such as image processing, natural language processing, etc. As these tasks can be solved easily with some level of human intuition which DL provides us with. 
Classic ML algorithms(Predictive analytics) excel at tasks like finding patterns and predict (example: stock prices) accurately but tend to under perform in tasks such as face detection.
Although if you think about it, a person can easily detect face in a picture but predicting a stock price would be really difficult for him/her. This is where DL comes into picture, leveraging it’s similarity to a human brain.
In simple words, Deep learning is just a subset of machine learning with the working principle of a human brain. 
(Detailed explanation of Deep learning is out of the scope of this blog. So we are just pointing out the differences. )

Finally, I’ll try to summarize this blog in just few lines,

Artificial Intelligence is the use of algorithms to solve problems that cannot be solved by a single program, Machine learning is a technique that helps in automating the design of complex algorithms required by AI.
Whereas Deep learning is a branch of ML where the algorithms are based on abstraction of human brain thus gaining some level of human intuition(understanding).

Time to wrap this up! Comments, questions and suggestions are always welcome!