Source: Deep Learning on Medium
There are so many popular technology Jargon which is quite common to hear in today’s technological environment. Jargon such as Deep learning, Data science, Artificial Intelligence, Pattern Recognition, Machine Learning, Natural Language Processing, Image Processing, Computer Vision, Speech Technology, Reinforcement Learning which keep floating around us! Here and there, isn’t?! But what are they? And how are they different when compared to Deep learning? For example: we would have heard that data scientist is the coolest job of this century, and we also hear a lot about AI which also does the coolest job! But are they same? Or different? why are they are two different names?
This article is written in the motive of understanding what is Deep learning and how it is different from all the other jargon as mentioned above!
Let’s look at a statement that people sometimes say “I want to do NLP and learn AI to become a Data scientist”!! Seems little confusing here! Right? In IITM they have a Robert Bosh center for Data science and Artificial Intelligence, why do you think they have a center for both Data science and Artificial Intelligence? Like, can we have a center for both Soccer and Football if they are same? And then similarly, That’s the question we are to tackle in this article.
The actual definitions of these jargon don’t seem to have shown difference between one another. So to understand it better let’s look at an example: Imagine your given a data set which contains hand written digits with represents a image in the data set contains data from 0 to 9. Your job is to build a model which can automatically classify the image with the right capital. Now the question is: Is this AI or Data science or Pattern recognition or Computer Vision or Deep Learning? Are are very clear with what the task requires? Unless we know that we wouldn’t know what is that we have to learn and what we really care in the data Well, that’s the question we are trying to answer in this article.
Let’s look at these jargon into 3 concepts: abilities, tasks and methods!!
As a human some of the things what we can do is, we can see things clearly and identify them, we have ability to hear and listen, we can read and write and then make a lot of decision on a regular basis. These are the ability humans have. If we had to map these human abilities to an artificial intelligence, we call it: computer vision = seeing things, Speech = hear and listen, NLP = Read and write, Planning/Decision Making = Decision Making. These are the abilities that we expect an artificial intelligence to have.
Once we have these abilities, these abilities allow to do certain tasks for example: If we have Computer Vision ability: We distinct between certain groups by making sense of different patterns such as image, Objects, numbers classifications and recognition etc.
Similarly, if we look at Speech then we can read a text and speak it out that is something know as speech synthesis or speech generation. That is what the speech ability can do. Whereas with Natural Language Process (NLP), we could take a document and split it into similar classes, we can find out certain patterns, we could do conversions and many other tasks in the scope of understanding and generating the document. Likewise, when we talk about Planning & Decision Making, here again the most popular tasks we all know is automation driving cars because that involves lot of planning and decision making. And the interesting thing is that it also takes input from other abilities. It might require some computer vision so that it can see what is there on the road based on that it acts on making decision whether to accelerate or hold the brake. It also takes other abilities as it happens with Humans naturally that is very similar to what happens with this ability. Another illustration of it would be Game playing, where computer playing very advance strategic game with humans and biting them. For example: AlphaGo, Dota etc. And we have robotics!!
Now once we have these tasks, the question arises is how are we going to achieve with these tasks?
The earliest way of doing AI was on expert systems where such rules were written. This rule does not have learning but it works based on whatever rules we give and then machine executes based on it. Latter on when people realized that this is very harder because of various domains it could be very challenging that too many rules get very difficult to write, that’s when machine learning models came in. In the last decades the family of machine learning algorithm evolved to be known as deep learning such neutral networks etc. Which is to learn to perform better than the previous models we had provided given a large set of data that’s why it has been so popular. And then we have reinforcement learning which allow to do lot of planning and decision-making tasks. So, if I had to ask what is AI? The answer is AI encompass all of these Abilities, Tasks and Methods or any of these.
Machine learning requires data to learn — 99% of tasks in machine learning is achieved through supervised learning which means we have the input and output given to the machine. Secondly, the machine doesn’t know exactly what to learn so it needs to be told by giving a function. Again human needs to give the function or from a family of function the machine can choose the best function suits the model. Not just human also should aid the machine by adjusting certain parameters, it has to fix the learning rate like how fast the machine can learn, how much data is required, data has to be sent in certain order.
As we look in the earlier in the above paragraph, I am now grouping the jargon based on the 3 concepts such as abilities, tasks and methods.
Abilities: NLP, Computer Vision, Speech
Tasks: Object Detection, Machine Translation, Text-to-Speech
Methods: Deep Learning, Machine Learning
And AI is something that encompasses all of these.
Lot of time I have come across people saying I want to learn AI so that I can become a Data Scientist and then work on NLP models which is quite confusing here!!so how is these terms connect with the term Data Science as a whole. Keeping this question for latter, now we look at what Data Science as a whole about.
Is the term Data Science being all about taking some data and describing the data as such what is the mean of the population, what is the variance of population, showing bar charts with difference between population, asking question based on the data? What we want to predicting about the data?
So, when we deal with numeric data (think of database tables, employee, customer, sales etc) to analyse and understand association or visualize to communicate with people it can be called as data science and in the same time if we doing any analysis with image data it is called computer vision, and with speech data it is called speech, anything with text data it would be called as natural language processing. Now all of these are data. Now we can relate to the question we had Why learn NLP or AI to become a Data Scientist: we learn NLP because we can work on the tasks that we are interested in as such to predict or answer the question we have on our data. That’s how I would look at these all terms. I hope you get some meaning there!!
Now that we know where all of these terms fall in the Universe of Artificial Intelligence, we are now ready to talk about Deep Learning!
Among all the methods that we have in AI, the reason why Deep Learning has become popular is because given these building blocks that we have such as Deep neural network, feed forward neural network, recurrent neural network, convolutional neural network and their combinations where we could combine these neural networks to come up with more interesting networks we could attack tasks belonging to any of these that we discussed such as tasks related to Computer Vision or Speech or NLP. Now learning this one tool or one set of methods your enable in doing tasks belonging to multiple abilities. Not only these abilities, we also have connection to decision making ability. So, this is one hammer which allows you to attack tasks belonging to different abilities. The downside is that this hammer is very data insensitive, if you want to use Deep Learning for your applications make sure you have lot of supervised data.