Amazon MLS-C01: Deep Learning y Visión por Computadora — Guía de estudio
Forma parte de la AWS Machine Learning Specialty MLS-C01 — Guía de estudio. Practica con respuestas verificadas en el centro de exámenes de Amazon, o realiza tests cronometrados en ExamRoll.io.
Arquitecturas, aprendizaje por transferencia y selección de modelos
Los backbones convolucionales como la familia ResNet e Inception siguen siendo los pilares para la visión artificial: ResNet (50/101) ofrece un aprendizaje residual estable para jerarquías de características profundas, mientras que los módulos Inception proporcionan una agregación de características a múltiples escalas que ayuda con objetos de tamaños variados. Para compromisos modernos, EfficientNet y MobileNet priorizan la relación entre FLOPs y precisión, lo que los convierte en opciones sólidas para dispositivos móviles y de borde (edge). En la práctica en AWS, comience con pesos preentrenados de ImageNet (disponibles en TorchVision, TensorFlow Hub o a través de los contenedores de entrenamiento de SageMaker) y aplique el aprendizaje por transferencia reemplazando el cabezal de clasificación, utilizando una tasa de aprendizaje mucho más baja para las capas del backbone y una tasa más alta para los cabezales recién inicializados. Congele las capas iniciales para conjuntos de datos pequeños y descongélelas progresivamente por etapas para evitar el olvido catastrófico. Criterios de decisión: elija backbones más pesados (ResNet101, Inception-ResNet) para conjuntos de datos grandes y endpoints tolerantes a la latencia (instancias ml.p3 o ml.p4), y backbones ligeros (MobileNetV3, EfficientNet-lite) al desplegar a través de SageMaker Neo o AWS IoT Greengrass en dispositivos con recursos limitados. Una trampa común es realizar el ajuste fino (fine-tuning) con la misma tasa de aprendizaje alta que se usa para entrenar desde cero; en su lugar, adopte tasas de aprendizaje discriminativas, use decaimiento de peso (weight decay) y valide la transferibilidad monitoreando las activaciones de las capas en el espacio de características y la pérdida de validación en busca de señales de sobreajuste (overfitting).
Prácticas de entrenamiento, aumento de datos y consideraciones sobre el conjunto de datos y el etiquetado
Los datos etiquetados de alta calidad son la base para modelos de visión fiables. Utilice Amazon SageMaker Ground Truth para construir flujos de trabajo de etiquetado con cuadros delimitadores (bounding boxes), polígonos o máscaras semánticas, y aplique fuerzas de trabajo privadas, restricciones de IAM y cifrado S3 con KMS para cumplir con los controles de acceso a los datos. Mitigue el ruido en las etiquetas con rondas de consenso y revisión, y use el aprendizaje activo para priorizar ejemplos ambiguos o poco comunes. Para conjuntos de datos pequeños o desbalanceados, emplee un aumento de datos agresivo y apropiado para la tarea: transformaciones fotométricas, recortes aleatorios, rotaciones, cutout, mixup o aumentos de mosaico para detección; use muestreo balanceado por clase, focal loss o entropía cruzada ponderada por clase para abordar un desbalance de clases severo. Divida los datos para evitar la fuga de información (leakage): para dependencias a nivel de usuario o tienda, realice divisiones agrupadas o basadas en el tiempo en lugar de divisiones aleatorias ingenuas; una trampa frecuente es filtrar marcas de tiempo futuras o múltiples imágenes del mismo objeto entre los conjuntos de entrenamiento, validación y prueba. Para datos médicos o regulados, habilite el aislamiento de red para los trabajos de entrenamiento de SageMaker, cifre S3 con KMS, restrinja el acceso a los notebooks a través de endpoints de VPC y rote las credenciales usando Secrets Manager. Realice un seguimiento de los experimentos y las métricas con SageMaker Experiments para correlacionar las elecciones de aumento de datos, tasas de aprendizaje y regularización.
Detección y segmentación de objetos: arquitecturas, métricas y errores comunes
Las opciones para la detección de objetos incluyen detectores de una etapa como YOLO y RetinaNet para un rendimiento en tiempo real, y detectores de dos etapas como Faster R-CNN para una mayor precisión y localización de objetos pequeños. Añada Feature Pyramid Networks (FPN) para mejorar la detección a múltiples escalas; use Mask R-CNN o DeepLabv3+ para tareas de segmentación de instancias y semántica. Los anchors, los umbrales de IoU y la supresión de no máximos (NMS) afectan en gran medida los resultados: ajuste los tamaños y las relaciones de aspecto de los anchors a las escalas de los objetos del conjunto de datos y elija un IoU apropiado para la asignación de positivos/negativos. La evaluación debe usar mAP en diferentes niveles de IoU (AP50, AP75), además de curvas de recall y precisión por clase; depender únicamente de la exactitud (accuracy) oculta los fallos de localización. En los flujos de trabajo de AWS, use el entrenamiento de SageMaker con contenedores de PyTorch/TensorFlow para arquitecturas personalizadas, almacene los conjuntos de datos en S3 con archivos de manifiesto para Ground Truth y valide con trabajos de SageMaker Processing. Algunos errores comunes son usar tamaños de entrada demasiado grandes para la inferencia (lo que aumenta la latencia) o ignorar el desbalance de clases en el recuento de objetos; optimice aplicando un aumento de datos específico por clase, usando pérdidas ponderadas o un entrenamiento en dos etapas donde un detector genérico es seguido por refinadores por clase. Para producción, exporte los modelos a ONNX o TorchScript y valide las salidas exportadas contra las salidas del entrenamiento para evitar discrepancias de operadores.
Optimización, despliegue y monitoreo de la inferencia para GPU y el borde (edge)
Optimizar la inferencia requiere perfilar todo el pipeline, no solo el cómputo en la GPU. Una baja utilización de la GPU a menudo se debe a un preprocesamiento limitado por la CPU, tamaños de lote pequeños, latencia de endpoints síncronos o esperas de E/S. Perfile con SageMaker Debugger y métricas de CloudWatch para identificar cuellos de botella y luego aplique soluciones: aumente el tamaño del lote o use inferencia asíncrona; convierta los modelos a TorchScript/ONNX y habilite las optimizaciones de TensorRT en instancias respaldadas por NVIDIA; use precisión mixta (AMP/bfloat16) en instancias p4/p3; compile con SageMaker Neo para el hardware de destino o despliegue Elastic Inference para adjuntar aceleración fraccionada a instancias de CPU para un rendimiento moderado. Para el despliegue en el borde (edge), use SageMaker Edge Manager o AWS IoT Greengrass con modelos compilados por Neo, aplique cuantización y poda (pruning) para reducir el tamaño del modelo y ejecute el procesamiento por lotes en el dispositivo cuando sea posible. Configure endpoints multimodelo de SageMaker o concurrencia aprovisionada para manejar los arranques en frío (cold starts) y use políticas de escalado automático basadas en la utilización de memoria de la GPU y la latencia de las solicitudes. Además, habilite Model Monitor para detectar la deriva de los datos de entrada (input drift) y SageMaker Model Registry para una promoción controlada de modelos; las trampas comunes incluyen compilar modelos con operaciones no soportadas por Neo u olvidar aprovisionar roles de IAM y VPC endpoints para el acceso privado a S3, lo que causa fallos en el despliegue.
Problema Práctico: Escenario de Caso de Uso
Escenario: QuickServe Corp opera un sistema de punto de venta on-premise y utiliza SageMaker para el entrenamiento e inferencia de modelos; las imágenes de las cámaras de las tiendas se almacenan en un bucket privado de S3 con cifrado KMS. Quieren un pipeline de producción para detectar la longitud de las colas en las cajas registradoras y desplegar un modelo ligero en dispositivos de borde (edge) para alertas en tiempo real.
Desafío: Construir y desplegar un modelo de conteo de colas preciso y de baja latencia que respete la seguridad de los datos (S3 privado, KMS) y se ejecute en hardware de borde con recursos limitados, al tiempo que permite un reentrenamiento seguro con nuevos datos etiquetados.
Enfoque Recomendado:
- Entrenar un detector usando un backbone preentrenado MobileNetV3 (en el contenedor SageMaker PyTorch) ajustado (fine-tuned) con cuadros delimitadores (bounding boxes) etiquetados con Ground Truth y almacenados en S3 cifrado con KMS; usar divisiones agrupadas por tienda para evitar la fuga de datos (leakage).
- Usar aumento de datos (augmentation) (recorte aleatorio, volteo horizontal, variación de brillo) y focal loss para manejar el desequilibrio de clases entre fotogramas con y sin cola; validar con AP50 y recall por clase.
- Exportar el modelo a TorchScript/ONNX, compilarlo con SageMaker Neo apuntando al dispositivo de borde y desplegarlo a través de AWS IoT Greengrass o SageMaker Edge Manager con firma de modelo y un rol de IAM que permita solo los artefactos de S3 necesarios.
- Monitorear el rendimiento con cargas por lotes periódicas a S3, ejecutar trabajos de SageMaker Processing para la detección de deriva (drift) y reentrenar en SageMaker usando conjuntos de datos versionados en S3 y Model Registry con un despliegue controlado hacia el borde.
Justificación: Este enfoque utiliza aprendizaje por transferencia (transfer learning) eficiente y compilación específica para el dispositivo para cumplir con las restricciones de latencia y tamaño, impone la seguridad a través de KMS e IAM, e implementa un ciclo de reentrenamiento monitoreado para mantener la precisión mientras se previene la fuga de datos.
← Modelado — Supervisado y No Supervisado (ML Clásico) · Todos los dominios · Procesamiento de Lenguaje Natural y Habla →
Practica estas preguntas → · Práctica cronometrada en ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Aprueba tu examen →