Exploración de la arquitectura de la solución

Completado

Al trabajar en proyectos más pequeños con equipos más pequeños, puede tener sentido tener un área de trabajo de Azure Machine Learning. El área de trabajo se puede usar para todo: para entrenar, probar e implementar el modelo. Pero, en Proseware, quiere tener una solución sólida y de prueba de futuro que pueda escalar con facilidad al compilar y mantener varios modelos que desea integrar con nuestra aplicación web para profesionales.

Para mover de forma rápida pero segura un modelo de desarrollo a producción, ha acordado una arquitectura de operaciones de aprendizaje automático (MLOps) de alto nivel.

Diagram of machine learning operations architecture.

Nota:

El diagrama es una representación simplificada de una arquitectura de MLOps. Para ver una arquitectura más detallada, explore los distintos casos de uso del acelerador de soluciones MLOps (v2).

La arquitectura incluye:

  1. Configuración: creación de todos los recursos de Azure necesarios para la solución.
  2. Desarrollo de modelos (bucle interno): análisis y procesamiento de los datos para entrenar y evaluar el modelo.
  3. Integración continua: empaquetado y registro del modelo.
  4. Implementación de modelos (bucle externo): implementación del modelo.
  5. Implementación continua: prueba del modelo y promoción al entorno de producción.
  6. Supervisión: supervisión del rendimiento del modelo y del punto de conexión.

Para trabajar con modelos de Machine Learning a gran escala, Proseware quiere usar entornos independientes para diferentes fases. Tener entornos independientes facilitará el control del acceso a los recursos. A continuación, cada entorno se puede asociar a un área de trabajo de Azure Machine Learning independiente.

Nota

En este módulo, se hace referencia a la interpretación de entornos de DevOps. Tenga en cuenta que Azure Machine Learning también usa el término "entornos" para describir una colección de paquetes de Python necesarios para ejecutar un script. Estos dos conceptos de entornos son independientes entre sí. Obtenga más información sobre los entornos de Azure Machine Learning.

Para permitir que los modelos se prueben antes de implementarse, quiere trabajar con tres entornos:

Diagram of development, staging, and production environment.

El entorno de desarrollo se usa para el bucle interno:

  1. Los científicos de datos entrenan el modelo.
  2. El modelo se empaqueta y registra.

El entorno de ensayo se usa para parte del bucle externo:

  1. Pruebe el código y el modelo con linting y pruebas unitarias.
  2. Implemente el modelo para probar el punto de conexión.

El entorno de producción se usa para otra parte del bucle externo:

  1. Implemente el modelo en el punto de conexión de producción. El punto de conexión de producción se integra con la aplicación web.
  2. Supervise el rendimiento del modelo y del punto de conexión para desencadenar el reentrenamiento cuando sea necesario.

Aunque muchas tareas de aprendizaje automático pueden y deben automatizarse, también querrá planear puntos en los que desee la aprobación controlada. Cuando se ha entrenado y empaquetado un modelo, quiere notificar al científico de datos principal para que valide el modelo antes de pasar al entorno de ensayo.

De forma similar, después de probar el modelo con vigor en el entorno de ensayo, quiere agregar la aprobación cerrada para asegurarse de que alguien del equipo de desarrollo de software comprueba que todas las pruebas se han realizado correctamente antes de implementar el modelo en producción.

Al trabajar con entornos, la aprobación cerrada le permite controlar las implementaciones de un entorno a otro.