Elena Canorea
Communications Lead
Hasta hace no mucho, podíamos gestionar manualmente los datos disponibles dentro de nuestra empresa. La gobernanza y la curación de los datos era un proceso casi artesanal que se confiaba a manos expertas dentro de nuestra organización. Sin embargo, ahora nos encontramos en un mundo orientado a datos, un entorno de capturas automáticas y lleno de flujos de información crecientes y cambiantes que inundan nuestros almacenes de datos de manera incansable.
Nos hemos visto obligados a enfrentarnos a esta situación: creando Data Lakes, afrontando el procesado de datos en streaming y creando nuevos perfiles en nuestra empresa como ML Engineer y Data Engineer. Sin embargo, hay otro elemento fundamental en nuestro proceso que necesita tomarse en cuenta: la toma de decisiones mediante IA.
La automatización de decisiones (Asistidas por modelos ML) ha ido abarcando más y más aplicaciones y niveles de nuestro modelo de negocio. Ha demostrado ser una importante herramienta para reducir los problemas, los tiempos y los costes en nuestras operaciones. En resumen, la IA nos ha hecho más eficaces y eficientes. Sin embargo, el combustible de estos elementos automáticos es la información; de su calidad y actualización depende su buen funcionamiento. Como ya hemos comentado antes, el paradigma actual nos impone unos datos crecientes y cambiantes y estos sistemas de decisión, vitales para la competitividad de nuestra empresa, necesitan adaptarse con igual rapidez a estos cambios.
Durante la revolución de la información de finales del siglo pasado, las grandes empresas se vieron en una situación muy parecida con el auge de las soluciones informáticas. Ante la necesidad de adaptación de las mismas y de sus productos software, surgieron las filosofías agiles. Los nuevos productos y sus versiones empezaron a producirse a una velocidad demasiado rápida para el paradigma tradicional de operaciones y como solución surgieron las prácticas de DevOps. En correspondencia a esta situación, para sobreponerse al nuevo contexto y aprovechar el valor de negocio que de él surgen han aparecido los ciclos de vida de ML y las prácticas de MLOps (Machine Learning Operations).
MLOps o Machine Learning Operations, es una extensión de la metodología DevOps que busca incluir los procesos de aprendizaje automático y ciencia de datos en la cadena de desarrollo y operaciones para hacer que el desarrollo del ML sea más confiable y productivo.
El objetivo de MLOps es desarrollar, entrenar y desplegar modelos de ML con procedimientos automatizados que integren a los equipos de Data, desarrolladores, seguridad e infraestructura.
Nos encontramos en un mundo orientado a los datos. La importancia de los modelos MLOps radica en que son vitales para agilizar el proceso de maduración de los proyectos de IA y ML dentro de una organización.
La utilización de modelos entrenados ha cambiado de forma radical en la última década y, ahora, la política para gestionar los modelos de ML como ‘cajas negras’ que ostentaban en las operaciones tradicionales no es suficiente. Los modelos se actualizan y se mantienen. Es entonces vital que los esfuerzos y tiempos para su despliegue y mantenimiento se reduzcan lo máximo posible.
La gestión de estos sistemas a escala no es una tarea fácil, y existen numerosas brechas que deben solucionarse. Una buena política de MLOps resuelve desafíos como:
Son muchos los beneficios que aportan unas prácticas correctas de MLOPs a un proyecto. Estos, además, son universales a todo tipo de modelos, ya sean estadísticos, de reglas o de aprendizaje automático. Pues en todos aborda las mismas necesidades de despliegue, validación, monitorización y mantenimiento a lo largo de su vida útil.
Unas buenas prácticas de MLOps otorgan muchos beneficios:
MLOps se basa en la disciplina DevOps, adquiriendo su forma de escribir, implementar y ejecutar aplicaciones empresariales de manera eficiente. Sin embargo, presentan diferencias:
Para poder aumentar la eficacia de los flujos de trabajo en los proyectos de Machine Learning, os dejamos una sesión en la que nuestros compañeros Francisco José Pérez (Software Development Engineer en Plain Concepts) y Kevin Albes (Software Development Engineer en Plain Concepts), titulada “MLOps. Mejores prácticas de software para proyectos de Machine Learning”.
En la sesión abordan temas como: conseguir una experimentación y desarrollo de modelos más rápidos, conseguir un despliegue más eficaz de los modelos de producción, control de calidad, integración y entrega continua mediante Azure DevOps, Azure Databricks, MLFlow… ¡Todo lo que necesitas saber para desarrollar tu proyecto!
Elena Canorea
Communications Lead