Learn More About Deep Learning Software
What are its important use cases?
Deep learning is a machine learning technique so its areas of applications are almost limitless. However, business benefit of a model need to be compared with the cost of setting up such a model.
Any business application would benefit from better predictions. After all, life is the decisions we make and our decisions are as good as our predictions. Examples of applications include:
- Image classification: From recognizing customers who enter the store to automatically identifying defects, image classification applications exist in almost all industries
- Other predictions: Predicting churn in marketing, likelihood to buy in sales, customer's emotional state from her voice in customer service contact centres are all some of the applications of deep learning
Models have widespread applications areas but also have setup time and costs. Therefore, the business case for models need to be investigated before rolling out models. In short, areas where models provide the best value are:
- Valuable predictions where machines outperform humans. Soon, medical image analysis could be within this domain as for example a cancer diagnosis is quite valuable and machines could be doing better than humans in the near future
- Lower value predictions that need to be repeated often. Most machine learning models tend to fall into this category. Going through millions of customers to identify the right customers for a campaign is too costly without having a model to pick the right customers.
What are the common pitfalls in implementation?
Business and management teams need to align on the level of granularity they will discuss to understand model output. This level can be individual results, result patterns that cover 10 cases, 100 cases or 1000 cases. Aligning this at the beginning of the exercise minimizes unncessary discussions between the teams. This is important because deep learning's lack of an easy mechanism for explainability can lead to long discussions between technical and business teams as they try to understand why specific errors take place.
Proof of Concept (PoC)/demo guide: What are the things to pay attention to while completing a PoC/demo of a deep learning software?
As in any PoC, it is helpful to have a list of goals/assessment areas with quantifiable values. This enables different PoCs to be be compared and PoC to be useful during vendor selection.
In case of deep learning software, PoC should be mainly focused on assessing usability and model accuracy. The best way to assess usability is to have the team that will use the product to build a project with it. After the project, they should assess the software using the list they prepared in advance which should allow for objective assessment of different software.
To assess model accuracy, the team assessing the product needs to identify business value of different model outputs. Read our comprehensive guide on machine learning accuracy to learn more and to be able to assign a numeric value to different machine learning models.
What are the next steps after you successfully deploy deep learning software?
As with any software implementations, benefits should be measured and ROI should be cross-checked against targets so teams understand if their initial estimates were accurate. This helps teams understand and improve the accuracy of their estimates.
Purchase guide: What is important to consider while choosing the right product?
There are 3 criteria specific to choosing a deep learning solution: Support for deep learning techniques, flexibility and model accuracy in areas where your company needs deep learning models.
- Support for deep learning architectures: There are many deep learning architectures explored in research with varying levels of accuracy in case of different datasets. Deep learning software needs to support these deep learning structures so your company can implement them with ease
- Flexibility: Deep learning is still an ongoing area of research. Software should be flexible enough so users can implement new algorithms suggested in recent research.
- Model accuracy: Deep learning software should enable your company to generate models that create value for the business. Measuring business value of machine learning models is explored in detail in our article on the topic.
On top of these, typical tech procurement best practices should be followed to ensure that an economical and effective solution is chosen.
How is deep learning expected to evolve in the future?
Deep learning software is expected to provide capability to build new models based on the latest research in the area.
What are its alternatives/substitutes?
A machine learning model can replace a deep learning model for predictions. After all, deep learning is a subset of machine learning with its pros (i.e. better predictions) and cons (i.e. data hungry, lacks explainability). Finally, manual processes can replace models for predictions though this is unlikely to be economical.
When data is limited or when explanation needs to be provided for predictions, other machine learning techniques can be more successful. Especially explanability is a concern for businesses. Since deep learning architecture results in a complex net of artificial neurons, the reasons for its predictions are not obvious. Other machine learning techniques such as decision trees may not produce results that are as accurate as deep learning but are easy to explain as they show the exact factors that lead to each prediction
Finally, manual solutions are always usable as an alternative however, given the high cost of manually analyzing data and making predictions, this is unlikely to be an economical alternative
What are the important features of products?
Built-in support for building latest deep learning structures/architectures is important to ensure that technical personnel spend minimum time implementing solutions based on such architectures.
Data ingestion and processing speed are important features of deep learning software and depend on the hardware the system is running on. Ideally different software should be run on the company's hardware/software stack to see if there are significant performance differences.
Visualization support both for visualizing error rates and the network itself, help developers while building models. While not all solutions support visualizations, some leading ones such as TensorFlow offer such functionality
Which business functions benefit the most from deep learning?
Business functions with more data are likely to benefit more from deep learning. Some data-rich business functions are:
- Commercial functions such as sales, marketing and customer service
- Cost centers such as technology that create detailed log files including granular data
Implementation guide: What are the important things to consider while deploying the product?
Once a model is chosen, the aim should be to deploying the model to production systems and make it a part of the decision making process. In deployment, engineers have to ensure that model runs fast enough.
What is deep learning?
Deep learning, also called deep structured learning or hierarchical learning, is a set of machine learning methods which is part of the broader family of artificial neural network based machine learning methods. Like other machine learning methods, deep learning allows businesses to predict outcomes. A simple example is to predict which customers are likely to buy if they receive discounted offers. Improved models allow businesses to save costs and increase sales
Deep learning is one of the most popular machine learning methods in commercial applications and interest in deep learning has exploded since 2013
Source: Google trends
Why is deep learning relevant now?
While Hinton and other researchers started to demonstrate deep learning's potential in 1980s effectiveness, several elements were missing:
- Cheap computing power is required by deep learning. Enough amounts ofeconomical computing power for deep learning applications only became available around 2010s
- Training data: Researchers used to rely on hand-labeled data for machine learning. However, our data generation has increased significantly with new data per year expected to be doubled every 2 years.
- Better algorithms: Years of research also led to more optimized algorithms, further enabling deep learning
Modern companies armed with an abundance of data, cheap computing power and modern deep learning algorithms are set to take advantage of deep learning models
What are other software that these products need to integrate to?
Integrations to databases such as Apache Hadoop and Spark are useful for deep learning software as deep learning models rely on data and integrations make it easier to pull data from company's systems.
How does deep learning work?
Based on training dataset, an Artificial Neural Network (ANN) based model is built and tested against a test dataset to make predictions on your business' data. Let's explain each term:
Training data: As its name implies, machine learning is all about learning from previous examples. Training data includes both data that is and will be known, as well as the outcome that needs to be predicted. For example, let's assume that we are trying to predict which customers are likely to buy if they receive discounted offers. In this case,
- Known data (or input data) is all relevant data about the customer which can include demographic data, previous purchases, online behavior etc.
- The outcome to be predicted is whether the customer will make a purchase after recieving the offer
Artificial Neural Network (ANN) is a mathematical model with a structure inspired by brain's neural circuitry. Though its structure may be complex, it is essentially a function that makes predictions given input variables. We use the word "inspired" because brain's structure is quite complex compared to even the most complex neural networks, is analog and highly optimized closely coupling processing, computation and software.
Test dataset is not used as part of the training. It has the same format as training data and it is used to test the model's results and decide whether model's predictions are accurate enough for the busines goals.
Predictions are outputs of the model. When trying to predict which customers are likely to buy if they receive discounted offers, the model predicts an outcome (will buy, will not buy) for each customer in the dataset. The company can use these predictions to decide which customers to reach out to. Furthermore, model can assign a confidence score to each prediction, helping the company further refine the actions it will take. For example, if an incorrect prediction is costlier than a correct prediction, the company may not act on a prediction if the confidence level of the model for that data point is low.
Which industries benefit the most from deep learning?
Industries with the most data are likely to benefit the most from deep learning models. Some example industries are:
- Most B2C industries such as banking, utilities etc. have time series data on customers useful for deep learning models
- In B2B, models are helpful in prioritizing leads
- Manufacturing, especially companies leveraging Industrial Internet of Things (IIoT) have access to copious amounts of data which can power deep learning models
What are its benefits?
Deep learning models can lead to better, faster and cheaper predictions which lead to better business, higher revenues and reduced costs.
- Better predictions: Which business wouldn't want to be able to call just the customers who are ready to buy or keep just the right amount of stock? All of these decisions can be improved with better predictions
- Faster predictions: Deep learning, and machine learning in general, automates a company's decision making increasing its execution speed. Consider customers that leave their contact info to get more details about a tech solution for their company. Maybe it is obvious from the contact info that this is a very high potential and needs to be contacted. Thanks to the model in place, no one needs to manually check that data, the potential customer will be immediately prioritized. Speed is especially important in this example because customers contacted sooner are more likely to convert.
- Cheaper predictions: Companies that do not implement operational decision making models, rely on analysts to make decisions which are orders of magnitude costlier than running deep-learning models. However, as discussed in deep learning use cases, models have setup time and costs. Therefore, the business case for models need to be investigated before rolling out models.