Have you ever wondered how humans can solve complex tasks such as categorizing different kinds of animals, vegetables, faces, voices, etc. with absolute ease? Fascinating isn’t it! It’s a logical choice to take inspiration from the human brain’s architecture to build an intelligent machine.
The Godfather of Artificial Intelligence, Geoff Hinton, once said, “I get very excited when we discover a way of making neural networks better – and when that’s closely related to how the brain works.”
The logic of taking inspiration from the networks of biological neurons in human brains sparked the concept of Artificial Neural Network (ANN).
So what is ANN?
An ANN is a Machine Learning model that is at the very core of Deep Learning. It can tackle large and highly complicated Machine Learning tasks, such as:
- classifying billions of images (e.g., Google Images),
- powering speech recognition services (e.g., Apple’s Siri),
- recommending the best videos to watch to hundreds of millions of users every day (e.g., YouTube, Netflix)
- learning to beat the world champion at the game of Go (DeepMind’s AlphaGo).
Deep Learning is a type of Machine Learning, which in turn is a type of Artificial Intelligence, where computers self-learn without being programmed to do so.
Understanding Neural Networks in Deep Learning
A neural network is a computing model where many levels are arranged in a hierarchy to form a layered structure. It resembles the networked structure of neurons in the human brain.
The network learns something at every level, and as other levels get added the learning gets complicated.
Suppose the network learns something simple at the initial level and sends this information to the next level. The next level takes this information and combines it to something, a bit complex, and passes it to the third level.
Hence, as levels increase, something more complex gets added to the information passed on by the previous level.
Let’s consider the example of a Deep Learning model to identify dogs’ images.
Suppose the network is shown many examples of different animals with the images of all dogs labeled as a dog.
The program learns to identify all dogs without ever being programmed to call dogs, ‘dogs’. It does so by learning combinations of features that usually appear together like the shape of the body of the dogs, paws, ears, etc., which make them different from other animals.
The initial level of the network might identify light and dark areas to learn where edges or lines are in a picture of a dog. It passes the information about edges or lines to the second level, which then combines them into simple shapes such as a diagonal line or a right angle.
The third level combines these shapes into more complex objects such as rectangles or ovals. The next level might combine the rectangles and ovals into paws, tails, and ears. The process keeps on adding new levels until it reaches a point where the network has learned to identify dogs, and it is the top-most level in the hierarchy.
The additional benefit here is that the network not only learns to identify dogs but also all other animals that it sees during the training process.
As a neural network can learn from data, it can be trained using many examples to recognize patterns in speech or images, classify data, and forecast future events.
Deep learning models are often called deep neural networks as they mostly use neural network architectures.
In a deep neural network, a stack of nodes represents a single data point and acts as the input layer. It is followed by several hidden layers, such as feature learning layers. The output layer is the one that predicts or classifies, in our example, the identification of dog images.
In a neural network, the term deep usually refers to the number of hidden layers. Traditional neural networks can contain only 2-3 hidden layers and fail when trained on large datasheets. Whereas deep networks can have as many as 150 layers and perform surprisingly well with more data.
The strength of Deep Learning is that it can solve complex problems even when the data set is diverse, interconnected, and unstructured. Also, its learning could be supervised, semi-supervised, or even unsupervised.