Deep Learning and Neural Networks
Deep Learning is an approach to Machine Learning based on neural networks. A neural network is a set of task-specific algorithms that are inspired by the structure and function of the human brain.
It consists of interconnected layers of units, called artificial neurons, which send data to each other though connections called edges. The output of the preceding layer will be the input of the subsequent layer.
The first and the last layer of the network are called respectively input layer and output layer. Each layer between these is known as a “hidden layer”.
Signals travel from the input layer to the output layer, possibly after traversing them multiple times. Every layer takes care of recognizing different features of the overall data.
An attached “weight” is associated with each link between layers, the value of which can be increased or decreased to alter the importance of that link. At the end of each training cycle, the system will examine whether the final output of the neural network approaches or moves away from the expected result.
“Deep Learning is an approach to Machine Learning based on neural networks. A neural network is a set of task-specific algorithms that are inspired by the structure and function of the human brain.”
Why Is It Called “Deep”?
Deep learning uses deep neural networks. The term “deep” refers to the number of layers which are hidden in the networks.
A traditional neural network can be composed of just two or three hidden layers, while deep networks can contain more than a hundred hidden layers.
Practically, deep learning expands neural networks into giant sprawling grids, with a huge number of layers that are trained using incredible amounts of data.
The complexity of deep neural networks made possible the abrupt advancing in the ability of computers to manage incredible tasks. For example, speech recognition and computer vision.
Deep Learning Is (Usually) Great!
The peculiar structure of deep neural networks determines both strengths and weaknesses.
In general, deep learning works more autonomously in a wide variety of tasks.
For example, let’s talk about image recognition. In machine learning, the relevant features must be manually extracted from images, while in deep learning feature extraction and modeling steps are automatic.
Deep Learning Grows Fast But Is Hungry!
Another key difference is that deep learning algorithms scale with data. A key advantage of deep learning networks is that they often continue to improve as the size of your data increases.
On the other hand, a successful deep learning application requires a very large amount of data (thousands of images) to train the model, as well as GPUs, or graphics processing units, to rapidly process your data. If we don’t have these things at our disposal, it’s better to use machine learning instead of deep learning.
“A successful deep learning application requires a very large amount of data (thousands of images) to train the model, as well as GPUs, or graphics processing units, to rapidly process your data.”
Some Deep Learning Applications
Today, many problems are brilliantly solved through deep learning. Let’s see some of these briefly.
In 2016 the quality of Google Translate translations suddenly improved, going from a rather mediocre level to the production of sentences close to the quality of a professional human translation.
The Google Translate and Google Brain development teams have gone from using old machine translation algorithms typical of classic machine learning to using a deep neural network trained using Google’s TensorFlow framework.
For this project, Google has specifically created a new type of chip called the Tensor Processing Unit with which to manage large-scale neural networks.
Thanks to Deep-learning, a robot can learn by observing the actions of a human carrying out a task or using the interactions with several other AIs. Human brain processes input from past experiences. A deep learning robot will execute tasks based on the input of many different AI opinions.
Researchers from Nvidia recently created a deep-learning system designed to teach a robot how to carry out a task in such way. It’s not science fiction, it’s now!
Deep learning in robotics usually relies on reinforcement learning, that draws from both supervised and unsupervised learning techniques. It relies on a system of rewards based on monitored interactions to find better ways to improve results.
The researchers took the visual cortex architecture of mammals as a model for neural networks designed to perform image recognition.
In 1998, Yann LeCun LeNet-5 represented a turning point thanks to a seven-level convolutional neural network, capable of recognizing handwritten digits and digitizing them in images of 32 × 32 pixels.
Today, the best image classification models can identify different objects in HD. In addition to pure deep neural networks, it’s pretty common to use hybrid vision models, which combine deep learning with classic machine learning algorithms to perform specific tasks.
Image classification can also be extended to video classification by extracting individual frames from a video and classifying each of them.
Practically, computer software programs designed to simulate human conversation via text or audio messages. Some examples? Alexa, Siri and Google Assistant.
These assistants exploit deep learning to understand their users and to give natural and appropriate answers.
Well, a bit weird and disturbing, sometimes. I still remember when I asked Google to show me a video about cooking pasta with calamaries. A video about Karl Marx started. True story, bro.
Deep learning is changing our lives and transforming every sector of the economy, from Google Translate to driverless cars to personal cognitive assistants.
For this reason, everyone should be aware of its existence and importance, even non-professionals.
Okay, I hope I made all these concepts clearer. In that case, you no longer have to jump into the hole when your friends talk about them!