web-enzyme-v2-logo-white
logo-enzyme-2-blog

Herramientas de IA en SAP, ¿cómo obtener modelos de ML en SAP?

En este artículo nos centraremos en aplicar los conceptos que hemos visto en los artículos anteriores sobre IA y ML en el entorno SAP. Como algunos conceptos seguirán apareciendo a lo largo de este y el próximo artículo sobre Machine Learning Operations, comenzamos haciendo un extenso resumen de lo aprendido hasta ahora sobre IA para aplicarlo a SAP.

Descarga gratis el ebook de  Soluciones Enzyme sobre IA y SAP

Machine learning (ML) es una rama de la IA que permite a la máquina aprender a partir de los datos sin estar expresamente preparada para ella. Es decir, a diferencia de la programación tradicional ya no es necesario establecer reglas de programación, sino que a partir de las respuestas y los datos, con ML obtenemos las reglas con las que el sistema hará predicciones a partir de nuevos datos. 

Si comparamos el proceso de ML con el de una cocina, los datos serían los ingredientes del plato que queremos preparar. A mayor calidad de estos ingredientes, tendremos más probabilidades de que el plato sea muy bueno. De hecho, es importante contar con una gran cantidad de ingredientes, pero eso sí, estos deberían ser de muy buena calidad.

Siguiendo con la metáfora culinaria, el algoritmo sería nuestro libro de recetas. Allí encontramos que los ingredientes podemos cocinarlos de muchas formas diferentes. Así, el mismo ingrediente podemos procesarlo haciendo distintas variaciones para obtener el plato principal. Como en el proceso de la alta cocina, en ML tratamos de aplicar diferentes recetas con los ingredientes de forma que obtenemos varios platos. Dependerá de los objetivos que tengamos y del cliente cuál de los platos formará parte del menú.

Como sabemos hay tres modelos principales de aprendizaje en ML:

  • Supervisado: si contamos con datos históricos, por ejemplo una tabla SAP con todos los datos de los clientes y una columna extra con el dato de cobro, al aplicar el algoritmo en caso de querer procesar una factura nueva a un cliente, podemos saber en tiempo real cuál es la probabilidad de que ese cliente vaya a pagar esa factura o no.
  • Dentro del aprendizaje supervisado encontramos principalmente dos tipos:
    • Regresiones: por las que se producen predicciones de variables numéricas. Por ejemplo, aplicado a SAP, la planificación de stock o planificación de ventas.
    • Clasificaciones: en este caso se producen predicciones sobre variables categóricas. Por ejemplo, la predicción de la tasa de abandono, o todo lo relacionado con la clasificación de imagen.
  • No supervisado: en este caso no contamos con los datos históricos de nuestros clientes. Si tenemos un maestro de clientes de empresa pero no sabemos los resultados que esperamos, nos interesa pasar ese maestro de clientes a través de un proceso para clasificar a nuestros clientes en función de una serie de atributos que desconocemos. Con este modelo podemos hacer clusterizaciones para agrupar los datos por afinidades y atributos, teniendo en cuenta que es el propio modelo quien las va a identificar.
    Otra aplicación de este modelo no supervisado es el sistema de recomendaciones.
Modelo basado en refuerzo y recompensa, orientado a otros escenarios —especialmente en el área de gaming— consiste básicamente en tratar de premiar al modelo cada vez que se logra una acción que hemos parametrizado previamente como recompensa.

Cómo aplicar un modelo de inteligencia artificial con SAP

Se puede aplicar ML en cualquiera de los módulos de SAP.  Estos son algunos ejemplos:

  • Por ejemplo, en el módulo financiero podemos evaluar el riesgo de crédito y averiguar el riesgo que tenemos de no cobrar una factura. En este caso se trata de un modelo supervisado de clasificación.
  • En el caso de los modelos supervisados de regresión, encontramos times series y forecasting de cualquier tipo. Por ejemplo, una tarea como la de planificar la previsión de salidas y entradas de mercancía en stock para ajustar la demanda y manejar el aprovisionamiento y la gestión de stock.
  • En el ámbito de los recursos humanos se pueden filtrar y clasificar currículums para encontrar las mejores ofertas dentro de nuestro propio software de gestión y captación de talento. 
  • En la actualidad también están muy de moda los sistemas de clasificación de equipos que, por ejemplo, permiten encontrar el mejor candidato para una vacante tanto en los currículums que llegan de los postulantes, como del propio personal de la empresa —de manera que un empleado pueda promocionar—, también recomendación de perfiles o gestión de equipos.
  • Podemos implementar ML en la clusterización de clientes y proveedores, para tener un control pormenorizado sobre estas tareas.
  • Dentro del área de materiales, encontramos sistemas ERP de SAP que tienen el mismo material dado de alta, por lo que ante la duplicidad, el ML nos puede ayudar a implementar modelos que nos ayuden a prevenir que se den de alta materiales que ya están en el sistema.

Herramientas con las que podemos aplicar ML en SAP

SAP HANA ML Libraries: IA embebida en tu base de datos

La ventaja de esta herramienta es que no requiere conocer lenguajes de programación como Phyton o R. Simplemente conociendo SQL podremos completar ciertas operaciones con ML.

Dos tipos de perspectiva: 

  1. Perspectiva de servidor: el punto de entrada es la base de datos, desde ella se puede trabajar con 
    • Librerías embebidas: 
  2. PAL —Predictive Analysis Library— 90 algoritmos de ML que podemos usar con nuestros datos directamente en la base de datos de HANA. Es decir, son librerías que permiten modelos de ML en HANA pero que se deben parametrizar.
  3. APL —Automated Predictive Library— es una librería algo más sencilla, ya que permite que desarrolladores que no conozcan mucho de ML la puedan utilizar. 
  • Frameworks de integración: Permite utilizar Tensorflow y R sin salir de HANA, es decir, conectarnos a servidores externos en lugar de librerías. 
  1. Perspectiva de cliente: En este caso trabajamos desde un servidor cualquiera para conectarnos con una base de datos HANA. Es decir, trabajamos con HANA desde el lado del cliente y podemos utilizar dos API:
  • SAP HANA Python
  • SAP HANA R

Escenarios de IA en SAP S/4 HANA

Este entorno combina todas las herramientas de HANA con nuevas funcionalidades. La más significativa es la posibilidad de crear escenarios inteligentes.

El Intelligent Scenario es un escenario inteligente es una representación ABAP para un caso de negocio predictivo. Es decir, una clase ABAP con una serie de pesos que responden a una necesidad de negocio. Existen escenarios ya creados que podemos probar en S/4 HANA o podemos crear los nuestros. 

Intelligent Scenario Lifecycle Management, puerta de entrada a IA en SAP S/4 HANA

El framework que empleamos para estos escenarios inteligentes se llama Intelligent Scenario Lifecycle Management—ISLM— y nos permite gestionar el ciclo de vida de escenarios de ML dentro de S/4 HANA. Principalmente está formado por un integrador y  dos aplicaciones Fiori.

  • Intelligent Scenario para crear, revisar y publicar escenarios custom.
  • Intelligent Scenario Management para gobernar dichos escenarios.

Podemos crear un escenario inteligente con una herramienta de AutoML o directamente en Python. 

Aquí también podemos trabajar con dos tipos de escenarios:

  • Escenarios embedded: en los que todo lo necesario para integrar el modelo de ML está en SAP.
  • Escenarios side by side: escenarios para los casos en los que no tenemos todos los datos en SAP.

Recuerda, con Intelligent Scenario Lifecycle Management lo que podemos hacer es crear objetos ABAP que nos permitan integrarnos con modelos de ML. Hay dos tipos, embebido y side by side y siempre vamos a obtener o bien una vista CDS o una case ABAP que nos permita interactuar con estos modelos y obtener de esta manera las predicciones.

SAP BTP: SAP Core AI y servicios a la carta

En el Business Technology Platform, cloud de SAP, existen tres vías para poder crear inteligencia artificial:

  • Cloud foundry: que permite, además, interactuar con tecnologías Open Source podemos gestionar o subir un servidor de cuadernos de jupyter. Podemos usar BTP como servidor de entrenamiento e inferencia de modelos de ML. 
  • SAP AI Core es un servicio en SAP BTP que está diseñado para manejar la ejecución y las operaciones de activos de IA de un modo estandarizado, escalable e independiente del hiperescalador. Cualquier función de IA se puede realizar con marcos de código abierto. Con esta herramienta podemos gestionar todo el ciclo de vida de los escenarios de IA.
  • SAP AI Launchpad es una aplicación de software como servicio (SaaS) multiusuario en SAP BTP que sirve para administrar casos de uso de IA o escenarios en múltiples instancias de tiempos de ejecución de IA.
    Descarga gratis el ebook de  Soluciones Enzyme sobre IA y SAP

    Machine learning sobre SAP Analytics Cloud

    En este entorno, la función más representativa es la de predictive scenario que permite crear escenarios predictivos sobre nuestros datos de las formas que ya conocemos:

    • Clasificación: modelo supervisado para variables categóricas.
    • Regresión : modelo supervisado para variables numéricas
    • Time series: para predicciones de banda, forecasting, etc.

    ¿Cómo funciona? Veamos un ejemplo. Con los datos dentro de SAP Analytics Cloud ejecutamos la función predictive scenario tipo regresión e indicamos las tablas en las que están los datos, el predictor (por ejemplo, ventas), los atributos (características que ya están dentro del modelo de SAP). El modelo se entrena en la nube en la que esté SAP (no se paga por infraestructura) y crea el escenario predictivo. Si luego lo queremos consumir, solo tenemos que darle los datos reales.

    Introducción a SAP Data Intelligence

    Se trata de una solución integral para la gestión de datos —desde la ingesta hasta el propio consumo— que transforma los datos distribuidos en información inteligente, relevante y contextualizada. Nos permite integrar, gestionar y procesar datos, lo que se traduce en una mejor toma de decisiones. Podríamos decir que engloba todas las funciones anteriores. 

    ¡Y hasta aquí este extenso artículo!

    En el próximo artículo, veremos que es ML Ops o Machine Learning Operations. Se trata de una extensión de DevOps cuyo objetivo es implementar y mantener modelos de aprendizaje automático que integre equipos de datos, desarrolladores, seguridad e infraestructura. No te pierdas el próximo artículo porque te contamos por qué es importante MLOps en un mundo dominado por los datos.

Posts relacionados
¡Comparte con tus contactos!
   

Comenta este artículo...

ebook blockchain

Suscríbete y no te pierdas ninguna novedad

New call-to-action

¡Comparte con tus contactos!

   
New call-to-action