Machine Learning (ML) promises excellent advantages to companies in cost savings, increased accuracy, and faster processing. But like any good idea, its benefits can only come to fruition in the right environment, with the right resources and support.
Benefits of Machine Learning
Machine Learning technologies can dramatically improve a company’s bottom line, increasing revenues while reducing costs. It can solve many business problems companies face.
Common Company Challenges Conducive to ML Solutions
- Improve a company’s products and services, making them more valuable to clients
- Provide more accurate forecasts (of sales, capital requirements, candidate availability, employee salaries, and more)
- Automate customer service
- Improve supply chain management
- Predict equipment maintenance
- Personalize and target marketing efforts
- Monitor client sentiment analysis
- Detect fraud
- Manage social media
- And so much more!
Requirements for Successful ML Adoption
But adopting ML is not easy. 88% of ML initiatives fail to reach production (McKinsey). Often, the initial proof of concept for ML adoption succeeds, demonstrating significant benefits, but the initiative then fails due to deficiencies in the supporting corporate environment.
For ML to be adopted successfully, it must be supported by a clear value proposition, robust and well-structured data, adequate computing resources, people with the right skill sets, and a conducive corporate culture.
Before you can even determine whether an ML initiative succeeds, you must clearly define success. Is it in terms of reduced costs? Increased accuracy? Faster response times? Improved customer experience? A combination of these? ML can potentially help in all these areas, but there may be tradeoffs.
For example, consider an initiative to automate customer support with an intelligent chatbot system. Such an initiative could potentially save costs and improve response times but it may impact customer satisfaction because many people still prefer to interact with a human. Would this system be successful if it saved 50% of support costs but affected customer satisfaction by 10%? That’s important to clarify in advance.
Too many companies start ML adoption without clear goals. To succeed, you need to start with a clear definition of success.
Any ML engineer will tell you: an ML system is only as good as the data it is trained on. The information you use to train your algorithm must be of adequate volume, well-structured, and clean.
To implement even the most basic ML algorithms, like regression and decision trees, you need thousands of records of data. To implement deep learning, such as used for vision or speech processing systems, you need millions of records. And accuracy will only improve with more training data.
Some companies don’t have the data they need at first, but they have a strategy for acquiring it. Tesla, for example, didn’t start with all the data it needs to implement full self-driving – the preferred driver actions for any of billions of different driving scenarios. But it now has an increasing fleet of mobile data acquisition labs, that is, the cars it has sold to date, to acquire this data. And this data will give Tesla a huge competitive advantage in developing such a system.
The data also needs to be well-structured. Your data may be distributed, incomplete, and unstructured, but in the end, what you need for training data is a fully populated table of data which includes all the inputs you want your ML algorithm to consider, and at least one output. And to continually refine your ML predictions, you need a continual data ingestion pipeline.
The need for the output, or desired result, is often not understood by those unfamiliar with ML algorithms. You may have a million sets of patient lab tests, for example, but you can’t train an ML algorithm to detect signs of cancer based on just that, or even based on simple heuristics. You will need to have a significant subset of these reviewed by an expert first, and have her tag those with signs of cancer before you can train an algorithm to simulate that expertise and tag the rest of the data set. Those tags effectively comprise the required outputs for the data used to train the algorithm.
Finally, the data set must be clean. Corporate data is often full of errors and omissions which can significantly influence the training. Before you can start the training process, all of the training data must be reviewed, corrected, and completed. This can often be automated.
In our chatbot example, the data would come in the form of the questions that customers ask and the correct responses. This data might have to be gathered from prior chat logs, filtered to include just the questions, oared and translated into a canonical format, and coupled with the agent responses. Incomplete conversations (say when the client disconnected early) would have to be identified and dropped. These questions and responses would then ideally be reviewed by an expert to ensure the answers are correct and complete, and finally, put into a table format for training.
The training of ML algorithms requires huge amounts of computing power, especially for deep learning algorithms. It is not unusual for the training to take hours, days, or even weeks, on dozens of processors. Since this need is occasional, the most cost-effective way to achieve this is by using cloud resources on demand.
The actual execution of these algorithms, that is, the implementation of the ML systems, requires fewer resources and can be often performed even on simple IoT devices.
In our chatbot example, it might take several days of significant computing power to train the algorithm but just a single server to execute the algorithm; that is, to respond to incoming chats in real-time.
Implementing ML requires significant skills in data science and ML model implementation. It also requires traditional software development skills to integrate the algorithm into production. A company that lacks these skills internally can often use an existing ML product or service or hire outside ML and software experts to help jump-start ML projects. At the same time, they can recruit and onboard the data scientists and software developers they will need for the long term.
In our chatbot example, there are many existing third party solutions for chatbots that can be adopted for answering general questions (I.e., “What is the status of my order?”) and can be trained to respond to queries specific to the company’s domain (“What is the temperature range that product X will work in?”).
A company’s willingness and ability to change are essential for successful ML adoptions. An ML initiative will often involve changes in processes and the roles of people associated with the initiative. Employees can feel threatened by ML. It’s important for companies to recognize that, adopt an appropriate strategy, and support their employees as much as possible through this transition.
In our chatbot example, it’s natural that existing customer service agents will feel threatened by the introduction of chatbots. To mitigate this, you might retrain the existing staff to be level 2 support technicians that serve as managers for the ML chatbots and escalation points.
Machine learning promises many benefits to companies, but every company can adopt ML successfully. To do so requires having the right infrastructure to support success.