What is Deep learning?
Ever wondered how google translates an entire webpage 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.
How deep learning works
Deep learning is a type of machine learning in which multi-layered neural networks – imitates to work like the human brain -“learn” from large amounts of data. Within each layer of the neural network, algorithms with deep learning perform calculations and make predictions repeatedly, progressively “learning” and gradually improving the accuracy of the outcome over time. Deep Learning is also used for decision making in fields like autonomous car driving, across apps in computer vision, conversational AI and recommendation systems.
Deep learning vs. machine learning
Simply said, deep learning is a way to automate predictive analytics. While machine learning algorithms are linear, deep learning algorithms are built in a hierarchy of increasing multiplicity and abstraction.
- If we have to create a machine that could differentiate between potatoes and tomatoes. If 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 a much higher volume of data to train our machine now.
let’s imagine into the working of neural networks. Here we have three students each of them write down the digit 6 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.
Here’s a neural network trained to identify handwritten digits.
- Each number is present as an image of 24 times 24 pixels which amounts to a total of 576 pixels.
- Neurons the core entity of a neural network is where the information processing takes place each of the 576 pixels is fed to a neuron in the first layer of our neural network.
- This forms the input layer on the other end we have the output layer with each neuron representing a digit with the hidden layers existing between them.
- The information is transmitted from one layer to another over connecting channels. Each of these has a value attached to it and hence is called a weighted Channel.
- All neurons have a unique number associated with it called bias. This bias is added to the weighted sum of inputs reaching the neuron which is then applied to a function known as the activation function.
The result of the activation function determines if the neuron gets activated. Every activated neuron passes on information to the next layers. This continues up till the second last layer the 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
- Customer support – when most people converse with customer support agents the conversation seems so real that they don’t even realize that it’s actually a bot on the other side.
- Healthcare – From personal virtual assistants to fitness bands and gears, computers are recording a lot of data about a person’s physiological and mental condition every second.
- Autonomous Cars – what seem like science fiction is now a reality. Apple, Tesla and Volvo are only a few of the companies working on self-driving cars. Uber AI Labs in Pittsburg are engaging in some impressive work to make autonomous cars a reality for the world.
- Text Generation – soon, deep learning will create original text (even poetry), as technologies for text generation is evolving fast.
- Facial Recognition – The iPhone’s Facial Recognition uses deep learning to identify data points from your face to unlock your phone or spot you in images.
- Visual Recognition – Convolutional Neural Networks enable digital image processing that can further be segregated into object recognition, facial recognition, handwriting analysis and etc.
- Virtual Assistants – Amazon Echo, Google Assistant, Alexa, and Siri are all exploiting deep learning capabilities to build a customized user experience. They “learn” to recognize your voice and accent and present you a secondary human experience through a machine by using deep neural networks imitating the voice and the tone of a human.
Open Source Deep Learning Tools
- TensorFlow is an end-to-end open source platform for machine learning.
- Keras is a high-level neural networks API, written in Python and capable of running on top of TensorFlow.
- Caffe one of the deep learning tools built for scale which helps machines to track speed, modularity and expression. It uses interfaces with C, C++, Python, MATLAB
- Torch is a scientific computing framework with wide support for machine learning algorithms that puts GPUs first.
- Chainer is a Python-based deep learning framework aiming at flexibility.
- Deeplearning4j is a JVM-based, industry-focused, commercially supported, distributed deep-learning framework. The most significant advantage of using Deeplearning4j is speed.
Deep learning limitations
- Data – while deep learning is the most efficient way to deal with unstructured data a neural network requires a massive 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 and neural network requires graphical processing units which have thousands of course as compared to CPUs and GPUs are of course more expensive and 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 so
Here are points for you arrange the following statements in order to describe the working of a neural network
1-the bias is added
2-the weighted sum of the inputs is calculated
3-specific neuron is activated
4-the result is fed to an activation function