Módulo 16 · Inteligencia artificial en AWS/Lección 106
SageMaker AI y MLOps
Construir, entrenar, desplegar y operar modelos propios: preparación de datos, entrenamiento, endpoints, registro de modelos, pipelines y monitoreo.
Al terminar podrás
- →Preparar datos y características con Data Wrangler y Feature Store
- →Entrenar y ajustar hiperparámetros en SageMaker AI
- →Elegir el tipo de inferencia: tiempo real, serverless, asíncrona o por lotes
- →Automatizar el ciclo con Pipelines, Model Registry y Model Monitor
Cuando ningún servicio listo ni modelo fundacional resuelve tu problema, entrenas un modelo propio. Amazon SageMaker AI es la plataforma de AWS para eso: preparar datos, entrenar, desplegar y operar modelos. El nivel de servicios está en el panorama de IA, y los conceptos de entrenamiento, validación y sobreajuste, en fundamentos de machine learning.
Entrenar un modelo una vez es fácil. Lo difícil es repetirlo cada mes con datos nuevos, saber qué versión está en producción y darte cuenta cuando empieza a fallar. Esa disciplina se llama MLOps: DevOps aplicado al machine learning.
Datos y características
El modelo es tan bueno como sus datos. Las fuentes típicas son S3 (el lago de datos), Redshift (el almacén de datos) y Athena (SQL sobre archivos en S3). Para preparar los datos tienes varias herramientas según el volumen y quién trabaja:
SageMaker Data Wrangler
Prepara datos con una interfaz visual o en lenguaje natural: importar, limpiar, transformar, crear características y revisar la calidad. Hoy vive dentro de SageMaker Canvas. Exporta el flujo a Pipelines o a Feature Store.AWS Glue
ETL sin servidores con Spark para grandes volúmenes. AWS Glue DataBrew agrega una interfaz visual con transformaciones listas, pensada para analistas.Amazon EMR
Clústeres de Spark, Hive o Presto administrados. Encaja si tu equipo ya trabaja con Spark y procesa terabytes.SageMaker Feature Store
Repositorio central de características (features). La tienda en línea (online store) da el valor más reciente con baja latencia para inferencia. La tienda fuera de línea (offline store) guarda el histórico en S3 para entrenar.Amazon SageMaker Ground Truth
Etiquetado de datos con personas (equipos propios, proveedores o Mechanical Turk) y etiquetado automático con aprendizaje activo. Sirve para crear el conjunto de entrenamiento supervisado.Amazon Athena
Consultas SQL sobre S3. Útil para explorar datos y para consultar la tienda fuera de línea de Feature Store.
Feature Store resuelve un problema concreto: el desfase entre entrenamiento e inferencia (training-serving skew). Si calculas «compras de los últimos 30 días» de una forma al entrenar y de otra en producción, el modelo recibe datos que nunca vio. Con un solo repositorio, ambos lados usan la misma definición. Más sobre el lago de datos en lagos de datos y lakehouse.
Entrenar y ajustar
Un trabajo de entrenamiento (training job) lee los datos de S3, levanta instancias, entrena, guarda el modelo en S3 y apaga todo. Pagas solo mientras corre. Tienes cuatro formas de llevar el código:
Para modelos grandes, el entrenamiento distribuido reparte el trabajo. Con paralelismo de datos (data parallel), cada GPU tiene una copia del modelo y procesa una parte de los datos. Con paralelismo de modelo (model parallel), el modelo no cabe en una GPU y se reparte entre varias. Para entrenar modelos fundacionales durante semanas existe SageMaker HyperPod, con clústeres que se recuperan solos de fallas de hardware.
El entrenamiento con Spot administrado (managed Spot training) usa capacidad sobrante de EC2 con un descuento grande. AWS puede interrumpir la instancia, así que el trabajo guarda puntos de control (checkpoints) en S3 y continúa desde ahí. Sirve para entrenamientos que toleran esperar.
Los hiperparámetros son los ajustes que eliges antes de entrenar: tasa de aprendizaje, profundidad del árbol, número de épocas. El ajuste automático de modelos (automatic model tuning) lanza muchos trabajos con combinaciones distintas y se queda con la que mejor resultado da en una métrica objetivo, como AUC en validación. Las estrategias son bayesiana, aleatoria, cuadrícula (grid) y Hyperband. La parada temprana (early stopping) corta los trabajos que van mal antes de terminar y ahorra cómputo.
Para comparar cientos de corridas, SageMaker AI ofrece MLflow administrado: registras parámetros, métricas y artefactos de cada experimento, comparas en la interfaz de MLflow y registras el mejor modelo. Viene en dos formas: MLflow Apps y servidores de seguimiento (tracking servers).
Desplegar: elegir el tipo de inferencia
La decisión depende de tres preguntas: ¿alguien espera la respuesta?, ¿el tráfico es constante o intermitente? y ¿qué tan grande es cada solicitud?
| Criterio | Tiempo real | Serverless | Asíncrona | Batch transform |
|---|---|---|---|---|
| Para qué | Respuestas en milisegundos con tráfico sostenido | Tráfico intermitente o impredecible | Solicitudes grandes o lentas que se encolan | Procesar un conjunto completo sin endpoint |
| Carga por solicitud | Hasta 25 MB | Hasta 4 MB | Hasta 1 GB | Conjuntos de GB |
| Tiempo de proceso | 60 s (8 min con respuesta en streaming) | Hasta 60 s | Hasta 1 hora | Días si hace falta |
| Infraestructura | Instancias que eliges, siempre encendidas | AWS administra; sin GPU; arranque en frío | Instancias; puede escalar a cero | Instancias que se apagan al terminar |
| Ejemplo | Detectar fraude al pagar | Herramienta interna usada pocas veces al día | Analizar videos o documentos largos | Calificar a todos los clientes cada noche |
Otras piezas del despliegue que aparecen en los exámenes:
- Endpoints multimodelo (multi-model endpoints): muchos modelos del mismo tipo comparten un contenedor y se cargan desde S3 cuando se piden. Encaja con un modelo por cliente o por ciudad.
- Endpoints multicontenedor (multi-container endpoints): contenedores distintos en el mismo endpoint, que puedes llamar uno por uno o en serie como canalización de inferencia.
- Endpoints dentro de una VPC: el modelo corre en tus subredes privadas, con security groups, y habla con S3 por un VPC endpoint. El aislamiento de red (network isolation) impide que el contenedor salga a internet. Repasa la ciudad VPC.
- Auto scaling: una política de seguimiento de objetivo sobre, por ejemplo, invocaciones por instancia agrega o quita instancias. Es el mismo principio de Auto Scaling.
MLOps: la línea de producción
- 1
SageMaker Pipelines orquesta el flujo
Cada paso es código versionado: procesar datos, entrenar, evaluar, una condición («¿la AUC supera 0,85?») y registrar. Se ejecuta igual cada vez, a mano, por horario o por un evento. - 2
Model Registry guarda las versiones
Cada modelo entra a un grupo con número de versión, métricas y linaje. Su estado de aprobación es PendingManualApproval, Approved o Rejected. Solo lo aprobado llega a producción. - 3
CI/CD despliega lo aprobado
El cambio de estado a Approved emite un evento en EventBridge que dispara AWS CodePipeline. El pipeline despliega primero en preproducción y después en producción. - 4
Se prueba con tráfico real sin arriesgar
Una prueba en sombra (shadow test) manda una copia del tráfico al modelo nuevo y descarta su respuesta. Las variantes de producción (production variants) reparten el tráfico por peso para un A/B. Las barreras de despliegue (deployment guardrails) cambian el tráfico de a poco y revierten con una alarma de CloudWatch. - 5
Se vigila en producción
Se capturan entradas y salidas del endpoint y se comparan contra una línea base del entrenamiento. Si hay deriva, salta una alarma y el pipeline reentrena.
SageMaker Model Monitor vigila cuatro cosas: calidad de los datos (data quality), calidad del modelo cuando llegan las etiquetas reales (model quality), deriva del sesgo (bias drift) y deriva de la atribución de características (feature attribution drift). SageMaker Clarify mide el sesgo antes y después del entrenamiento y explica las predicciones con valores SHAP: cuánto empujó cada característica la decisión. SageMaker Model Cards documentan el uso previsto, los riesgos y los resultados de evaluación de cada modelo. Cómo elegir métricas está en evaluar modelos e IA generativa, y el sesgo, en IA responsable.
Atajos y entornos
- SageMaker JumpStart: catálogo de modelos preentrenados y soluciones que despliegas o ajustas con pocos clics, en tu cuenta. Útil cuando necesitas más control que en Bedrock. Compáralo en personalizar modelos.
- SageMaker Canvas: ML sin código para analistas. Prepara datos, entrena con AutoML y predice desde una interfaz visual.
- SageMaker Unified Studio: el entorno de la nueva generación de Amazon SageMaker, que junta datos, analítica e IA en un solo lugar. SageMaker AI sigue existiendo como servicio propio y también se usa desde ahí.
El ciclo de despliegue continuo es el mismo que en aplicaciones: revísalo en despliegue continuo.
Quiz
Pon a prueba lo que aprendiste
0 de 5 correctas · 5 sin responder
1.Un banco recibe solicitudes de análisis de documentos de hasta 300 MB que tardan unos 15 minutos cada una. El tráfico llega por rachas y quiere no pagar instancias cuando no hay trabajo. ¿Qué opción de inferencia usa?
2.El modelo de recomendaciones calcula «visitas de los últimos 7 días» con SQL al entrenar, pero la aplicación lo calcula distinto en producción. Las predicciones son malas aunque la validación fue buena. ¿Qué lo evita?
3.Un equipo quiere que ningún modelo llegue a producción sin que un revisor lo apruebe, y que el despliegue arranque solo después de la aprobación. ¿Qué combinación usa?
4.Una empresa entrena cada semana un modelo que tarda 10 horas. No hay prisa por el resultado y quiere bajar el costo de cómputo. ¿Qué hace?
5.Antes de reemplazar el modelo de precios, el equipo quiere ver cómo respondería la versión nueva con tráfico real, sin que ningún cliente reciba sus respuestas. ¿Qué usa?