What is Deep Learning: Ever wondered how Google translates an entire web page to a different language in a matter of seconds or your phone gallery groups images based on their location? All of this is a product of deep learning but what exactly is deep learning?
Deep learning definition:
Deep learning can be defined as a subset of machine learning which in turn is a subset of artificial intelligence. Artificial intelligence is a technique that enables the machine to mimic human behavior. Machine learning is a technique to achieve AI through algorithms trained with data and finally, deep learning is a type of machine learning inspired by the structure of the human brain. In terms of deep learning, this structure is called an artificial neural network.
Lets understand deep learning better and how it’s different from the machine learning.
Say we create a machine that could differentiate between tomatoes and cherries. It’s done using machine learning. We’d have to tell the machine the features based on which the two can be differentiated. These features could be the size and the type of stem on them. With deep learning, on the other hand, the features are picked out by the neural network without human intervention. Of course, that kind of independence comes at the cost of having it a much higher value of data to train our machine.
How deep learning works?
Now let’s dive into the working of neural networks. Suppose we have three students each of them write down the digit nine on a piece of paper. Notably, they don’t all write it identically. The human brain can easily recognize the digits but what if a computer had to recognize them? That’s where deep learning comes in. A neural network could be trained to identify handwritten digits. Each number is represented as an image of 28×28 pixels. That amounts to a total of seven hundred and eighty-four pixels.
A neuron is the core entity of the network where the information processing takes place. Each of the 784 pixels is fed to a neuron in the first layer of our neural network. This forms the input layer.
On the other hand, we have the output layer with each neuron representing a digit with a hidden layer existing between them. The information is transferred from one layer to another over connecting channels. Each of these channels has a value attached to it and hence is called a weighted channel. All neurons have a unique number associated with it called bias. The bias is added to the weighted sum of inputs reaching to the neuron which is then applied to a function known as the activation function.
The result of the activation function determined if the neuron activated. Every activated neuron passes on information to the following layers. This continues until the second last layer. One neuron activated in the output layer corresponds to the input digit.
The weights and bias are continuously adjusted to produce a well-trained network.
Where is deep learning applied?
- In customer support when most people converse with customers support agents. The conversation seems so real they don’t even realize that it’s actually a bot on the other side.
- In medical care, neural networks detect cancer cells and analyze an MRI image to give detailed results.
- Self-driving cars which seem like science fiction is now a reality. Apple, Tesla, and Nissan are only a few of the companies working on self-driving cars.
What are the limitations of deep learning:
Deep learning has a vast scope but it do faces some limitations.
- The first is as we discussed earlier is data. While deep learning is the most efficient way to deal with unstructured data, neural networks require a mass volume of data to train.
- Let’s assume we always have access to the necessary amount of data. Processing this is not within the capability of every machine and that brings us to our second limitation, computational power. Training a neural network requires graphical processing units which have thousands of cores as compared to CPUs and GPUs, of course, are more expensive.
- Finally, we come down to training time. Deep neural networks take hours or even months to train. The time increases with the amount of data and number of layers in the network.
This article is contributed by a guest.
Liked this article? Then please like our Facebook Page & stay connected with us.