Model Monitoring
Explora la importancia de la supervisión de modelos en IA. Aprende a realizar un seguimiento del drift de datos y de las métricas de rendimiento, y a utilizar Ultralytics Platform para mantener la robustez de Ultralytics YOLO26.
La monitorización de modelos es la práctica continua de realizar un seguimiento, analizar y evaluar el rendimiento de los modelos de aprendizaje automático (ML) después de haberlos implementado en producción. Mientras que el software tradicional suele funcionar de forma determinista —esperando indefinidamente el mismo resultado para una entrada determinada—, los modelos predictivos se basan en patrones estadísticos que pueden evolucionar con el tiempo. A medida que cambia el entorno real, los datos introducidos en estos modelos pueden variar, lo que provoca una degradación de la precisión o la fiabilidad. La monitorización garantiza que los sistemas de inteligencia artificial (AI) sigan aportando valor al identificar problemas como el desplazamiento de datos o el desplazamiento de concepto antes de que afecten negativamente a los resultados empresariales o a la experiencia del usuario.
La importancia de la supervisión tras la implementación#
En el ciclo de vida de las operaciones de aprendizaje automático (MLOps), la implementación no es la meta final. Un modelo entrenado con datos históricos representa una instantánea del mundo en un momento concreto. Con el tiempo, factores externos —como los cambios estacionales, las variaciones económicas o los nuevos comportamientos de los usuarios— pueden alterar la distribución de los datos subyacentes. Este fenómeno, conocido como desplazamiento de datos, puede provocar «fallos silenciosos», en los que el modelo genera predicciones sin mensajes de error, pero la calidad de esas predicciones queda por debajo de los estándares aceptables.
Una monitorización eficaz proporciona visibilidad sobre estos cambios sutiles. Al establecer líneas base mediante datos de validación y compararlas con los flujos de datos en tiempo real de producción, los equipos de ingeniería pueden detectar anomalías de forma temprana. Este enfoque proactivo permite realizar a tiempo el reentrenamiento de modelos o aplicar actualizaciones, garantizando que sistemas como los vehículos autónomos o los algoritmos de detección de fraude sigan siendo seguros y eficaces.
Métricas clave en la monitorización de modelos#
Para mantener un sistema de ML en buen estado, los profesionales realizan un seguimiento de diversas métricas que, por lo general, se dividen en tres categorías:
- Métricas de fiabilidad del servicio: permiten realizar un seguimiento del estado operativo del motor de inferencia. Entre los indicadores clave se incluyen la latencia de inferencia (cuánto tarda una predicción) y la utilización de los recursos del sistema, como el uso de memoria de la GPU. Herramientas como Prometheus se utilizan habitualmente para recopilar y almacenar estas métricas a nivel de sistema.
- Métricas de calidad de los datos: garantizan que los datos de entrada coincidan con el esquema y la distribución estadística esperados. Por ejemplo, un aumento repentino de los valores ausentes o un cambio en el valor medio de una característica podría indicar que una canalización de datos ascendente no funciona correctamente. Las pruebas estadísticas, como la prueba de Kolmogorov-Smirnov, ayudan a cuantificar la distancia entre las distribuciones de entrenamiento y de producción.
- Métricas de rendimiento: lo ideal es que los equipos monitoricen métricas basadas en la verdad fundamental, como la exactitud, la precisión y la sensibilidad. Sin embargo, en producción, las etiquetas reales suelen retrasarse o no estar disponibles. En esos casos, se utilizan métricas indirectas, como las puntuaciones de confianza de las predicciones o la estabilidad de la distribución de salida, para evaluar el estado del sistema.
Aplicaciones en el mundo real#
La monitorización de modelos es fundamental en diversos sectores en los que las decisiones automatizadas afectan a las operaciones y a la seguridad:
- Visión por ordenador en la fabricación: en la fabricación inteligente, los modelos de inspección visual detectan defectos en las líneas de montaje. Con el tiempo, los objetivos de las cámaras pueden acumular polvo o la iluminación de la fábrica puede cambiar, lo que provoca que el modelo clasifique erróneamente piezas no defectuosas como defectuosas. Monitorizar la tasa de detecciones positivas ayuda a identificar este desplazamiento y permite realizar tareas de mantenimiento o recalibración mediante la Ultralytics Platform.
- Detección de fraude financiero: los bancos utilizan ML para marcar las transacciones sospechosas. Los delincuentes adaptan constantemente sus estrategias para evadir la detección, lo que provoca un desplazamiento de concepto. Al monitorizar la proporción de transacciones marcadas e investigar los comentarios de los revisores humanos, los científicos de datos pueden actualizar rápidamente los modelos para reconocer nuevos patrones de fraude.
Monitorización frente a observabilidad#
Es útil distinguir entre la monitorización y la observabilidad, ya que desempeñan funciones complementarias. La monitorización de modelos suele ser reactiva y se centra en los «desconocidos conocidos», utilizando paneles para alertar a los equipos cuando determinadas métricas superan un umbral (por ejemplo, cuando la exactitud baja del 90 %). La observabilidad profundiza en los «desconocidos desconocidos» y proporciona registros y trazas detallados que permiten a los ingenieros depurar por qué ha fallado una predicción concreta o por qué un modelo presenta sesgo en AI contra un grupo demográfico determinado.
Ejemplo: seguimiento de la confianza de las predicciones#
Una forma sencilla de monitorizar el estado de un modelo de visión por ordenador consiste en realizar un seguimiento de la confianza media de sus predicciones. Una disminución significativa de la confianza podría indicar que el modelo está encontrando datos para los que no se entrenó.
Este es un ejemplo en Python que utiliza YOLO26 para extraer puntuaciones de confianza de un lote de imágenes con fines de monitorización:
import numpy as np
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Run inference on a source (e.g., a video frame or image list)
results = model(["bus.jpg", "zidane.jpg"])
# Extract confidence scores for monitoring
for i, result in enumerate(results):
# Get the confidence scores for all detected objects
confidences = result.boxes.conf.cpu().numpy()
if len(confidences) > 0:
avg_conf = np.mean(confidences)
print(f"Image {i}: Average Detection Confidence: {avg_conf:.3f}")
else:
print(f"Image {i}: No objects detected.")Registrar estas estadísticas periódicamente permite a los equipos visualizar las tendencias a lo largo del tiempo mediante herramientas como Grafana o las funciones de monitorización de Ultralytics Platform, garantizando que los modelos sigan siendo robustos en entornos dinámicos.









