First of all, why this matters?
Most of us are familiar with the term “Artificial Intelligence”, and probably have seen movies like Terminator, The Matrix, I Robot. But nowadays people recently use terms like “Machine Learning” and “Deep Learning”, sometimes used interchangeably with Artificial Intelligence.
As a result, the difference between Artificial Intelligence, Machine Learning, and Deep Learning can be very unclear and confusing.
So, if you are a developer, soon you will see that customers will ask you to integrate some AI, ML or DL API into his app, and this is a very important step. In order to understand what customer really means, you should understand the differences between these terms.
What Artificial Intelligence (AI), Machine Learning (ML), and Deep Learning (DL) actually means and how they differ
Artificial Intelligence
We can put AI into two categories, general and narrow. General AI would have all of the characteristics of human intelligence, including the capacities mentioned above. Narrow AI exhibits some facet(s) of human intelligence, and can do that facet extremely well, but is lacking in other areas
Example – Narrow AI:
A machine that’s great at recognizing images, but nothing else.
Machine Learning
Machine learning is a method of achieving Artificial Intelligence.
That basically means you can get AI without using machine learning, but this would require building millions of lines of codes with complex rules and decision-trees. So instead of hard coding software routines with specific instructions to accomplish a particular task, machine learning is a way of “training” an algorithm so that it can learn how.
To train, we need to feed huge amounts of data to the algorithm allowing the algorithm to adjust itself and improve.
To give an example, machine learning has been used to make drastic improvements to computer vision (the ability of a machine to recognize an object in an image or video). You gather hundreds of thousands or even millions of pictures and then have humans tag them.
Example:
Humans tag pictures that have cats in them versus those that don’t. Then, with iterating, the algorithm starts building a model that recognizes if the picture has a cat in it or not, and, as accurate as a human being, can decide if the picture needs the tag. a Once the accuracy level is high enough, the machine has now “learned” what a cat looks like.
Deep Learning
Deep learning is one of many approaches to machine learning.
Deep learning was inspired by the structure and function of the brain, namely the interconnecting of many neurons. Artificial Neural Networks (ANNs) are algorithms that mimic the biological structure of the brain.
In ANNs, there are “neurons” which have discrete layers and connections to other “neurons”. Each layer picks out a specific feature to learn, such as curves/edges in image recognition. It’s this layering that gives deep learning its name, depth is created by using multiple layers as opposed to a single layer.
Examples:

Automatic colorization of black and white images. Picture from: https://bit.ly/2mfS7ey

Automatic machine translation. Image from https://bit.ly/2FFZy2Z

Object classification and detection in photographs. Picture from https://bit.ly/2mfSe9Y

Automatic handwriting generation. Picture from https://bit.ly/2lV0LiE

Automatic text generator. Picture from https://bit.ly/2bcvAnY

Automatic image caption generator. Picture from https://stanford.io/1yST733
To sum up…
Being able to differentiate these terms is important for both – developers and other IT specialists, as it may encourage not to be afraid of doing AI, ML, DL integrations. It appears confusing until you have the knowledge.
Further reading
http://tinyclouds.org/colorize/
https://research.googleblog.com/2015/07/how-google-translate-squeezes-deep.html
https://research.googleblog.com/2014/09/building-deeper-understanding-of-images.html
http://www.cs.toronto.edu/~graves/handwriting.html