Avanzar en el aprendizaje automático con DevOps
Permitir el fracaso es un requisito previo básico para la innovación. Si no estás preparado para fracasar, no conseguirás nada realmente nuevo. Como director de tecnología alemán de un proveedor de servicios informáticos japonés con una sólida cultura de innovación, estoy profundamente convencido de ello. Sin embargo, si solo una buena décima parte de los proyectos de aprendizaje automático llegan a ponerse en marcha, algo va mal.
Después de todo, el aprendizaje automático es una de las aplicaciones centrales de la inteligencia artificial (IA) y la base de numerosas tecnologías futuras como la conducción autónoma, las ciudades inteligentes y el Internet Industrial de las Cosas (IIoT). Por lo tanto, para avanzar más rápidamente en ML y otras tecnologías de IA, necesitamos una nueva forma de colaboración entre el desarrollo y el funcionamiento de soluciones basadas en principios DevOps, o ML-Ops para abreviar.
¿Por qué ML-Ops? Porque la IA es diferente. En la TI tradicional, el código determina el comportamiento del sistema. La funcionalidad del sistema puede probarse y evaluarse paso a paso.
En las aplicaciones de inteligencia artificial, en cambio, los datos determinan el comportamiento del sistema. La dificultad en este caso es que los datos originales se actualizan en el curso del aprendizaje automático y otros procesos de IA. Por tanto, hay que supervisar constantemente el comportamiento de los modelos de ML.
Este proceso corresponde al principio de integración continua (IC) en el desarrollo clásico de software. Los expertos de ML Ops lo denominan evaluación continua. Además de los conocimientos tecnológicos necesarios para automatizar los procesos de evaluación, también implica una estrecha colaboración permanente con los científicos de datos de la empresa.
ML-Ops en la práctica
Un caso de uso típico para este tipo de operaciones de ML es la mejora de la calidad. Una empresa automovilística japonesa, por ejemplo, puso en marcha un proyecto en el que el aprendizaje automático debe ayudar a mejorar la calidad de los vehículos a partir de cartas de reclamación en lenguaje natural. El ML se utiliza para analizar el significado de los datos de las quejas en los textos. Un reto concreto era mantener la precisión de los análisis incluso al introducir nuevos productos.
Hemos creado una forma rápida y sencilla de actualizar nuevos modelos de clasificación basados en bag-of-words y gradient boosting. El resultado inmediato: el tiempo de procesamiento en las áreas de tratamiento de datos, diseño e implantación se redujo en un total de seis semanas. Entre otras cosas, la alta velocidad de comprobación de las reclamaciones tuvo aquí un impacto positivo. Al mismo tiempo, el modelo es considerablemente más fácil y económico de mantener, a lo largo de todo el ciclo de vida.
Del mismo modo, en un proyecto de IA para una compañía de seguros internacional, fue posible simplificar y automatizar el desarrollo y el funcionamiento de la solución hasta tal punto que no se requiere apoyo operativo de TI para el funcionamiento y la evaluación continua. Los científicos de datos pueden concentrarse plenamente en sus experimentos de datos, sin ninguna restricción por parte de la infraestructura de TI.
Fiabilidad de la IA
Tercer ejemplo: En un banco italiano, el objetivo era detectar comportamientos anómalos en volúmenes gigantescos de transacciones financieras. Los expertos consideran que esta es una ventaja clave de la inteligencia artificial para la banca digital. Sin embargo, la cantidad de datos generados hace imposible el entrenamiento manual de los modelos de IA. Mediante el uso de ML-Ops, se podría establecer un sistema automático para entrenar los modelos de datos. Y como hace reproducible cada modelo de análisis generado y cada predicción basada en él, también cumple el requisito más importante para la IA, y no solo en el sector financiero: la fiabilidad.