User Experience Insights
Machine Learning and the Restaurant without Paella
Last summer my wife and I visited the south of Spain during the holiday season, and yes, as you can imagine, we went to a dinner in the mood for paella! Unfortunately, the answer from the restaurant owner, “Sorry, we cannot serve you a paella right now”
After the initial disappointment, I simply asked, how something like that can happen? After a chat I discovered how a small human error led to an unexpected delay in the service reparation of the grill which prepares the Paella!
And now the question is, what has the broken grill to do with Machine Learning?
Machine Learning in SAP Business ByDesign powered by SAP HANA Predictive Analysis Library (PAL) will help you in multiple business scenarios, predicting for example:
- The conversion rate of an Opportunity.
- The risk of a project.
- Expense report approval confidence.
- Priority determination of a service order.
In our case, for the broken grill, how exactly Machine Learning in SAP Business ByDesign will help?
Let’s dig in the details of our case! The restaurant called the kitchen appliances company who sold the grill, explaining that it is broken and they should fix it as soon as possible. The kitchen appliance company opened a service order, however although given the situation of the case (the broken product, the customer, type of issue, etc) the service ticket priority shall be higher than normal, the call center agent leave the priority as “normal”.
The next step for the service order is to be dispatched from the Dispatching Board, where the dispatcher will look all the service orders without resource assigned, where the field priority is one of the key elements of the search criteria. With the help of Machine Learning in SAP Business ByDesign, we could define a new column field for our key criteria, let’s name it, predicted priority which it can be easily compared with the manually set priority, the Dispatcher could have seen easily a discrepancy here! In other words, having a predicted priority together with the manual set priority can help the dispatcher with the right assignment.
Because It does not matter at all, small business or large business, they all learn from the past historical data! Let’s take now our example and understand how to build such prediction in the Machine Learning cockpit.
The steps to fuel with predictions your business scenarios with Machine Learning in SAP Business ByDesign
First step, define your scenario:
Defining the scenario is a straightforward step, in a nutshell you need to choose:
- The data source for your ML scenario, in other words the entity that you want to create the prediction for. For our case: Service Order.
- The input field selection, which comprises fields for training and the target field. Continuing our example we should have as target field the Priority and different fields used for training, like: Product, Product Category, Service Category, Warranty, etc.
With such scenario definition, we will be predicting the priority in the Service Order document:
Once you have defined your scenario, you will also have to specify how Outliers and Null Values will be cleansed. For both of them, a recommended value will appear, and for the sake of simplicity of this post, I propose to leave them with the recommended values.
Circling back to our scenario, as last step, we will see the algorithm selection and type. For now, we are offering Classification algorithm types.
Second step, define your model:
Once the scenario is created is time for training! Before the training, there are a couple of aspects around data cleansing that the SAP Business ByDesign Machine Learning Cockpit will drive through, like nulls removal and outliers removal, on a multi step process, like in the screenshot below:
Your previous service orders will play an essential role in training the model, since the algorithm will learn from your previous data. Once the model is trained, you will be able to see the key model evaluation indicators, like Accuracy, F1-Score, Recall and Precision as well as the field contributors, among others. I highly recommend spending some time on this step, to make sure that your training is providing you enough performance for your predictions.
Third step, run the prediction:
It is time now to obtain the prediction or in other words, the process of inference. It means in our example, to calculate the prediction of the priority in our service orders.
It is a simple step, where we will need to select our previously created scenario, which already has a trained model. Once this is done, we can as well schedule the job for calculating the predictions in all the instances of the selected document.
And voila! As soon as the job is completed, we will have all the instances of our selected business object with value predicted, in our case, the predicted priority in the service order.
As very last step, we will use an embedded component to view the predictive value on the User Interface, like in the Dispatcher Board for our case with the predicted priority in service orders.
Machine Learning is a differentiator factor for a company, not only because it can be applied to multiple business processes but also because it will provide the necessary information to support the business decisions.
And what is more important, it is closer than ever for SMEs running SAP Business ByDesign. I would love to listen from you any questions on this topic, feel free to leave them in the comments below! Additionally you can contact Dalibor Knis, Product Manager for Machine Learning Cockpit in SAP Business ByDesign.
Please note that in the current release, we are having the Machine Learning Cockpit in SAP Business ByDesign in a Beta release, for selected partners and customers.
If you want to know more, I would recommend you watching Simona Marincei, in this deep dive Tech Talk session
Simona Marincei what a nice surprise to recognize your name in this post! Sergio Fernandez the paella made me curious and hungry:D Thanks!
Excellent features coming into SAP BYD!
Thank you for your efforts!
Thanks for your comment, Jacques-Antoine!