Machine Learning Extensions for SAP S/4HANA processes
Part 9 of the blog series:
We have discussed in the earlier blogs about the different approaches in doing predictive analytics and machine learning with SAP S/4HANA processes, the architecture behind it, the process flow involved, a few use case examples with the various levels of functionality across the LoBs and Industries. Let us now briefly look into how we can enhance, extend and modify some of the ML use cases that are pre-delivered with our SAP S/4HANA.
As we discussed, we have the embedded ML use cases that leverage HANA APL and HANA PAL algorithms, the side-by-side ML use cases that leverage not only the HANA predictive algorithms but also the Sci-Kit Learn, Tensor Flow, Python and other R programming models. There are different ways that we have built these use cases, while some of them use predominantly one set of algorithms, while other use cases leverage a mix or hybrid mode of machine learning algorithms.
Customers and Partners always have additional requirements to fit or adjust the ML content to their needs based on the configurations and current extensions available. There are different ways of how you can provide extensions to an already released ML enabled SAP S/4HANA business process with varied support!
Some of the core configurations of ML models include the following:
- Multiple ML model support – to improve prediction accuracy leveraging stable APIs.
- Hypermodel parameter handling – specific data environments with actual and observed data.
- Handling configuration lifecycle of the models – system data and application data configuration between test systems and production systems.
- Model Training and Validation – regular jobs or events to activate, train and deploy ML models.
Let us now look into some of the enhancements that could be performed on these ML models using the extensibility concepts. Here are the various extensions possible:
- Extensions to the training data source – There are different ways of how to do extensions to the training data source and training data. This is handled for both the on-premise as well as the cloud deployments:
- add fields from the other applications using the custom field extensions.
- add fields from other CDS views using data source extensions.
- add fields from new CDS views – using a custom CDS view joining other SAP CDS views.
- add fields from external data sets – using a custom CDS view joining custom business objects.
- Exchange of the Algorithms – Depending on the available ML algorithms you should be able
- to exchange the algorithms from the APL and PAL libraries for the embedded ML models,
- or exchange the algorithms within the SAP Data Intelligence for advanced and deep learning models. This includes the different algorithms from the libraries such as HANA, Sci-kit learn, Python, Tensor flow or R programming,
- or identify the alternate flavors from the SAP Analytics Cloud Smart Predict library to exchange the algorithms with additional parameters.
- Extending ML logic – There are situations when you will need to change or enhance the ML logic that is included into the ML models. This would be needed to adopt the standard SAP delivered content for customer enhancements that can survive upgrades. This can be incorporated accordingly for the embedded or the side-by-side models.
- meta-data driven enhancements into the APL models.
- BADI driven enhancements into the PAL models. While it is easier for the on-premise installations since the customers and partners have freedom to do so, the SAP S/4HANA cloud would need to handle this with a web editor for ABAP classes (must be enhanced for ABAP managed data procedures).
- sub-pipeline additions into the SAP Data Intelligence pipelines for additional ML logic extensions with the side-by-side models. These use the SAP DI design tools.
- Extensions to Consumption APIs – Depending on what kind of the ML application is built, you will need to call the corresponding remote or local APIs. While the local APIs are consumed for embedded ML purposes in SAP S/4HANA, the remote APIs are leveraged for the side-by-side mode with calls to the SAP Data Intelligence ML functions. This is completely handled by the lifecycle management framework to monitor the ML models. From the consumption API point of view, it is important to know which kind of the predictive algorithm is being invoked – APL, PAL, CDS view, SAP DI etc., based on which the enhancements have to be incorporated. It is important not to break these consumption APIs after the extensions are made and hence you will need to follow the parameter definition and handle them accordingly.
- New ML applications – Customers and Partners would also be able to create new ML models using any of the 3 approaches such as
- creating new embedded ML models using the ISLM technology leveraging HANA APL or HANA PAL.
- creating new side-by-side ML models using the Jupyter notebook integration on SAP Data Intelligence.
- creating new side-by-side explorative models using the SAP Analytics Cloud Integration.
- ML Model Life cycle extensibility – This includes the extensions possible to the ML models through the life cycle management separating the standard and extensions. In the case of the SAP S/4HANA cloud, the transport of the extensibility objects from the test system to the production system are performed by the key user without the interaction with the service provider and outside of the maintenance window. While working with the SAP S/4HANA on-premise environment, the customers and partners would have much more freedom in handling the transports setting up the system landscape and the quality assurance processes.
Hence many of the embedded and side-by-side models with the already released use cases could be enhanced and extended at various levels as explained above. While these are all possible, you will definitely have to discuss with the core SAP consulting team or the corresponding SAP Partner team to understand how these implementations can be handled. We are also releasing best practices of how to do Predictive Analytics and Machine Learning with SAP S/4HANA in the Q1 of 2021 which will discuss in-depth the implementation approach on the same including technical and set-up guides.
There is also a detailed book with scheduled release on Sep 24th 2020 which talks on all these architecture, configuration and extensibility concepts as well as a lot more details at length – “Implementing Machine Learning with SAP S/4HANA“.
In the next blog I will introduce the book with a lot more details.
Here are some quick links to the blogs in this series to give you a complete understanding of how Predictive Intelligence is infused into SAP S/4HANA.
- Resources and journey to machine learning with SAP S/4HANA
- Part 1 – Leveraging Predictive Intelligence with SAP S/4HANA
- Part 2 – Architecture and deep-dive of the different approaches around Predictive Intelligence
- Part 3 – Process flow leveraging Machine Learning and Predictive Analytics
- Part 4 – Scope and functionality in the context of an end-to-end process leveraging ML
- Part 5 – Activating machine learning functionality for SAP S/4HANA
- Part 6 – Building ML into the digital core of SAP S/4HANA (Embedded ML)
- Part 7 – Enhancing the digital core with ML Services (Side-by-Side ML)
- Part 8 – Extending the digital core by leveraging ML with SAP Analytics Cloud
- Part 9 – ML Extensions to scenarios with SAP S/4HANA (this blog)
- Blog series – ISLM for machine learning with S/4
- Introducing the book – Implementing Machine Learning with SAP S/4HANA
Happy predicting the future!!
Venkat - Your blog series provides deep insight. I have been closely following them. Thanks for the effort.