Deep Learning is a hot buzz nowadays and has firmly put down its roots in a vast multitude of industries that are investing in fields like Artificial Intelligence, Big Data and Analytics. For example, Google is using deep learning in its voice and image recognition algorithms whereas Netflix and Amazon are using it to understand the behavior of their customer. In fact, you won’t believe it, but researchers at MIT are trying to predict future using deep learning. Now, imagine how much potential deep learning has in revolutionizing the world and the way we work around things. Before talking about deep learning, one must understand its relationship with Machine Learning and Artificial Intelligence. The easiest way to understand this relationship is by going through the diagram below:
What is Deep Learning – AI Technologies Timeline
Here, in the image you can see that the Machine Learning is a subset of AI. This implies for the fact that we can build intelligent machines that can learn based on provided data set on its own. Further you will notice that the Deep Learning is a subset of Machine Learning where similar Machine Learning Algorithms are used to train Deep Neural Networks so as to achieve better accuracy in those cases where former was not performing up to the mark. Following topics will be discussed:
- Artificial Intelligence
- Machine Learning
- Drawbacks of ML
1. Artificial Intelligence
What is Deep Learning – Artificial Intelligence
The term AI was coined in 1956 by John McCarthy, who is also referred as Father of Artificial Intelligence. The idea behind AI is fairly simple yet fascinating, which is to make intelligent machines that can take decisions on its own. You may think it as a science fantasy, but with respect to recent developments in technology and computing power, the very idea seems to come closer to reality day by day.
2. Machine Learning: A Step towards Artificial Intelligence
Now, that you are familiar with AI, let us talk briefly about Machine Learning and understand what it means when we say that we’re programming machines to learn. Let us begin with a very famous definition of Machine Learning:
“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.” — Tom Mitchell, Carnegie Mellon University
So, if you want your program to predict, traffic patterns at a busy intersection (task T), you can run it through a machine learning algorithm with data about past traffic patterns (experience E). Now, the accuracy of the prediction (performance measure P) will depend on the fact that whether the program has successfully learned from the data set or not (experience E).
Basically, Machine Learning is referred to as a type of artificial intelligence (AI) that provides computers with the ability to learn without being explicitly programmed by exposing them to vast amount of data. The core principle behind Machine Learning is to learn from data sets and try to minimize error or maximize the likelihood of their predictions being true.
3. Drawbacks of the Machine Learning
- Traditional ML algorithms are not useful while working with high dimensional data, that is where we have a large number of inputs and outputs. For example, in case of handwriting recognition we have large amount of input where we will have different type of inputs associated with different type of handwriting.
- Second major challenge is to tell the computer what are the features it should look for that will play an important role in predicting the outcome as well as to achieve better accuracy while doing so. This very process is referred as feature extraction.
Feeding raw data to the algorithm rarely ever works and this is the reason why feature extraction is a critical part of the traditional machine learning workflow. Therefore, without feature extraction, the challenge for the programmer increases as the effectiveness of algorithm very much depends on how insightful the programmer is. Hence, it is very difficult to apply these Machine Learning models or algorithms to complex problems like object recognition, handwriting recognition, NLP (Natural Language Processing), etc.