When a new technology has been introduced by the media, customers immediately start wondering why it is not offered by their software providers. Ten years ago, they were wondering why they had to do manual installations. Now they question why software is not automating more of their boring tasks: “can’t AI do this for me?”.
However, adopting AI is not straightforward for the average software company. They tend to lack the competence and financial resources to take on AI projects. If they initiate the project, it will likely fail as companies lack the experience with developing these kinds of services.
Furthermore, it is hard to make AI scale. A customer usually has lots of datasets they need to predict and it is not feasible to use the same models for each dataset due to differences in statistical properties. So in order for a company to offer machine learning to their customers, one typically needs to create hundreds or thousands of machine learning models. Consequently, it is infeasible to hire data scientists to create models manually, which is the traditional approach to machine learning.
In order to drastically reduce the barrier for software companies to adopt AI, Visma Resolve is offering Machine Learning-as-a-Service (MLaaS). This enables companies to offer AI to their customers without needing to staff up on AI experts or take high financial risks. The MLaaS in question is called “Machine Learning Factory” and consists of APIs that companies can connect to, provide with data, and get predictive analysis in return. Consequently, the company only needs to worry about sending in the correct data, and creating the best possible user experience.
In order for Machine Learning Factory to overcome the challenge of scalability, we apply Machine Learning Pipelines (ml pipelines). Ml pipelines can be used to find the perfect balance between scalability and performance and are able to create high performing models for a large variety of data. It works by running each dataset through a sequence of processes, including preprocessing, transformation and model training. The ml pipeline applies a wide range of algorithms and parameter settings, and evaluates the performance of each combination on the dataset in question, in order to find the best possible model. The output of the ml pipeline is a machine learning model that has outcompeted all the other combinations of algorithms and parameters. Consequently, by using ml pipelines we automate model creation which enables us to deliver machine learning functionality at scale.
Another important aspect of MLaaS is the infrastructure, as it needs to store and process large quantities of data. In addition, it needs to be able to handle heavy computational processes with unpredictable demand, in a cost efficient manner. We have solved this by applying serverless technology on AWS. Serverless technology enables you to run code, manage data and run containers without needing to manage servers. The scaling happens automatically and the operational costs are linearly dependent on the usage. In practical terms, this means that we are able to minimize costs without sacrificing scalability or performance.
Machine Learning Factory is designed to support multiple “sub-services”, each solving a specific problem within a certain domain. Our first sub-service is called “Inventory Optimization”, and enables ERP companies to generate sales forecasts and purchase order suggestions based on their historical sales data. We are continuously evaluating new potential sub-services, and are currently looking into turnover prediction and anomaly detection for invoices and time registration.
For more information about Machine Learning Factory and how we automate machine learning, please watch my TechTalk: