What is Deep Learning?
Deep learning is a method in artificial intelligence (AI) that teaches computers to process data in a way that is inspired by the human brain. Deep learning models can recognize complex patterns in pictures, text, sounds, and other data to produce accurate insights and predictions. You can use deep learning methods to automate tasks that typically require human intelligence, such as describing images or transcribing a sound file into text.
Why is deep learning important?
Artificial intelligence (AI) attempts to train computers to think and learn as humans do. Deep learning technology drives many AI applications used in everyday products, such as the following:
- Digital assistants
- Voice-activated television remotes
- Fraud detection
- Automatic facial recognition
It is also a critical component of emerging technologies such as self-driving cars, virtual reality, and more.
Deep learning models are computer files that data scientists have trained to perform tasks using an algorithm or a predefined set of steps. Businesses use deep learning models to analyze data and make predictions in various applications.
What are the uses of deep learning?
Deep learning has several use cases in automotive, aerospace, manufacturing, electronics, medical research, and other fields. These are some examples of deep learning:
- Self-driving cars use deep learning models to automatically detect road signs and pedestrians.
- Defense systems use deep learning to automatically flag areas of interest in satellite images.
- Medical image analysis uses deep learning to automatically detect cancer cells for medical diagnosis.
- Factories use deep learning applications to automatically detect when people or objects are within an unsafe distance of machines.
You can group these various use cases of deep learning into four broad categories—computer vision, speech recognition, natural language processing (NLP), and recommendation engines.
Computer vision is the computer's ability to extract information and insights from images and videos. Computers can use deep learning techniques to comprehend images in the same way that humans do. Computer vision has several applications, such as the following:
- Content moderation to automatically remove unsafe or inappropriate content from image and video archives
- Facial recognition to identify faces and recognize attributes like open eyes, glasses, and facial hair
- Image classification to identify brand logos, clothing, safety gear, and other image details
Deep learning models can analyze human speech despite varying speech patterns, pitch, tone, language, and accent. Virtual assistants such as Amazon Alexa and automatic transcription software use speech recognition to do the following tasks:
- Assist call center agents and automatically classify calls.
- Convert clinical conversations into documentation in real time.
- Accurately subtitle videos and meeting recordings for a wider content reach.
Natural language processing
Computers use deep learning algorithms to gather insights and meaning from text data and documents. This ability to process natural, human-created text has several use cases, including in these functions:
- Automated virtual agents and chatbots
- Automatic summarization of documents or news articles
- Business intelligence analysis of long-form documents, such as emails and forms
- Indexing of key phrases that indicate sentiment, such as positive and negative comments on social media
Applications can use deep learning methods to track user activity and develop personalized recommendations. They can analyze the behavior of various users and help them discover new products or services. For example, many media and entertainment companies, such as Netflix, Fox, and Peacock, use deep learning to give personalized video recommendations.
How does deep learning work?
Deep learning algorithms are neural networks that are modeled after the human brain. For example, a human brain contains millions of interconnected neurons that work together to learn and process information. Similarly, deep learning neural networks, or artificial neural networks, are made of many layers of artificial neurons that work together inside the computer.
Artificial neurons are software modules called nodes, which use mathematical calculations to process data. Artificial neural networks are deep learning algorithms that use these nodes to solve complex problems.
What are the components of a deep learning network?
The components of a deep neural network are the following.
An artificial neural network has several nodes that input data into it. These nodes make up the input layer of the system.
The input layer processes and passes the data to layers further in the neural network. These hidden layers process information at different levels, adapting their behavior as they receive new information. Deep learning networks have hundreds of hidden layers that they can use to analyze a problem from several different angles.
For example, if you were given an image of an unknown animal that you had to classify, you would compare it with animals you already know. For example, you would look at the shape of its eyes and ears, its size, the number of legs, and its fur pattern. You would try to identify patterns, such as the following:
- The animal has hooves, so it could be a cow or deer.
- The animal has cat eyes, so it could be some type of wild cat.
The hidden layers in deep neural networks work in the same way. If a deep learning algorithm is trying to classify an animal image, each of its hidden layers processes a different feature of the animal and tries to accurately categorize it.
The output layer consists of the nodes that output the data. Deep learning models that output "yes" or "no" answers have only two nodes in the output layer. On the other hand, those that output a wider range of answers have more nodes.
What is deep learning in the context of machine learning?
Deep learning is a subset of machine learning. Deep learning algorithms emerged in an attempt to make traditional machine learning techniques more efficient. Traditional machine learning methods require significant human effort to train the software. For example, in animal image recognition, you need to do the following:
- Manually label hundreds of thousands of animal images.
- Make the machine learning algorithms process those images.
- Test those algorithms on a set of unknown images.
- Identify why some results are inaccurate.
- Improve the dataset by labeling new images to improve result accuracy.
This process is called supervised learning. In supervised learning, result accuracy improves only when you have a broad and sufficiently varied dataset. For instance, the algorithm might accurately identify black cats but not white cats because the training dataset had more images of black cats. In that case, you would need to label more white cat images and train the machine learning models once again.
What are the benefits of deep learning over machine learning?
A deep learning network has the following benefits over traditional machine learning.
Efficient processing of unstructured data
Machine learning methods find unstructured data, such as text documents, challenging to process because the training dataset can have infinite variations. On the other hand, deep learning models can comprehend unstructured data and make general observations without manual feature extraction. For instance, a neural network can recognize that these two different input sentences have the same meaning:
- Can you tell me how to make the payment?
- How do I transfer money?
Hidden relationships and pattern discovery
A deep learning application can analyze large amounts of data more deeply and reveal new insights for which it might not have been trained. For example, consider a deep learning model that is trained to analyze consumer purchases. The model has data only for the items you have already purchased. However, the artificial neural network can suggest new items that you haven't bought by comparing your buying patterns to those of other similar customers.
Deep learning models can learn and improve over time based on user behavior. They do not require large variations of labeled datasets. For example, consider a neural network that automatically corrects or suggests words by analyzing your typing behavior. Let's assume it was trained in the English language and can spell-check English words. However, if you frequently type non-English words, such as danke, the neural network automatically learns and autocorrects these words too.
Volatile data processing
Volatile datasets have large variations. One example is loan repayment amounts in a bank. A deep learning neural network can categorize and sort that data as well, such as by analyzing financial transactions and flagging some of them for fraud detection.
What are the challenges of deep learning?
As deep learning is a relatively new technology, certain challenges come with its practical implementation.
Large quantities of high-quality data
Deep learning algorithms give better results when you train them on large amounts of high-quality data. Outliers or mistakes in your input dataset can significantly affect the deep learning process. For instance, in our animal image example, the deep learning model might classify an airplane as a turtle if non-animal images were accidentally introduced in the dataset.
To avoid such inaccuracies, you must clean and process large amounts of data before you can train deep learning models. The input data preprocessing requires large amounts of data storage capacity.
Large processing power
Deep learning algorithms are compute-intensive and require infrastructure with sufficient compute capacity to properly function. Otherwise, they take a long time to process results.
What are the benefits of deep learning in the cloud?
Running deep learning algorithms on cloud infrastructure can overcome many of these challenges. You can use deep learning in the cloud to design, develop, and train deep learning applications faster.
You can train deep learning models faster by using clusters of GPUs and CPUs to perform the complex mathematical operations that your neural networks require. You can then deploy these models to process large amounts of data and produce increasingly relevant results.
With the wide range of on-demand resources available through the cloud, you can access virtually unlimited hardware resources to tackle deep learning models of any size. Your neural networks can take advantage of multiple processors to seamlessly and efficiently distribute workloads across different processor types and quantities.
What is deep learning on AWS?
AWS deep learning services harness the power of cloud computing so that you can scale your deep learning neural networks at a lower cost and optimize them for speed. You can also use AWS services, such as the following, to fully manage specific deep learning applications:
- Amazon Rekognition to add pretrained or customizable computer vision features to your application
- Amazon Transcribe to automatically recognize and accurately transcribe speech
- Amazon Lex to build intelligent chatbots that understand intent, maintain conversational context, and automate simple tasks across many languages
Get started with deep learning on AWS with Amazon SageMaker to quickly and easily build, train, and deploy neural networks at scale. You can also use the AWS Deep Learning AMIs to build custom environments and workflows for deep learning. Create a free AWS account to get started today!