A medida que las empresas adoptan el aprendizaje automático (ML) en todas sus organizaciones, los flujos de trabajo manuales para crear, entrenar e implementar modelos de ML tienden a convertirse en cuellos de botella para la innovación. Para superar esto, las empresas deben dar forma a un modelo operativo claro que defina cómo varias personas, como científicos de datos, ingenieros de datos, ingenieros de ML, TI y partes interesadas del negocio, deben colaborar e interactuar; cómo separar las preocupaciones, responsabilidades y habilidades; y cómo usar los servicios de AWS de manera óptima. Esta combinación de ML y operaciones (MLOps) está ayudando a las empresas a optimizar su ciclo de vida de ML de extremo a extremo y aumentar la productividad de los científicos de datos mientras mantiene una alta precisión del modelo y mejora la seguridad y el cumplimiento.
En esta publicación, aprenderá sobre las fases clave de la construcción de una base de MLOps, cómo varias personas trabajan juntas en esta base y el Amazon SageMaker herramientas especialmente diseñadas e integraciones integradas con otros servicios de AWS que pueden acelerar la adopción de ML en un negocio empresarial.
Modelo de madurez de MLOps
Construir una base de MLOps que pueda cubrir las necesidades de operaciones, personas y tecnología de los clientes empresariales es un desafío. Por lo tanto, definimos el siguiente modelo de madurez que define las capacidades necesarias de MLOps en cuatro fases clave.
- Fase inicial: Durante esta fase, los científicos de datos pueden experimentar y crear, entrenar e implementar modelos en AWS utilizando los servicios de SageMaker. El entorno de desarrollo sugerido es Estudio Amazon SageMaker, en el que los científicos de datos pueden experimentar y colaborar en función de los cuadernos de Studio.
- Fase repetible – Con la capacidad de experimentar en AWS, el siguiente paso es crear flujos de trabajo automáticos para preprocesar datos y construir y entrenar modelos (canalizaciones de ML). Los científicos de datos colaboran con los ingenieros de ML en un entorno separado para crear código fuente y algoritmos robustos y listos para la producción, orquestados mediante Canalizaciones de Amazon SageMaker. Los modelos generados se almacenan y comparan en el registro de modelos de Amazon SageMaker.
- Fase confiable – Aunque los modelos se han generado a través de las canalizaciones de ML, deben probarse antes de pasar a producción. Por lo tanto, en esta fase, se introduce la metodología de pruebas automáticas, tanto para el modelo como para la infraestructura de activación, en un entorno de prueba aislado (preproducción) que simula la producción. Después de una ejecución exitosa de la prueba, los modelos se implementan en el entorno aislado de producción. Para promover los modelos entre los múltiples entornos, se requieren evaluaciones y aprobaciones manuales.
- Fase escalable – Después de la producción de la primera solución de ML, es necesario escalar la base de MLOps para admitir múltiples equipos de ciencia de datos para colaborar y producir decenas o cientos de casos de uso de ML. En esta fase, presentamos la creación de plantillas de las soluciones, lo que aporta velocidad al valor al reducir el tiempo de desarrollo de nuevas soluciones de producción de semanas a días. Además, automatizamos la creación de instancias de entornos MLOps seguros para permitir que varios equipos operen con sus datos, lo que reduce la dependencia y los gastos generales de TI.
En las siguientes secciones, mostramos cómo construir una base de MLOps basada en el modelo de madurez anterior y los siguientes principios:
- Flexibilidad – Los científicos de datos pueden adaptarse a cualquier marco (como TensorFlow o PyTorch)
- Reproducibilidad – Los científicos de datos pueden recrear u observar experimentos pasados (código, datos y resultados)
- Reutilización – Los científicos de datos y los ingenieros de ML pueden reutilizar el código fuente y las canalizaciones de ML, evitando inconsistencias y costos.
- Escalabilidad – Los científicos de datos y los ingenieros de ML pueden escalar recursos y servicios a pedido
- Auditoría – Los científicos de datos, TI y los departamentos legales pueden auditar registros, versiones y dependencias de artefactos y datos.
- Consistencia – Debido a que MLOps consta de múltiples entornos, la base debe eliminar la variación entre entornos.
Fase inicial
En la fase inicial, el objetivo es crear un entorno de experimentación seguro en el que el científico de datos reciba instantáneas de los datos y experimente con los cuadernos de SageMaker para demostrar que el aprendizaje automático puede resolver un problema comercial específico. Para lograr esto, se recomienda un entorno de Studio con acceso personalizado a los servicios a través de los puntos finales de la VPC. El código fuente de la arquitectura de referencia está disponible en los ejemplos proporcionados por el equipo de SageMaker en el Ciencia de datos segura con la arquitectura de referencia de Amazon SageMaker Studio Repo de GitHub.
Además de los servicios de SageMaker, los científicos de datos pueden usar otros servicios para procesar los datos, como EMR de Amazon, Atenea amazónicay Pegamento AWS, con cuadernos almacenados y versionados en Compromiso de código de AWS repositorios (ver la siguiente figura).
Fase repetible
Una vez que los científicos de datos hayan demostrado que ML puede resolver el problema comercial y se familiaricen con la experimentación, la capacitación y la implementación de modelos de SageMaker, el siguiente paso es comenzar a producir la solución de ML. La siguiente figura ilustra esta arquitectura.
En esta etapa, la separación de intereses es necesaria. Dividimos el entorno en varias cuentas de AWS:
- Lago de datos – Almacena todos los datos ingeridos desde las instalaciones (u otros sistemas) a la nube. Los ingenieros de datos pueden crear canalizaciones de extracción, transformación y carga (ETL) que combinan múltiples fuentes de datos y preparan los conjuntos de datos necesarios para los casos de uso de ML. Los datos se catalogan a través de AWS Glue Data Catalog y se comparten con otros usuarios y cuentas a través de Formación del lago AWS (la capa de gobierno de datos). En la misma cuenta, Tienda de funciones de Amazon SageMaker se puede alojar, pero no lo cubrimos en esta publicación. Para obtener más información, consulte Habilite la reutilización de funciones en todas las cuentas y equipos mediante Amazon SageMaker Feature Store.
- Experimentación – Permite a los científicos de datos realizar sus investigaciones. La única diferencia es que el origen de las instantáneas de datos es el lago de datos. Los científicos de datos solo tienen acceso a conjuntos de datos específicos, que pueden anonimizarse en caso de GDPR u otras restricciones de privacidad de datos. Además, la cuenta de experimentación puede tener acceso a Internet para permitir que los científicos de datos utilicen nuevos marcos de ciencia de datos o bibliotecas de código abierto de terceros. Por lo tanto, la cuenta de experimentación se considera como parte del entorno de no producción.
- Desarrollo (dev) – La primera etapa del entorno de producción. Los científicos de datos pasan de los cuadernos al mundo de los flujos de trabajo automáticos y SageMaker Pipelines. Deben colaborar con los ingenieros de ML para abstraer su código y garantizar la cobertura de las pruebas, el manejo de errores y la calidad del código. El objetivo es desarrollar canalizaciones de ML, que son flujos de trabajo automáticos que preprocesan, entrenan, evalúan y registran modelos en el registro de modelos de SageMaker. La implementación de las canalizaciones de ML se realiza solo a través de canalizaciones de CI/CD, y el acceso a la Consola de administración de AWS está restringido. No se permite la conexión a Internet porque la canalización de ML tiene acceso a los datos de producción en el lago de datos (solo lectura).
- Herramientas (o automatización) – Aloja los repositorios de CodeCommit, AWS CodePipeline Canalizaciones de CI/CD, registro de modelos de SageMaker y Amazon ECR para alojar contenedores personalizados. Debido a que el lago de datos es el único punto de verdad para los datos, la cuenta de herramientas es para el código, los contenedores y los artefactos producidos.
Tenga en cuenta que esta convención de nomenclatura de cuentas y la estrategia de varias cuentas pueden variar según las necesidades de su negocio, pero esta estructura está destinada a mostrar los niveles de aislamiento recomendados. Por ejemplo, puede cambiar el nombre de la cuenta de desarrollo a la cuenta de creación o entrenamiento del modelo.
Para lograr la implementación automática, es importante comprender cómo pasar de los cuadernos a las canalizaciones de ML y estandarizar los repositorios de código y la estructura de datos, que analizamos en las siguientes secciones.
De cuadernos a canalizaciones de ML
El objetivo del entorno de desarrollo es reestructurar, aumentar, mejorar y escalar el código en los cuadernos y moverlo a las canalizaciones de ML. Una canalización de ML es un conjunto de pasos que son responsables del preprocesamiento de los datos, el entrenamiento o el uso de modelos y el posprocesamiento de los resultados. Cada paso debe realizar exactamente una tarea (una transformación específica) y ser lo suficientemente abstracto (por ejemplo, pasar nombres de columnas como parámetros de entrada) para permitir la reutilización. El siguiente diagrama ilustra una canalización de ejemplo.
Para implementar canalizaciones de ML, los científicos de datos (o ingenieros de ML) utilizan SageMaker Pipelines. Una canalización de SageMaker es una serie de pasos interconectados (trabajos de procesamiento de SageMaker, capacitación, HPO) que se define mediante una definición de canalización JSON mediante un SDK de Python. Esta definición de canalización codifica una canalización mediante un gráfico acíclico dirigido (DAG). Este DAG brinda información sobre los requisitos y las relaciones entre cada paso de su canalización de ML.
Según el caso de uso, puede separar la canalización de ML en dos tipos principales: entrenamiento e inferencia por lotes.
La siguiente figura ilustra el flujo de canalización de aprendizaje automático.
La fase de preprocesamiento puede constar de varios pasos. Las transformaciones comunes de la ciencia de datos son la división y el muestreo de datos (entrenamiento, validación, conjunto de prueba), codificación o vectorización one-hot, agrupamiento y escalado. El paso de entrenamiento del modelo podría ser un trabajo de entrenamiento, si el científico de datos conoce la mejor configuración del modelo, o un trabajo de optimización de hiperparámetros (HPO), en el que AWS define los mejores hiperparámetros para el modelo (método bayesiano) y produce los correspondientes. artefacto modelo. En el paso de evaluación, el artefacto del modelo producido se usa para realizar inferencias al conjunto de datos de validación. Luego, la canalización de ML verifica si las métricas de precisión producidas (como F1, precisión y deciles de ganancia) superan los umbrales necesarios. Si este paso tiene éxito, los artefactos y metadatos del modelo se mueven al registro del modelo para la producción. Tenga en cuenta que el paso de línea base de exportación explota Monitor de modelo de Amazon SageMaker funcionalidad, produciendo un objeto JSON con las estadísticas que se utilizan más tarde para la detección de desviación del modelo y se pueden alojar en el registro del modelo de SageMaker como metadatos del modelo.
En el caso de la inferencia por lotes, los científicos de datos pueden crear canalizaciones similares, como se ilustra en la siguiente figura.
El paso de preprocesamiento de la inferencia por lotes suele ser el mismo que el entrenamiento, ya que excluye el muestreo de datos y la columna de datos reales. La inferencia por lotes es el paso que envía datos en lotes para la inferencia al punto final correspondiente, y se puede implementar mediante el uso de transformación por lotes. El paso de posprocesamiento produce estadísticas adicionales, como la distribución de resultados, o une los resultados con ID externos. Luego, un paso de supervisión del modelo puede comparar las estadísticas de referencia de los datos utilizados para el entrenamiento (metadatos JSON del modelo en el registro del modelo) con los nuevos datos entrantes para la inferencia.
Puede omitir los pasos de preprocesamiento si los científicos de datos crean modelos de canalización que se pueden almacenar en el registro de modelos de SageMaker. Para obtener más detalles, consulte Aloje modelos junto con lógica de preprocesamiento como canalización de inferencia en serie detrás de un punto final.
Estandarización de repositorios
Para permitir la colaboración entre los científicos de datos y los ingenieros de ML, es necesaria la estandarización de la estructura del repositorio de código. Además, la estandarización es beneficiosa para la estructura de canalización de CI/CD, ya que permite la incorporación de validación automática, construcción (como la construcción de contenedores personalizados) y pasos de prueba.
El siguiente ejemplo ilustra la separación de las soluciones de ML en dos repositorios: un repositorio de creación y capacitación para capacitación (y, opcionalmente, un modelo de canalización) y una implementación para promover los modelos de canalización de inferencia por lotes o instanciar los puntos finales en tiempo real:
Repositorio de construcción/formación
Repositorio de implementación
El repositorio de creación y formación se divide en tres carpetas principales:
- Algoritmos – Los científicos de datos desarrollan el código para cada paso de las canalizaciones de ML en la carpeta raíz de los algoritmos. Los pasos se pueden agrupar en preprocesamiento, entrenamiento, inferencia por lotes y posprocesamiento (evaluación). En cada grupo, se pueden definir varios pasos en las subcarpetas correspondientes, que contienen una carpeta para las pruebas unitarias (incluidas las entradas y salidas opcionales), las funciones principales, el archivo Léame y un archivo Docker en caso de que se necesite un contenedor personalizado. Además de principal, se pueden alojar varios archivos de código en la misma carpeta. Las bibliotecas auxiliares comunes para todos los pasos se pueden alojar en una carpeta de biblioteca compartida. Los científicos de datos son responsables del desarrollo de las pruebas unitarias porque poseen la lógica de los pasos, y los ingenieros de ML son responsables de la mejora del manejo de errores y la recomendación de cobertura de prueba. La canalización de CI/CD es responsable de ejecutar las pruebas, crear los contenedores automáticamente (si es necesario) y empaquetar los múltiples archivos de código fuente.
- Canalizaciones de aprendizaje automático – Después de desarrollar el código fuente y las pruebas de cada paso, el siguiente paso es definir las canalizaciones de SageMaker en otra carpeta raíz. Cada definición de canalización de ML se coloca en una subcarpeta que contiene el archivo .py y un archivo JSON o .yaml para parámetros de entrada, como rangos de hiperparámetros. Es necesario un archivo Léame para describir las canalizaciones de ML.
- Cuadernos – Esta carpeta alberga los cuadernos de origen que el científico de datos usó durante la experimentación.
El repositorio de implementación consta de tres partes principales:
- Configuración de inferencia – Contiene la configuración de puntos finales en tiempo real o inferencia por lotes por entorno de desarrollo, como tipos de instancia.
- Infraestructura de aplicaciones – Aloja el código fuente de la infraestructura necesaria para ejecutar la inferencia, si es necesario. Esto podría ser un mecanismo desencadenante a través de Puente de eventos de Amazon, Puerta de enlace API de Amazon, AWS Lambda funciones o SageMaker Pipelines.
- Examenes – Consta de varias subcarpetas según la metodología de prueba del cliente. Como conjunto mínimo de pruebas, sugerimos una prueba de integración (ejecución de la inferencia de un extremo a otro, incluida la infraestructura de la aplicación), una prueba de esfuerzo (examinar los casos extremos) y pruebas de aprendizaje automático (como la distribución de puntuaciones de confianza o probabilidades).
Al confirmar cambios en el repositorio de creación y capacitación, una canalización de CI/CD es responsable de validar la estructura del repositorio, realizar las pruebas e implementar y ejecutar las canalizaciones de ML. Una canalización de CI/CD diferente es responsable de promover los modelos, que examinamos en la siguiente sección.
Estandarización de bifurcaciones de repositorios y CI/CD
Para garantizar la solidez de las canalizaciones de ML en la cuenta de desarrollo, se sugiere una estrategia de repositorio de ramificación múltiple, mientras que la implementación se realiza solo a través de canalizaciones de CI/CD. Los científicos de datos deben utilizar una rama de características para desarrollar su nueva funcionalidad (código fuente). Cuando estén listos para implementar las canalizaciones de ML correspondientes, pueden enviar esto a la rama de desarrollo. Una alternativa a este enfoque es permitir la implementación de canalizaciones de ML por rama de funciones. Para obtener más información, consulte Mejore su flujo de trabajo de ciencia de datos con una canalización de MLOps de capacitación de múltiples ramas usando AWS.
La siguiente figura ilustra la estrategia de bifurcación y los pasos de canalización de CI/CD necesarios que ejecutamos en el entorno de desarrollo para la canalización de ML y la creación de modelos.
El ejemplo de código del enfoque de múltiples sucursales está disponible en Pipeline de capacitación de MLOps de múltiples sucursales. Podemos almacenar los modelos producidos por una canalización de aprendizaje automático basada en rama de funciones en un grupo de modelos de funciones separado y retirarlos durante una solicitud de fusión con la rama principal. Los modelos del grupo de modelos principal son los que se promocionan a producción.
Estandarización de la estructura de datos
Igualmente importante para la estandarización del código fuente es la estandarización de la estructura de los datos, lo que permite a los científicos de datos y a los ingenieros de ML depurar, auditar y monitorear el origen y el historial de los modelos y las canalizaciones de ML. El siguiente diagrama ilustra un ejemplo de este tipo.
Para simplificar, supongamos que los datos históricos de entrada llegan a un depósito de la cuenta de desarrollo bajo la subclave de entrada (normalmente, se encuentra en el lago de datos). Para cada caso de uso de ML, se debe crear una subclave separada. Para activar una nueva canalización de ML para que se ejecute, el científico de datos debe realizar una confirmación de git y enviar, lo que activa la canalización de CI/CD. Luego, la canalización de CI/CD crea una subclave copiando los artefactos de código (el code
subclave) y datos de entrada (la input
subclave) en una subpartición del ID de compilación. Como ejemplo, el ID de compilación cpuede ser una combinación de fecha y hora y hash de git, o un ID de ejecución de canalización de SageMaker. Esta estructura permite al científico de datos auditar y consultar implementaciones y ejecuciones anteriores. Después de esto, la canalización de CI/CD se implementa y activa la canalización de ML. Mientras se ejecuta la canalización de ML, cada paso exporta los resultados intermedios a ml-pipeline-outputs
. Es importante tener en cuenta que las diferentes ramas de características implementan y ejecutan una nueva instancia de ML Pipeline y cada una necesita exportar los resultados intermedios a una subcarpeta diferente con una nueva subclave y/o un prefijo o sufijo estandarizado que incluye el ID de rama de función.
Este enfoque admite la auditabilidad completa de cada experimentación. Sin embargo, el enfoque de ramificación múltiple de la estrategia de desarrollo genera una gran cantidad de datos. Por lo tanto, es necesaria una estrategia de ciclo de vida de los datos. Sugerimos eliminar al menos los datos de cada canalización de aprendizaje automático de la rama de función en cada solicitud de extracción/fusión exitosa. Pero esto depende del modelo operativo y la granularidad de la auditoría que su negocio necesita respaldar. Puede usar un enfoque similar en las canalizaciones de ML de inferencia por lotes
Fase confiable
Después de la separación inicial de preocupaciones entre los científicos de datos, los ingenieros de ML y los ingenieros de datos mediante el uso de varias cuentas, el siguiente paso es promover los modelos producidos desde el registro de modelos a un entorno aislado para realizar inferencias. Sin embargo, debemos garantizar la solidez de los modelos implementados. Por lo tanto, es obligatoria una simulación del modelo desplegado en un entorno espejo de producción, es decir, la preproducción (o puesta en escena).
La siguiente figura ilustra esta arquitectura.
La promoción de una implementación de modelo y punto final en el entorno de preproducción se realiza mediante los eventos de actualización de estado del registro del modelo (o git push en el repositorio de implementación), lo que activa una canalización de CI/CD independiente mediante el uso de eventos de EventBridge. El primer paso de la canalización de CI/CD solicita una aprobación manual por parte del científico de datos líder (y, opcionalmente, el propietario del producto, el analista comercial u otros científicos de datos líderes). El aprobador debe validar los KPI de rendimiento del modelo y el control de calidad del código en el repositorio de implementación. Después de la aprobación, la canalización de CI/CD ejecuta el código de prueba en el repositorio de implementación (prueba de integración, prueba de estrés, prueba de ML). Además del punto final del modelo, el CI/CD también prueba la infraestructura de activación, como EventBridge, las funciones de Lambda o API Gateway. El siguiente diagrama muestra esta arquitectura actualizada.
Después de la ejecución exitosa de las pruebas, la canalización de CI/CD notifica a los nuevos (o los mismos) aprobadores que un modelo está listo para promoverse a producción. En esta etapa, es posible que el analista de negocios desee realizar algunas pruebas de hipótesis estadísticas adicionales sobre los resultados del modelo. Después de la aprobación, los modelos y la infraestructura de activación se implementan en producción. SageMaker admite varios métodos de implementación, como azul/verde, canario y pruebas A/B (consulte más en Barandillas de despliegue). Si la canalización de CI/CD falla, un mecanismo de reversión devuelve el sistema al último estado sólido.
El siguiente diagrama ilustra los pasos principales de la canalización de CI/CD para promover un modelo y la infraestructura para activar el punto final del modelo, como API Gateway, funciones de Lambda y EventBridge.
Integración de lago de datos y MLOps
En este punto, es importante comprender los requisitos de datos por etapa de desarrollo o cuenta, y la forma de incorporar MLOps con un lago de datos centralizado. El siguiente diagrama ilustra las capas de lago de datos y MLOps.
En el lago de datos, los ingenieros de datos son responsables de unir múltiples fuentes de datos y crear los conjuntos de datos correspondientes (por ejemplo, una sola tabla de datos de estructura o una sola carpeta con archivos PDF o imágenes) para los casos de uso de ML mediante la creación de ETL. tuberías definidas por los científicos de datos (durante la fase de análisis de datos de exploración). Esos conjuntos de datos se pueden dividir en datos históricos y datos para inferencia y prueba. Todos los datos están catalogados (por ejemplo, con AWS Glue Data Catalog) y se pueden compartir con otras cuentas y usuarios mediante el uso de Lake Formation como una capa de control de datos (para datos estructurados). Al momento de escribir este artículo, Lake Formation solo es compatible con consultas de Athena, trabajos de AWS Glue y Amazon EMR.
Por otro lado, el entorno de MLOps necesita irrigar las canalizaciones de ML con conjuntos de datos específicos ubicados en cubos locales en desarrollo, preproducción y producción. El entorno de desarrollo es responsable de crear y entrenar los modelos a pedido mediante canalizaciones de SageMaker que extraen datos del lago de datos. Por lo tanto, sugerimos como primer paso de la canalización tener un paso de Athena, donde solo se requiere el muestreo y la consulta de datos, o un paso de Amazon EMR, si se requieren transformaciones más complejas. Como alternativa, puede usar un trabajo de AWS Glue a través de un paso de devolución de llamada, pero todavía no como un paso nativo con SageMaker Pipelines.
Pre-prod y prod son responsables de probar o realizar inferencias en tiempo real y por lotes. En el caso de la inferencia en tiempo real, no es necesario enviar datos a las cuentas de producción y preproducción de MLOps porque la entrada para la inferencia puede aprovechar la carga útil de la solicitud de API Gateway. En el caso de la inferencia por lotes (o datos de entrada de gran tamaño), los conjuntos de datos necesarios, ya sean datos de prueba o datos para la inferencia, deben aterrizar en los depósitos de datos de ML locales (pre-prod o prod). Tiene dos opciones para mover datos a preproducción y producción: ya sea activando Athena o Amazon EMR y extrayendo datos del lago de datos, o enviando datos del lago de datos a esas cuentas de MLOps. La primera opción requiere el desarrollo de mecanismos adicionales en las cuentas de MLOps, por ejemplo, la creación de eventos EventBridge programados (sin saber si los datos en el lago de datos se han actualizado) o la llegada de datos en eventos EventBridge de S3 en el lago de datos (para más detalles, ver Simplificación del acceso entre cuentas con políticas de recursos de Amazon EventBridge). Después de capturar el evento en el lado de MLOps, una consulta de Athena o Amazon EMR pueden obtener datos localmente y desencadenar inferencia asíncrona or transformación por lotes. Esto se puede incluir en una canalización de SageMaker para simplificar. La segunda opción es agregar en el último paso de la canalización de ETL la funcionalidad de enviar datos a los depósitos de MLOps. Sin embargo, este enfoque combina las responsabilidades (el lago de datos desencadena la inferencia) y requiere que Lake Formation brinde acceso al lago de datos para escribir en los cubos de MLOps.
El último paso es mover los resultados de la inferencia de vuelta al lago de datos. Para catalogar los datos y ponerlos a disposición de otros usuarios, los datos deben regresar como una nueva fuente de datos al contenedor de destino.
Fase escalable
Después del desarrollo de la base de MLOps y la producción de extremo a extremo del primer caso de uso de ML, la infraestructura de desarrollo, preproducción, producción y el repositorio, la canalización de CI/CD y la estructura de datos se probaron y finalizaron. . El siguiente paso es incorporar nuevos casos de uso y equipos de ML a la plataforma. Para garantizar la velocidad de obtención de valor, SageMaker le permite crear plantillas de proyectos de SageMaker personalizadas, que puede usar para crear instancias de repositorios de plantillas y canalizaciones de CI/CD automáticamente. Con tales plantillas de proyectos de SageMaker, los científicos de datos principales son responsables de instanciar nuevos proyectos y asignar un equipo dedicado para cada nuevo caso de uso de ML.
El siguiente diagrama ilustra este proceso.
El problema se vuelve más complejo si diferentes equipos de científicos de datos (o varias unidades comerciales que necesitan producir ML) tienen acceso a diferentes datos confidenciales, y varios propietarios de productos son responsables de pagar una factura separada por la capacitación, implementación y ejecución de los modelos. . Por lo tanto, es necesario un conjunto separado de cuentas de MLOps (experimentación, desarrollo, preproducción y producción) por equipo. Para habilitar la creación sencilla de nuevas cuentas MLOps, presentamos otra cuenta, la cuenta de gobierno de análisis avanzado, a la que pueden acceder los miembros de TI y les permite catalogar, crear instancias o desmantelar cuentas MLOps a pedido. Específicamente, esta cuenta aloja repositorios con el código de infraestructura de las cuentas MLOps (VPC, subredes, puntos finales, depósitos, Gestión de identidades y accesos de AWS (IAM) roles y políticas, Formación en la nube de AWS pilas), una Catálogo de servicios de AWS producto para implementar automáticamente las pilas de CloudFormation de la infraestructura en varias cuentas con un solo clic y un Amazon DynamoDB tabla para catalogar metadatos, como qué equipo es responsable de cada conjunto de cuentas. Con esta capacidad, el equipo de TI crea instancias de cuentas MLOps a pedido y asigna los usuarios necesarios, acceso a datos por cuenta y restricciones de seguridad consistentes.
Con base en este escenario, separamos las cuentas en efímeras y duraderas. El lago de datos y las herramientas son cuentas duraderas y desempeñan el papel de un único punto de verdad para los datos y el código fuente, respectivamente. Las cuentas de MLOps son en su mayoría apátridas y se pueden instanciar o dar de baja a pedido, lo que las hace efímeras. Incluso si se da de baja un conjunto de cuentas de MLOps, los usuarios o auditores pueden verificar experimentos y resultados anteriores porque están almacenados en entornos duraderos.
Si desea utilizar la interfaz de usuario de Studio para MLOps, la cuenta de herramientas es parte de la cuenta de desarrollo, según la siguiente figura.
Si el usuario quiere usar la interfaz de usuario de Sagemaker Studio para MLOps, la cuenta de herramientas es parte del desarrollo.
cuenta según la figura anterior. El código fuente de ejemplo de esta fundación MLOPs se puede encontrar en
Base segura de MLOps multicuenta basada en CDK.
Tenga en cuenta que Sagemaker ofrece la capacidad de reemplazar CodeCommit y CodePipeline por otras herramientas de desarrollo de terceros, como GitHub y Jenkins (se pueden encontrar más detalles en Crear proyectos de Amazon SageMaker usando control de fuente de terceros y Jenkins y MLOps de proyectos de Amazon SageMaker Plantilla con GitLab y GitLab Pipelines).
Resumen de personas, operaciones y tecnología
Con el modelo de madurez de MLOps, podemos definir un diseño de arquitectura claro y una hoja de ruta de entrega. Sin embargo, cada persona debe tener una visión clara de las cuentas y los servicios clave de AWS con los que interactuar y las operaciones que realizar. El siguiente diagrama resume esas categorías.
Conclusión
Una base sólida de MLOps, que define claramente la interacción entre múltiples personas y tecnología, puede aumentar la velocidad de obtención de valor y reducir los costos, y permitir que los científicos de datos se centren en las innovaciones. En esta publicación, mostramos cómo construir una base de este tipo en fases, lo que lleva a un modelo de madurez de MLOps fluido para el negocio y la capacidad de admitir múltiples equipos de ciencia de datos y casos de uso de ML en producción. Definimos un modelo operativo que consta de múltiples personas con múltiples habilidades y responsabilidades. Finalmente, compartimos ejemplos de cómo estandarizar el desarrollo de código (repositorios y canalizaciones de CI/CD), el almacenamiento y el intercambio de datos y el aprovisionamiento de infraestructura segura de MLOps para entornos empresariales. Muchos clientes empresariales han adoptado este enfoque y pueden poner en producción sus soluciones de ML en cuestión de días en lugar de meses.
Si tiene algún comentario o pregunta, déjelo en la sección de comentarios.
Sobre la autora
Dra. Sokratis Kartakis es Arquitecto Senior de Soluciones Especialista en Aprendizaje Automático para Amazon Web Services. Sokratis se enfoca en permitir que los clientes empresariales industrialicen sus soluciones de Machine Learning (ML) al explotar los servicios de AWS y dar forma a su modelo operativo, es decir, la base de MLOps y la hoja de ruta de transformación aprovechando las mejores prácticas de desarrollo. Ha dedicado más de 15 años a inventar, diseñar, liderar e implementar soluciones innovadoras de ML e Internet de las cosas (IoT) de nivel de producción de extremo a extremo en los dominios de energía, venta minorista, salud, finanzas/banca, automovilismo, etc. A Sokratis le gusta pasar su tiempo libre con familiares y amigos, o andar en motocicleta.
Georgios Schinas es Arquitecto de Soluciones Especializado en IA/ML en la región EMEA. Tiene su sede en Londres y trabaja en estrecha colaboración con clientes en el Reino Unido e Irlanda. Georgios ayuda a los clientes a diseñar e implementar aplicaciones de aprendizaje automático en producción en AWS con un interés particular en las prácticas de MLOps y permite a los clientes realizar aprendizaje automático a escala. En su tiempo libre, le gusta viajar, cocinar y pasar tiempo con amigos y familiares.
Giuseppe Angelo Porcelli es un Arquitecto Principal de Soluciones Especializado en Aprendizaje Automático para Amazon Web Services. Con varios años de experiencia en ingeniería de software y aprendizaje automático, trabaja con clientes de cualquier tamaño para comprender en profundidad sus necesidades comerciales y técnicas y diseñar soluciones de inteligencia artificial y aprendizaje automático que aprovechen al máximo la nube de AWS y la pila de aprendizaje automático de Amazon. Ha trabajado en proyectos en diferentes dominios, incluidos MLOps, Computer Vision, NLP e involucrando un amplio conjunto de servicios de AWS. En su tiempo libre, a Giuseppe le gusta jugar al fútbol.
Shelbee Eigen Brode es Arquitecto Principal de Soluciones Especializado en Inteligencia Artificial y Aprendizaje Automático en Amazon Web Services (AWS). Ha estado en tecnología durante 24 años, abarcando múltiples industrias, tecnologías y funciones. Actualmente se está enfocando en combinar su experiencia en DevOps y ML en el dominio de MLOps para ayudar a los clientes a entregar y administrar cargas de trabajo de ML a escala. Con más de 35 patentes otorgadas en varios dominios tecnológicos, le apasiona la innovación continua y el uso de datos para impulsar los resultados comerciales. Shelbee es cocreadora e instructora de la especialización en Ciencias prácticas de datos en Coursera. También es codirectora de Women In Big Data (WiBD), capítulo de Denver. En su tiempo libre, le gusta pasar tiempo con su familia, amigos y perros hiperactivos.
- Coinsmart. El mejor intercambio de Bitcoin y criptografía de Europa.
- Platoblockchain. Inteligencia del Metaverso Web3. Conocimiento amplificado. ACCESO LIBRE.
- CriptoHawk. Radar de altcoins. Prueba gratis.
- Fuente: https://aws.amazon.com/blogs/machine-learning/mlops-foundation-roadmap-for-enterprises-with-amazon-sagemaker/
- "
- 100
- a
- capacidad
- Nuestra Empresa
- RESUMEN
- acelerar
- de la máquina
- accesible
- acomodar
- Mi Cuenta
- Lograr
- a través de
- adición
- Adicionales
- Adopción
- avanzado
- en contra
- AI
- algoritmos
- Todos
- permite
- alternativa
- Amazon
- Amazon Web Services
- entre
- cantidad
- análisis
- analista
- Analytics
- Otra
- abejas
- Aplicación
- aplicaciones
- enfoque
- arquitectura
- auditoría
- automatizado
- Automático
- automáticamente
- Automatización
- Hoy Disponibles
- evitar
- AWS
- fondo
- Base
- porque
- a las que has recomendado
- antes
- detrás de
- beneficioso
- MEJOR
- entre
- Big Data
- Bill
- empujón
- build
- Construir la
- incorporado
- negocios
- capacidades
- case
- cases
- centralizado
- desafiante
- Capítulo
- Cheques
- clásico
- Soluciones
- código
- colaboran
- colaboración
- Columna
- combinación
- comentarios
- hacer
- Algunos
- Empresas
- compatible
- completar
- integraciones
- compliance
- computadora
- Conducir
- conductible
- confianza
- Configuración
- conexión
- consistente
- Envase
- Contenedores
- contiene
- control
- proceso de copiar
- Correspondiente
- podría
- Protectora
- Para crear
- creado
- crea
- Creamos
- creación
- En la actualidad
- personalizado
- cliente
- Clientes
- datos
- acceso a los datos
- análisis de los datos
- privacidad de datos
- Ciencia de los datos
- científico de datos
- almacenamiento de datos
- Días
- a dedicados
- entrega
- Demanda
- Denver
- Dependiente
- depende
- desplegar
- desplegado
- Desplegando
- despliegue
- Despliegues
- despliega
- describir
- Diseño
- diseño
- detalles
- Detección
- Dev
- desarrollar
- Desarrollo
- herramientas de desarrollo
- un cambio
- una experiencia diferente
- discutir
- Docker
- dominio
- dominios
- el lado de la transmisión
- impulsados
- durante
- cada una
- Southern Implants
- eliminarlos
- Abrazar
- habilitar
- permite
- permitiendo
- de extremo a extremo
- Punto final
- energía
- Ingeniería
- certificados
- Empresa
- empresas
- Entorno
- etc.
- evaluar
- evaluación
- Evento
- Eventos
- exactamente
- ejemplo
- ejemplos
- excluyendo
- experimento
- exploits
- exploración
- familia
- Feature
- Figura
- Finalmente
- Nombre
- de tus señales
- Focus
- se centra
- enfoque
- siguiendo
- Fútbol
- formación
- encontrado
- Fundación
- Fundamentos
- Marco conceptual
- marcos
- Gratuito
- Desde
- a la fatiga
- funciones
- Además
- puerta
- RGPD
- generado
- Git
- GitHub
- objetivo
- gobierno
- concedido
- Grupo procesos
- Manejo
- hachís
- Salud
- ayuda
- ayudando
- ayuda
- Alta
- histórico
- historia
- organizado
- Cómo
- Como Hacer
- Sin embargo
- HTTPS
- Cientos
- Identidad
- imágenes
- implementar
- implementado
- implementación
- importante
- mejorar
- incluye
- Incluye
- aumente
- industrias
- información
- EN LA MINA
- Innovation
- innovaciones
- originales
- Las opciones de entrada
- ejemplo
- integración
- integraciones
- interacción
- intereses
- Interfaz
- Internet
- Internet de las cosas
- IOT
- Irlanda
- solo
- IT
- Trabajos
- Empleo
- unión
- Une
- Guardar
- Clave
- especialistas
- large
- más reciente
- .
- Lead
- líder
- APRENDE:
- aprendizaje
- Abandonar
- Legal
- aprovechando
- Biblioteca
- carga
- local
- localmente
- Londres
- máquina
- máquina de aprendizaje
- para lograr
- Realizar
- gestionan
- Management
- obligatorio
- manual
- madurez
- mecanismo
- Miembros
- ir
- Metodología
- métodos
- Métrica
- podría
- mente
- mínimo
- espejo
- ML
- modelo
- modelos
- Monitorear
- meses
- más,
- Motorsports
- movimiento
- emocionante
- múltiples
- a saber
- nombres
- nombrando
- necesario
- Next
- normalmente
- funcionar
- funcionamiento
- Operaciones
- optimización
- Optión
- Opciones
- solicite
- para las fiestas.
- reconocida por
- Otro
- EL DESARROLLADOR
- propietario
- los propietarios de
- parte
- particular
- fiesta
- pasión
- Okeanos
- (PDF)
- Personas
- actuación
- realizar
- fase
- plataforma
- Jugar
- jugando
- Por favor
- punto
- políticas
- Preparar
- Director de la escuela
- política de privacidad
- Problema
- tratamiento
- producido
- Producto
- Producción
- productividad
- proyecto
- proyecta
- promover
- promociones y
- proporcionar
- previsto
- proporciona un
- tracción
- calidad
- RE
- en tiempo real
- reducir
- la reducción de
- región
- registrarte
- Relaciones
- confianza
- repositorio
- solicita
- solicitudes
- Requisitos
- Requisitos
- requiere
- la investigación
- Recurso
- Recursos
- responsabilidades
- responsable
- Resultados
- el comercio minorista
- volvemos
- devoluciones
- hoja de ruta
- robustez
- Función
- raíz
- Ejecutar
- correr
- mismo
- escalable
- Escala
- la ampliación
- programada
- Ciencia:
- Científico
- los científicos
- Sdk
- seguro
- EN LINEA
- de serie
- Serie
- de coches
- Servicios
- set
- Configure
- Varios
- Forma
- compartido
- compartir
- Mostrar
- similares
- simulación
- soltero
- Tamaño
- habilidades
- Software
- Ingeniería de software
- a medida
- Soluciones
- RESOLVER
- algo
- código fuente
- especialista
- soluciones y
- específicamente
- velocidad
- pasar
- Gastos
- dividido
- montón
- Etapa
- etapas
- comienzo
- Estado
- estadístico
- statistics
- Estado
- STORAGE
- tienda
- tiendas
- Estrategia
- aerodinamizar
- estrés
- estructurado
- estudio
- exitosos
- SOPORTE
- Soportado
- soportes
- te
- Todas las funciones a su disposición
- equipo
- equipos
- Técnico
- Tecnologías
- Tecnología
- plantillas
- test
- Pruebas
- pruebas
- La
- La Fuente
- el mundo
- por lo tanto
- cosas
- terceros.
- Tres
- equipo
- juntos
- Entrenar
- Formación
- Transformar
- transformaciones
- Viajar
- tipos
- ui
- Uk
- bajo
- entender
- unidades que
- Actualizar
- utilizan el
- usuarios
- utilizar
- validación
- propuesta de
- diversos
- Ver
- visión
- web
- servicios web
- mientras
- dentro de
- sin
- Mujeres
- Actividades:
- trabajado
- flujos de trabajo
- funciona
- mundo
- la escritura
- años
- tú