MLOps

MLOps: Ciclo de Vida 2023

El ciclo de vida MLOps fusiona modelos y desarrollo de software en un ciclo de vida unificado para el aprendizaje automático.

En el intrincado mundo del aprendizaje automático, dos disciplinas se entrelazan para dar forma a productos innovadores y características asombrosas:

Desarrollo de Modelos: En esta fase, los Científicos de Datos, expertos versados en estadísticas, álgebra lineal y cálculo, se convierten en los arquitectos de la lógica detrás de cada modelo. Con habilidad magistral, transforman datos crudos en modelos estadísticos y de redes neuronales de alto rendimiento. Cada algoritmo es cuidadosamente entrenado, evaluado y refinado hasta alcanzar la excelencia, como esculpir una obra maestra matemática que se ajusta perfectamente a la realidad.

MLOps

Implementación de Modelos: Aquí es donde los Desarrolladores, maestros del diseño y la ingeniería de software, entran en juego. Construyen el andamiaje digital que sostiene los modelos, creando sistemas sólidos y eficientes. Su labor implica llevar estos modelos al entorno de la nube, donde pueden desplegarse y escalarse para satisfacer las demandas de un público ávido de datos. Cada línea de código es un ladrillo en la construcción de una estructura tecnológica que transforma las teorías en aplicaciones prácticas y funcionales.

Esta sinergia entre los Científicos de Datos y los Desarrolladores no solo es un proceso técnico, sino un ballet de creatividad y precisión. Cada paso, desde la concepción del modelo hasta su implementación en el mundo digital, es un acto de colaboración que da vida a la promesa del aprendizaje automático: hacer que la complejidad se vuelva comprensible y las ideas se conviertan en realidad.

Contextualización Esencial:

La construcción de productos potenciados por el aprendizaje automático va más allá de los algoritmos y las líneas de código. Se necesita un equipo multidisciplinario, cada uno con habilidades únicas, para dar vida a soluciones verdaderamente efectivas y éticas:

Ingeniería de Datos: Aquí, los expertos en ingeniería de datos desempeñan un papel crucial. Construyen intrincadas canalizaciones para reunir datos de diversas fuentes. Estos datos, a menudo desorganizados, se someten a una cuidadosa curación y transformación. El objetivo es convertirlos en una forma homogénea y limpia, lista para ser segura y efectivamente utilizada en el entrenamiento de modelos.

Diseño de Producto: El diseño del producto es la esencia de la experiencia del usuario. Comprender las necesidades comerciales es fundamental. Esto implica identificar objetivos impactantes y matrices comerciales relevantes. Se definen las características del producto y las historias de usuario, reconociendo los problemas específicos que el aprendizaje automático puede abordar de manera óptima. El diseño de la experiencia del usuario no solo implica una utilización fluida del modelo de aprendizaje automático junto con otras características del producto, sino también la recopilación de la reacción del usuario. Esta retroalimentación implícita se convierte en una valiosa herramienta para mejorar continuamente los modelos.

Análisis de Seguridad: La seguridad es una preocupación central. Los expertos en seguridad se aseguran de que tanto el sistema de software como los datos y los modelos estén protegidos. Se evita la revelación de información personal identificable (PII) mediante la combinación de resultados del modelo y otra información pública. Esta vigilancia constante es esencial para mantener la confianza y la integridad del producto.

MLOps

Ética en IA: Garantizar la ética en la inteligencia artificial es imperativo. Esto implica no solo cumplir con las leyes aplicables, sino también incorporar medidas para prevenir sesgos y discriminación. Limitar el alcance del modelo y agregar supervisión humana son solo algunos ejemplos de cómo se abordan estas preocupaciones éticas.

MLOps y la Integración Continua: A medida que más modelos se despliegan en producción, surge la necesidad de MLOps. Este enfoque se centra en el diseño y el funcionamiento suave de los modelos de aprendizaje automático dentro del producto en su conjunto. El desarrollo de modelos ya no puede existir en un vacío; su impacto potencial en el producto y en el negocio en su conjunto es demasiado significativo. La integración continua y la adaptación constante son fundamentales para mantener la relevancia y la eficacia en este mundo dinámico del aprendizaje automático.

Ciclo de Vida del Aprendizaje Automático: Navegando en el Mar de Datos y Algoritmos

Imaginemos un viaje intrigante a través del vasto océano de datos y algoritmos, donde cada fase representa una etapa crucial en la construcción de soluciones impulsadas por el aprendizaje automático:

1. Formulación del Problema: Este es el puerto de partida, donde los Científicos de Datos traducen objetivos comerciales en problemas de aprendizaje automático. La tarea es reducir estos objetivos a un conjunto específico de problemas de ML que puedan impulsar el propósito comercial. Pero aquí también se plantean preguntas cruciales: ¿Cuál es el costo de los errores? ¿Cómo afectan los falsos positivos y negativos? La clave es comprender la relevancia del modelo en el contexto de la vida real y las implicaciones de sus predicciones.

2. Recopilación de Datos: En esta fase, la tripulación del equipo de datos se embarca en la misión de reunir datos de diversas fuentes. A veces, este viaje comienza con poco o ningún dato y se desarrolla gradualmente a medida que los datos se enriquecen. Este proceso es como construir un tesoro: a medida que más datos se acumulan, más riqueza y variedad pueden ofrecer, haciendo que diferentes tipos de modelos sean viables.

3. Preparación y Transformación de Datos: Los datos recopilados rara vez llegan en forma perfecta. Aquí, los expertos en ingeniería de datos asumen el papel de artesanos, puliendo y refinando los datos para que se conviertan en gemas brillantes. Esto implica eliminar imperfecciones, llenar vacíos y estructurarlos de manera que sean compatibles con los algoritmos de aprendizaje automático.

4. Evaluación y Selección del Modelo: En esta etapa, los Científicos de Datos prueban varios modelos, realizan experimentos y comparan su rendimiento. Es como una competición de barcos, donde diferentes modelos compiten por la supremacía. La métrica de evaluación, cuidadosamente seleccionada para alinearse con los objetivos comerciales, se convierte en el faro que guía la selección del modelo óptimo.

5. Implementación y Optimización Continua: Una vez que se selecciona el modelo adecuado, comienza la fase de implementación. Los desarrolladores, como hábiles constructores de barcos, crean una estructura sólida y la lanzan en el vasto océano de la producción. Pero este viaje no termina aquí; es un ciclo constante de optimización. Monitorear el rendimiento del modelo, analizar resultados y ajustar los algoritmos en función de la retroalimentación del mundo real se convierte en la brújula que guía la mejora continua.

En este viaje, la colaboración entre Científicos de Datos, ingenieros y desarrolladores es fundamental. En el oscilante mar de datos y algoritmos, esta sinfonía de habilidades y conocimientos asegura que la travesía sea segura, eficiente y siempre orientada hacia el logro de los objetivos comerciales.

El Viaje Infinito de los Datos y Modelos: Navegando las Etapas del Descubrimiento

Imaginemos este viaje como una travesía sin fin a través de océanos de datos y modelos.

Cada fase es una isla por sí misma, una etapa crucial en la creación de soluciones de aprendizaje automático.

1. Recolección: Es como lanzar redes en el vasto océano digital, capturando datos de aplicaciones internas y fuentes externas. Los Ingenieros de Datos pescan en la web, capturan flujos de eventos de aplicaciones móviles y exploran bases de datos operativas. Todos estos tesoros de datos se canalizan y almacenan en la zona “bruta/aterrizaje/bronce” del lago de datos, listos para su transformación.

2. Curación: Estos tesoros, aunque valiosos, rara vez son perfectos. Aquí, como artesanos meticulosos, limpiamos los datos, eliminamos duplicados y llenamos huecos vacíos. Es un proceso de refinamiento, donde los datos se pulen y etiquetan, preparándolos para su transformación.

3. Transformación: Como alquimistas, los Ingenieros de Datos transforman estos datos en oro puro. Cambian estructuras, fusionan información y calculan características únicas. Estas transformaciones crean tesoros valiosos, almacenados en la zona “transformado/agregado/oro” del lago de datos.

4. Validación: En esta fase, los guardianes de la integridad aseguran que nuestros tesoros sean genuinos. Los controles de calidad son como encantamientos, supervisando cada aspecto para garantizar la autenticidad. Cualquier desviación activa alarmas, asegurando que nuestros tesoros estén protegidos.

5. Exploración y Entrenamiento: Aquí, como exploradores intrépidos, los Científicos de Datos navegan estos tesoros refinados. Realizan un Análisis Exploratorio de Datos, desvelando secretos ocultos y patrones intrigantes. Luego, entrenan modelos como maestros alquimistas, experimentando y ajustando hasta encontrar las fórmulas más poderosas.

6. Evaluación y Refinamiento: Finalmente, evaluamos nuestros tesoros frente a los objetivos comerciales y métricas. Cada evaluación es como una prueba de fuego, revelando la verdadera calidad de nuestros tesoros. Si es necesario, nuestros tesoros se redefinen y se vuelven a pulir, listos para nuevas exploraciones en este viaje sin fin.

En este viaje interminable, los datos y modelos son tesoros invaluables que impulsan la innovación. Cada fase de esta odisea es una oportunidad para descubrir y refinar tesoros ocultos, alimentando nuestro deseo de conocimiento y excelencia.

Ciclo de Vida del Desarrollo de Software

El bucle infinito de DevOps es el estándar de facto para el ciclo de vida del desarrollo de software para construir y desplegar rápidamente aplicaciones y servicios de software en la nube.

Consta de dos conjuntos de actividades: diseñar y desarrollar un sistema de software, e implementar y supervisar servicios y aplicaciones de software.

Ciclo de Vida del Desarrollo de Software Planificación Esta es la primera etapa para cualquier producto o función del producto. Discute los objetivos comerciales y las métricas clave del negocio, y qué características del producto pueden ayudar a alcanzarlos. Analiza los problemas del usuario final y debate sobre los viajes del usuario para abordar esos problemas y recopilar datos necesarios para evaluar cómo un modelo de ML está funcionando en el mundo real.

Código Diseñe y desarrolle el software, el producto o la aplicación de extremo a extremo, y no solo los modelos de ML. Establezca contratos y API que el código de la aplicación utiliza para invocar la inferencia del modelo y consumir sus resultados, y también qué reacciones y comentarios de los usuarios se recopilarán.

Es muy importante que los desarrolladores, ingenieros de datos y científicos de datos estén en la misma página. Eso reducirá sorpresas desagradables más tarde.

Construcción Esta etapa alimenta la Integración Continua de varias partes a medida que evolucionan y se empaquetan en una forma que se lanzará. Puede ser una biblioteca o SDK, una imagen de Docker o un binario de aplicación (por ejemplo, apk para aplicaciones de Android).

Pruebas Pruebas unitarias, pruebas de integración, pruebas de cobertura, pruebas de rendimiento, pruebas de carga, pruebas de privacidad, pruebas de seguridad y pruebas de sesgo. Piensa en todo tipo de pruebas de software y modelos de ML que sean aplicables aquí y automatízalas tanto como sea posible.

Las pruebas se realizan en un entorno de ensayo que es similar al entorno de producción previsto pero no está diseñado para una escala similar. Puede tener datos ficticios, artificiales o anonimizados para probar el sistema de software de extremo a extremo.

Liberación Una vez que todas las pruebas automatizadas pasan y, en algunos casos, los resultados de las pruebas se inspeccionan manualmente, el código del software o los modelos son aprobados para su lanzamiento. Al igual que el código, los modelos también deben versionarse y capturar automáticamente los metadatos necesarios. Así como las imágenes de Docker se versionan en un repositorio de Docker, el modelo también debe persistir en un repositorio de modelos.

Si los modelos se empaquetan junto con el código para el microservicio que sirve el modelo, entonces la imagen de Docker también tiene la imagen del modelo. Aquí es donde termina la Integración Continua y comienza la Implementación Continua.

Implementación Elegir los artefactos lanzados del repositorio de Docker o del almacén de modelos y desplegarlos en la infraestructura de producción. Dependiendo de su necesidad, puede elegir Infraestructura como Servicio (IaaS), Contenedor como Servicio (CaaS) o Plataforma como Servicio (PaaS).

También puede utilizar TensorFlow Serve, PyTorch Serve o servicios como SageMaker y Vertex AI para implementar sus servicios de modelo.

Operación Una vez que los servicios se implementan, puede decidir enviar un pequeño porcentaje del tráfico primero. La Implementación de Canarios es una táctica común para actualizar en fases (por ejemplo, 2%, 5%, 10%, 25%, 75%, 100%). En caso de un problema, comportamiento inesperado o una disminución en las métricas, puede revertir la implementación.

Una vez que la puerta está abierta al 100% del tráfico, su infraestructura de implementación debe bajar el servicio antiguo de manera adecuada. También debe escalarse según los picos y caídas de la carga. Kubernetes y KubeFlow son herramientas comunes para este propósito.

Monitoreo En esta fase final, monitoriza constantemente la salud de los servicios, errores, latencias, predicciones del modelo, valores atípicos y distribución de las características del modelo de entrada, etc. En caso de que surja un problema, dependiendo de la gravedad y el diagnóstico, puede revertir el sistema a una versión anterior, lanzar un parche, iniciar la reentrenamiento del modelo o hacer cualquier otra cosa que sea necesaria.

Ciclo de Vida de MLOps

En este momento, es bastante común que los científicos de datos desarrollen un modelo y luego lo “lanzen” a los desarrolladores y ingenieros de ML para integrarlo con el resto del sistema y desplegarlo en producción.

Los silos de ML y Dev y la propiedad fragmentada son una de las razones más comunes por las que muchos proyectos de ML fallan. Unificar el desarrollo de modelos y software en un ciclo de vida de aprendizaje automático proporciona la visibilidad tan necesaria para todas las partes interesadas.

El paso de Planificación es el punto de partida. La planificación del producto debe incluir no solo la funcionalidad del producto, sino también cómo se mezclarán los resultados del modelo y cómo se capturarán las reacciones del usuario en el diseño de producción.

A diferencia del software tradicional, cuando se recopila más datos con el tiempo, la experiencia del usuario de los aspectos de ML de un producto puede necesitar una actualización para beneficiarse de él, incluso si no hay una “nueva funcionalidad”.

Primero Construir el Producto Sin ML:

A menudo, primero construyo una aplicación de extremo a extremo con heurísticas basadas en reglas o un modelo falso, cortando el bucle de datos-ML por completo. Eso funciona como un modelo de referencia y es útil para recopilar datos. También proporciona contexto a los científicos de datos al mostrar cómo se usará el modelo en el producto.

Diferente Cadencia para el Desarrollo de Modelos y Software:

Desarrollar un modelo de ML es bastante diferente de desarrollar software. Los sistemas de software se pueden desarrollar incrementalmente (con algunas partes que no funcionan). A diferencia de las piezas de software, los modelos de ML no se pueden dividir en granularidad fina.

Un solo ciclo de vida no impide que las ruedas de Datos, ML, Dev y Ops giren a diferentes velocidades. De hecho, ya sucede en DevOps. En algunos equipos, no cada sprint de Dev resulta en una nueva versión que se implementa. Por otro lado, algunos equipos implementan nuevas versiones cada hora, es decir, cientos de veces en un solo sprint. Deje que cada rueda gire a su propia velocidad óptima.

Propiedad Consolidada, Integre Temprano, Itere a Menudo:

Estos son mis 3 preceptos para mejorar la tasa de éxito en el desarrollo e implementación de productos asistidos por ML:

Consolidar la Propiedad: Equipo multifuncional responsable del proyecto de extremo a extremo.

Integrar Temprano: Implementar un modelo simple (basado en reglas o falso) y desarrollar una característica del producto de extremo a extremo primero.

Iterar a Menudo: Construir mejores modelos y reemplazar el modelo simple, supervisar y repetir.

Navegando el Mar de MLOps – Donde los Datos se Convierten en Tesoros

En la era de MLOps, el ciclo de vida del aprendizaje automático se convierte en un viaje épico donde los océanos de desarrollo de modelos se fusionan con las tierras del desarrollo de software. Es un viaje sin fin, donde los datos son tesoros y los modelos son mapas hacia la innovación.

MLOps

En la Recolección, lanzamos redes en el vasto océano digital, capturando datos de todas las fuentes posibles: aplicaciones internas, flujos web y bases de datos operativas. Estos datos crudos son los bloques de construcción de nuestros tesoros.

En la Curación, nuestros artesanos meticulosos limpian y pulen estos datos, eliminando impurezas y llenando huecos vacíos. Los datos se convierten en gemas listas para ser transformadas.

En la Transformación, los alquimistas de datos fusionan información, calculan características únicas y crean tesoros en la zona “transformado/agregado/oro”. Estos tesoros son nuestra clave para descubrir patrones ocultos y secretos en el océano de datos.

En la Validación, los guardianes de la integridad aseguran que nuestros tesoros sean genuinos, implementando encantamientos para protegerlos de cualquier desviación.

En la Exploración y Entrenamiento, somos exploradores intrépidos, navegando tesoros refinados y entrenando modelos como maestros alquimistas. Cada experimento y ajuste nos acerca a las fórmulas más poderosas.

En la Evaluación y Refinamiento, enfrentamos nuestras creaciones a pruebas de fuego, evaluando su verdadera calidad frente a objetivos comerciales y métricas. Si es necesario, nuestros tesoros se redefinen y se vuelven a pulir para futuras exploraciones.

Este viaje infinito se ha convertido en una odisea en la que los datos y los modelos son tesoros invaluables que impulsan la innovación. La fusión de las tierras de desarrollo de modelos y desarrollo de software en un nudo eterno de MLOps ha traído una nueva era de descubrimientos y posibilidades.

¡Zarparemos juntos hacia el futuro, donde cada dato es un tesoro esperando ser descubierto!

 

Por Marcelo Lozano – General Publisher IT CONNECT LATAM

 

Lea más sobre Análisis de datos e IA

Transistores IA: Consumo 99% Menos ¡Revolución Inminente!

IA generativa: Dell Technologies acelera las transformaciones de la empresa 2023

IA segura: 5 pasos para garantizar que la IA generativa lo sea

mWISE Cybersecurity Conference 2023: Palabra del Director del FBI

WatsonX 2023: IBM planea el lanzar nuevos modelos y capacidades de IA Generativa

MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, MLOps, 

NO TE PIERDAS EL ÚLTIMO TI CONNECT SECURE STREAM

 

Salir de la versión móvil