AI-901: cómo dominar conceptos de visión por computador con Foundry
Voy a enseñar la competencia de visión por computador relevante para el examen AI-901: identificar y comprender modelos de clasificación de imágenes y de detección de objetos, y cómo se integran en soluciones con Microsoft Foundry. Esta competencia es importante tanto para responder a las áreas teóricas del examen como para concebir soluciones prácticas que automaticen el análisis de imágenes en la empresa.
Lo que necesitas saber
Visión por computador es el área de la IA que permite a las máquinas interpretar imágenes y vídeo. Las dos tareas fundamentales son:
- Clasificación de imágenes: asignar una etiqueta (clase) a una imagen completa — por ejemplo, indicar si en una fotografía hay un gato o un perro.
- Detección de objetos: identificar y localizar múltiples objetos en una imagen, normalmente devolviendo cajas delimitadoras (bounding boxes) y clases — por ejemplo, detectar coches en una imagen de carretera e indicar su posición.
Ejemplo práctico: en un almacén quieres clasificar una imagen como "caja dañada" o "caja íntegra" (clasificación de imágenes). En una cámara de seguridad quieres detectar personas y equipos para control de seguridad (detección de objetos).
Cómo funciona (flujo conceptual)
El flujo típico para usar visión por computador en una solución con Foundry implica varias etapas:
- Recogida de imágenes y etiquetado (labeling).
- Elección de modelo: modelos preentrenados (transfer learning) vs entrenar desde cero.
- Entrenamiento / fine-tuning del modelo con un conjunto de datos etiquetado.
- Deploy del modelo e integración en la aplicación (inferencia en batch o en tiempo real).
- Monitorización y reentrenamiento continuo.
En Microsoft Foundry (parte del ecosistema Fabric/Foundry), típicamente usarás un servicio o componente que permita:
- Cargar conjuntos de datos de imágenes (almacenados en OneLake o en un contenedor soportado).
- Usar pipelines de entrenamiento y evaluación con modelos de visión (p. ej., ViT, Faster R-CNN, YOLO o modelos especializados proporcionados por el Foundry).
- Gestionar versiones del modelo y efectuar deploy a endpoints de inferencia.
En la práctica: paso a paso para un mini-lab
Aquí tienes un flujo práctico simplificado para entrenar un modelo de detección de objetos con Foundry. No describo la interfaz exacta del producto (puede cambiar), pero explico los pasos y comandos conceptuales.
1) Preparar el conjunto de datos
# Estrutura típica
/images/
img001.jpg
img002.jpg
/annotations/
img001.json # bounding boxes e classes no formato COCO ou Pascal VOC
img002.json
Asegúrate de que las anotaciones siguen un formato estándar (COCO es muy común) para facilitar el entrenamiento con frameworks que el Foundry soporta.
2) Importar a OneLake / Foundry
Carga las imágenes y las anotaciones en el área de datos del Foundry. Marca el conjunto de datos con metadatos: tipo (images), formato de las anotaciones (COCO), clases presentes.
3) Elegir modelo y configuración de entrenamiento
# Exemplo conceptual de parâmetros
model: faster_rcnn_resnet50
input_size: 800
batch_size: 8
epochs: 30
learning_rate: 0.001
augmentation: [flip, color_jitter]
Usa transfer learning si tienes pocos ejemplos: preserva partes del modelo preentrenado y haz fine-tuning en las últimas capas.
4) Entrenar y validar
Ejecuta el job de entrenamiento en el Foundry. Monitoriza métricas como mAP (mean Average Precision) para detección de objetos y accuracy / F1 para clasificación. Valida con un conjunto separado de imágenes no vistas.
5) Deploy e inferencia
Tras evaluar, crea un endpoint de inferencia. Decide entre inferencia en batch (p. ej., analizar imágenes almacenadas semanalmente) o en tiempo real (cámara con streaming).
# Exemplo conceptual de chamada de inferência (pseudo)
POST /predict
{
"image": "base64-encoded-image"
}
# resposta:
{
"predictions": [
{"class": "person", "score": 0.92, "bbox": [x,y,w,h]},
{"class": "helmet", "score": 0.88, "bbox": [x,y,w,h]}
]
}
6) Monitorización y mejora continua
Registra métricas de precisión y latencia en el endpoint. Periódicamente recoge nuevos casos mal clasificados y reentrena el modelo con más datos etiquetados.
Errores comunes
- Subestimar la calidad de las anotaciones: bounding boxes imprecisas o clases inconsistentes degradan fuertemente el rendimiento.
- Ignorar desequilibrios de clases: muchas imágenes de una clase y pocas de otra conducen a modelos sesgados — usa técnicas de augmentación o remuestreo.
- No evaluar latencia vs precisión: un modelo muy pesado puede ser preciso pero inviable para inferencia en tiempo real.
Cómo practicar
Para preparar el examen y consolidar esta competencia:
- Realiza el Practice Assessment OFICIAL de Microsoft para AI-901 (es gratuito) — te ayuda a evaluar tu conocimiento sobre los temas medidos.
- Lee la study guide oficial de Microsoft para AI-901 (también gratuita) donde están descritas las skills measured y recursos recomendados.
- Practica en un entorno de laboratorio: importa un pequeño conjunto de datos (p. ej., un subconjunto de COCO o Pascal VOC), entrena un modelo de detección de objetos y haz deploy de un endpoint de inferencia. Si tienes acceso a Foundry/Fabric, sigue allí el flujo de importación, entrenamiento y deploy.
En resumen
- Visión por computador incluye clasificación de imágenes y detección de objetos — cada una sirve finalidades distintas.
- En un flujo práctico: recogida/etiquetado → entrenamiento (transfer learning cuando sea posible) → deploy → monitorización.
- La calidad de las anotaciones, el equilibrio de clases y los requisitos de latencia son cruciales para el éxito.
- Usa el Practice Assessment oficial y la study guide de Microsoft (gratuitos) y practica con un mini-lab en Foundry para consolidar conocimientos.