Today, Machine Learning (ML) is a hot topic. However, broadly speaking, it has always been part of Artificial intelligence (AI) – which happens to be a topic that dates back to the 1950’s. In this blog post we will describe one of the missing links between Machine Learning and its uses for enterprises.
Although the concepts of AI were founded in the 1950’s, its adoption and benefits were restricted to research projects, mainly in the academic disciplines. Many refer to the Dartmouth workshop in 1956, which was conducted with the participation of a handful of veteran mathematicians and scientists, to be the birthplace of AI.
At the time, people believed AI to be the one ring to rule them all – the next leap of advancement in human civilization – AI was not something that everyone understood or could use in their systems or day-to-day life straight out of the box. It was regarded as mere science-fiction for the common person for almost 50 years until, in the late 2000’s when it all began to change, and change radically it did.
Adoption of Machine Learning
With the evolution of computers; higher computing power at a lower cost and exponential growth in digital data-space driven by the power of internet and the cloud in recent years, Machine Learning and Artificial Intelligence have morphed into a more practical and powerful tool-set for academia and commercial industries alike.
Computing algorithms have also evolved rapidly opening up new opportunities for Machine Learning applications. For example; neural networks, an early algorithm developed in 1950’s, was not very popular among Machine Learning enthusiasts until recently thanks to the sparkling developments in deep learning and convolutional neural networks. These happen to be the next generation of neural networks capable of solving complex Machine Learning problems such as object detection, speech recognition, anomaly detection and even the building of autonomous vehicles.
Today, machine learning is used everywhere.
(Machine learning comic – source : dilbert.com)
Whenever we perform a web search, shop online or read emails, we are consuming the fruits of Machine Learning without really noticing it.
A few Machine Learning use-cases that we use on a daily basis are as follows:
- spam filters
- email priority inboxes
- personalised news feeds
- web advertisements
- recommended products on online retail stores,
- and recommended videos on your favorite video streaming service.
Most of these applications became mainstream thanks to the big players on the internet adopting Machine Learning as part of their core business services.
Within a very short time, internet giants like Google, Microsoft, IBM and Amazon have adopted Machine Learning & AI into their core businesses and service offerings, thereby turbo-boosting towards the wider adoption of Machine Learning and AI in commercial industries. For example, in a company public event, Google’s CEO Sundar Pichai announced Google’s “AI first” strategy emphasized the importance of applied Machine Learning and AI in the context of businesses.
All these tech companies provide various cloud APIs for Machine Learning applications providing Machine Learning as a service (MLaaS). These APIs can be used for various applications such as computer-vision, voice-to-text conversions, language translations and natural language processing to mention a few.
Each of these tech giants have invested significantly to innovate advancements of Machine Learning & AI capabilities, making significant contributions to Machine Learning & AI domain with innovations such as IBM’s Watson, Google’s Machine Learning Engine and TensorFlow, Microsoft’s Azure Machine Learning Studio and AWS Sagemaker.
Some of these frameworks have been made available for the public as open source software giving the opportunity to the technical community to thrive on and conduct further innovations on top of these frameworks. Parts of Google Brain project have been published as open-source as TensorFlow, IBM’s SystemML and Amazon’s deep-learning project MXNet have become top level Apache projects with nearly all of the tech giants converging to serve the common goal of democratizing the power of AI.
Apart from the contributions from tech giants, there have also been significant independent developments in open-source software which provide powerful building blocks for Machine Learning applications. Apache Mahout, Apache Spark MLlib, Weka, Python libraries like scikit-learn, Pandas, SciPy & NumPy are some of the more noteworthy Machine Learning software projects.
Machine Learning for Business
With a wide range of data science and Machine Learning platforms evolving over the last few years, many traditional industries have transformed into data driven industries with Machine Learning at the core of their business processes.
Traditional industries such as finance, health, retail and manufacturing are a few industries that have undergone transformation thanks to the power of Machine Learning. These industries have been able to achieve higher productivity and efficiency at lower costs, maximize sales and find new revenue streams with data driven business processes deriving from Machine Learning.
Large enterprises in these industries have invested largely in data engineering and Machine Learning. In fact, according to the TMT Predictions 2018 report by Deloitte Global Technology, the investment in data science and Machine Learning by enterprises was around $12 billion and they forecast that spending will go up to $57.6 billion in 2021.
Challenges for applied Machine Learning in the enterprise
Although business leaders and large enterprises have invested heavily in data sciences and Machine Learning, it needs to be noted that there are several barriers for small and medium enterprises to adopt Machine Learning as one of their core businesses. Deloitte TMT predictions 2018 report shows following factors as reasons for not having a wider Machine Learning adoption in the enterprises today:
- talented data scientists and practitioners are hard to find and expensive
- tools in ML are young and evolving rapidly
- data models developed by data scientists are inscrutable and are not applicable to internal business applications
- data aggregation is difficult and costly
- certain business regulations negatively impact adoption of Machine Learning
Let’s have a closer look at some of these limitations in today’s business context.
Challenge of Data Aggregation
Among the list of barriers to entry, the ability to aggregate and synthesize data is a big challenge. In today’s business context, data is generated at an alarming rate in different formats (structured and unstructured) across different data repositories.
According to IBM research, 2.5 quintillion bytes of data is generated each day with more data produced in the last 2 years than all of the data ever produced in human history.
We are analyzing only a fraction of this data to derive any business value at the moment. To identify correlations among different data sources and derive valuable insights, these enterprise data sources need to be connected to a common data aggregation platform where data can be enhanced and transformed into an intermediary format where Machine Learning algorithms can be applied effectively.
Evolving ML tools & frameworks
Although there are many open source Machine Learning frameworks and MLaaS from cloud vendors, some of these tools and frameworks cannot be directly applied to enterprise business applications due to several reasons. Many of these MLaaS services support only a limited set of ML use cases as services such as object detection, NLP, linear regression on numerical data and classification.
Most of these MLaaS APIs are pre-trained with data, so you cannot directly use the APIs to classify or predict your enterprise’s dataset without training a custom model. Training custom models on these MLaaS are costly. Therefore these API based Machine Learning services cannot be applied to many business use cases for enterprises which require custom model developments.
On the other hand, most open-source Machine Learning projects are evolving rapidly over-time and, implementing enterprise applications with dependencies to such Machine Learning frameworks are likely to incur lots of development costs to update the Machine Learning core and perform modifications to cope up with rapid changes.
When enterprise applications are implemented with tight dependencies to certain Machine Learning frameworks, they are restricted to use only the algorithms supported by that framework. In Machine Learning there is no universal algorithm that can work for every business use case. The most suitable algorithm should be chosen depending on the use case after doing an evaluation.
Interchanging the underlying Machine Learning framework for different business use cases poses a challenge to enterprises trying to achieve the full potential of Machine Learning in their business.
Furthermore, most traditional Machine Learning research tools support only offline-scoring as the final result. This means the tool will output a finite set of predictions/classification results which are typically given as business reports or results sheets. Enterprise applications need to support online-scoring of Machine Learning algorithms where production grade Machine Learning model serving systems are required. Currently there are only a very few Machine Learning serving solutions out there. Therefore this too is a reason for enterprises to quickly adopt the power of Machine Learning in their businesses.
Lack of applied data science expertise for enterprise applications
Data scientists predominantly stem from an academic background where they generally work on Machine Learning research problems with research tools and platforms like R and python scripts, typically confined to research solutions.
On the contrary, enterprise applications require production grade Machine Learning solutions which have to be developed and deployed on scalable production grade environments. This is hard to achieve with the typical toolkit of a data scientist.
Data scientists will also need to understand the product development life-cycle and tailor their Machine Learning solution to the business need of the enterprise application. It is notoriously hard to find the perfect combination of data science + enterprise application development + dev-ops knowledge, skills and experience in the same person.
Further data aggregation from different repositories, along with Extract, Transform and Load (ETL), is essential when it comes to applying Machine Learning to enterprise data. This work is usually handled by data engineers.
In practice, data scientists will need to team up with data engineers and enterprise application developers to apply their data science knowledge in practical implementation of data driven enterprise applications. But, since these engineers and data scientists work on different platforms and tool-sets, integrating their work together can be cumbersome.
What the Enterprise needs
With all of the above limitations in current Machine Learning workflow, enterprises today need a novel approach to break the barriers to enter the data driven business space with ML at the core.
Enterprises today need a Machine Learning framework to cater for business predictions which are as follows
- can be configured with the disparate business data sources to get required data aggregated
- provides a common framework for data engineers, data scientists and enterprise app developers to collaborate
- provides production grade online model scoring and model serving
- provides the freedom to develop and deploy custom Machine Learning models without being tightly coupled to a Machine Learning library
- manage business prediction APIs life-cycle and quality of service factors.
In the next blog, we’ll see how this can be achieved through a comprehensive Machine Learning framework focused specifically to cater for the enterprise business prediction needs.
Thank you for reading our latest Mitra Innovation blog post. We hope you found the lessons that we learned from our own experiences interesting, and you will continue to visit us for more articles in the field of computer sciences. To read more about our work please feel free to visit our blog.