In our last blog post, we looked at how big data and analytics can help the environment. In this blog post, we turn our attention a form of artificial intelligence called Deep Learning.
We look at what Deep Learning is, explore how it works, explain how it’s different from machine learning, what makes it so useful, and finally, we look at some examples of where deep learning has been deployed with success.
What is Deep Learning
Before we look at the “how’s” and the “whys” of Deep Learning, it’s worth explaining what it means. Deep learning is effectively a form of artificial intelligence that replicates the inner workings of the human brain in relation to processing information. Whereas traditional software typically runs in a linear manner, deep learning solutions are a departure from this approach.
The artificial structures used by deep learning technology are typically modeled by interconnected “nodes” (or neurons) which allows systems built on deep learning to process information in a non-linear fashion. Multiple layers of information can be combined with other layers to give the machine different perspectives which can help it produce different solutions, not too dissimilar to how us humans absorb information from multiple sources and make decisions!
It is a subset of machine learning (another form of artificial intelligence) which contains networks that are capable of learning from information that is unstructured/unlabelled.
How Does Deep Learning Work?
We hinted at this earlier where we mentioned that a solution built using deep learning is built on neurons (or nodes) that are interconnected.
From the image above, you can see the nodes are grouped into three different types of layer (input, hidden and output). This might not make much sense at first glance, so to give you some more context, imagine you need to build a taxi fare solution that helps predict the price of taxi fares using the following inputs:
- Date/Time of journey
- Start Address
- Destination Address
The Input Layer receives data, so, for our example, we have four nodes (Start Address, Destination Address and Date/Time) of the journey.
The Hidden Layer is where the machine applies intense number crunching and data processing against the inputs. Quite often, one of the main challenges when creating neural networks is deciding on how many layers/neurons the AI should have (side point – the deep in Deep Learning refers to having multiple Hidden Layers).
The Output Layer returns the data after it’s been processed, or in our case, the predicted taxi fare.
Deep Learning Magic
Up until now, you might be thinking, OK, this doesn’t sound too different from passing parameters into several object methods and returning a value (and you could be forgiven for arriving at that conclusion!).
What happens next is what sets Deep Learning apart. Connections between each node in the Deep Learning model are associated with a particular weight. The weight effectively dictates the importance of the input value. Imagine your brains neurons that are responsible for breathing and heartbeat, these would be assigned a “high weight”.
Our example isn’t so critical, that said, one of the more critical values in our taxi fare prediction model is the Journey Date/Time. If that isn’t deemed important, the passenger could miss a connection or appointment should the taxi driver arrive late for collection.
After the input data has made its way through all the layers in the Deep Learning model, the output data is passed by through the Output Layer.
From the image above, a hypothetical path for our taxi fare prediction solution would be to assign Journey Date/Time the weight of 3 meaning the network could potentially run through Hidden Layer nodes 0.6169, 0.7794.Deep Learning is now at the point where it can outperform humans in certain tasks or problem domains Click To Tweet
What makes Deep Learning so useful?
With a bit of theory out of the way, you might be wondering how deploying a Deep Learning solution is different from other analytics or artificial intelligence innovations.
One of the main benefits of Deep Learning is its accuracy and if you need to develop mission-critical solutions such as driverless cars, a Deep Learning solution is a good foundation to build on.
Arriving at this accuracy takes LARGE amounts of training data, however. For example, if you wanted to train a Deep Learning model to support a driverless car solution, you’d need to supply thousands of hours of car driving video and consequently, serious hardware is required to build optimal Deep Learning models.
Despite requiring large computation power, powered by advancements in GPUs, recent developments in Deep Learning are now at the point where it can outperform humans in certain tasks or problem domains! Microsoft Research had a deep learning project that was able to identify objects in digital images far more efficiently than humans could!
Examples of Deep Learning in the Real World
Deep Learning is being successfully deployed around the world in many uses cases, some of these include:
Facebook and Google Image Recognition
We’re used to using machines to automate and classify our photographs whether it be by date, image size, file type and so on. In the last 10 years, however, we’ve seen the advancements of Deep Learning reach our personal life in the form of automatically identifying friends and family when uploading images to social networks such as Facebook.
Android phones also ship with Google Images that will now automatically interrogate your handset device and apply AI to automatically create albums using photos you‘ve captured. Google Photos will even try to identify the location based on the content of your photos and give the album a suitable name!
Worth a mention is another Google product – Translate. This Deep Learning solution can automatically translate images with text in real-time to a language of your choice. You just hold the camera on top of the object and your handset invokes a deep learning network to read the image, converts it to text (using OCR) then translates it!
Robotics is an interesting space where Deep Learning can be deployed. A researcher at Nvidia developed a solution built on Deep Learning that effectively taught robots how to perform tasks by observing human interactions!
In this article, we’ve introduced Deep Learning, explored how it works conceptually, looked at what makes it so useful and touched on some examples of it in the real world. We hope that by reading this article you have a more in-depth understanding now as to what Deep Learning is!
Here at Growth Acceleration Partners, we have extensive expertise in many verticals. Our nearshore business model can keep costs down whilst maintaining the same level of quality and professionalism you’d experience from a domestic team.
Our Centers of Engineering Excellence in Latin America focus on combining business acumen with development expertise to help your business. We can provide your organization with resources in the following areas:
- Software development for cloud and mobile applications
- Data analytics and data science
- Information systems
- Machine learning and artificial intelligence
- Predictive modeling
- QA and QA Automation
Latest posts by Roy Cruz (see all)
- Deep Learning: What Does it Mean, and How is it Used? - November 16, 2018