Recall
Explora la importancia de la exhaustividad en machine learning. Aprende a medir y mejorar la sensibilidad de los modelos Ultralytics YOLO26 para garantizar unas tasas de detección elevadas.
La exhaustividad, también conocida como sensibilidad o tasa de verdaderos positivos, es una métrica de rendimiento fundamental en aprendizaje automático que mide la capacidad de un modelo para identificar todas las instancias relevantes de un conjunto de datos. En el contexto de la detección de objetos o la clasificación, responde específicamente a la pregunta: «De todos los casos positivos reales, ¿cuántos ha encontrado correctamente el modelo?». Lograr una exhaustividad alta es fundamental en situaciones en las que no detectar una instancia positiva —lo que a menudo se denomina falso negativo— tiene consecuencias importantes. A diferencia de la exactitud, que puede resultar engañosa al trabajar con datos desequilibrados, la exhaustividad ofrece una visión centrada en la eficacia del modelo para «capturar» la clase objetivo.
La importancia de una exhaustividad alta#
En muchas aplicaciones de inteligencia artificial, el coste de no detectar un objeto es muy superior al de una falsa alarma. Un modelo optimizado para la exhaustividad minimiza los falsos negativos y garantiza que el sistema abarque lo suficiente para detectar posibles amenazas, anomalías o condiciones críticas. Esto suele implicar un compromiso, ya que aumentar la exhaustividad puede provocar a veces una puntuación de precisión más baja, lo que significa que el modelo podría marcar como positivos más elementos no relevantes. Comprender este equilibrio es clave para desarrollar soluciones sólidas de aprendizaje automático.
Aplicaciones en el mundo real#
La exhaustividad es la métrica principal en muchas soluciones de IA críticas para la seguridad. Estos son dos ejemplos destacados en los que la sensibilidad tiene prioridad:
- Diagnóstico médico: En el análisis de imágenes médicas, como el cribado de radiografías para detectar signos tempranos de una enfermedad, una exhaustividad alta es innegociable. Si se utiliza un sistema de IA en la atención sanitaria para detectar tumores, es mucho mejor que el sistema marque una sombra sospechosa que resulte ser benigna (un falso positivo) que no detectar por completo un tumor maligno. Los médicos confían en estas herramientas para que actúen como una red de seguridad y garanticen que no se pase por alto ningún riesgo potencial para la salud.
- Seguridad y vigilancia: En un sistema de alarma de seguridad, el objetivo principal es detectar todos los intentos de intrusión. Un sistema optimizado para lograr una exhaustividad alta garantiza que, si una persona entra en una zona restringida, se active la alarma. Aunque esto puede provocar falsas alarmas ocasionales causadas por animales, es preferible a que el sistema no detecte a un intruso real. Los modelos de detección de objetos utilizados en estas situaciones se ajustan para garantizar la máxima sensibilidad ante posibles amenazas.
Exhaustividad frente a precisión#
Es fundamental distinguir la exhaustividad de su concepto complementario, la precisión. Mientras que la exhaustividad mide la cantidad de casos relevantes encontrados (completitud), la precisión mide la calidad de las predicciones positivas (exactitud).
- Exhaustividad: Se centra en evitar detecciones omitidas. «¿Hemos encontrado todas las manzanas?»
- Precisión: Se centra en minimizar las falsas alarmas. «¿Son realmente manzanas todas las cosas que hemos identificado como manzanas?»
Estas dos métricas suelen tener una relación inversa, que se visualiza mediante una curva de precisión-exhaustividad. Para evaluar el equilibrio general entre ambas, los desarrolladores suelen consultar la puntuación F1, que es la media armónica de las dos. En conjuntos de datos desequilibrados, consultar la exhaustividad junto con la matriz de confusión ofrece una visión del rendimiento mucho más clara que la exactitud por sí sola.
Medición de la exhaustividad con Ultralytics YOLO#
Al entrenar modelos como el vanguardista YOLO26, la exhaustividad se calcula automáticamente durante la fase de validación. El framework calcula la exhaustividad de cada clase y la precisión media (mAP), lo que ayuda a los desarrolladores a evaluar hasta qué punto el modelo encuentra los objetos.
Puedes validar fácilmente un modelo entrenado y consultar sus métricas de exhaustividad utilizando Python. Este fragmento muestra cómo cargar un modelo y comprobar su rendimiento en un conjunto de datos estándar:
from ultralytics import YOLO
# Load a pretrained YOLO26 model
model = YOLO("yolo26n.pt")
# Validate the model on the COCO8 dataset
# The results object contains metrics like Precision, Recall, and mAP
metrics = model.val(data="coco8.yaml")
# Access and print the mean recall score for box detection
print(f"Mean Recall: {metrics.results_dict['metrics/recall(B)']:.4f}")Este código utiliza la API de Ultralytics para ejecutar la validación. Si la exhaustividad es inferior a la necesaria para tu proyecto, puedes plantearte técnicas como el aumento de datos para crear ejemplos de entrenamiento más variados o el ajuste de hiperparámetros para ajustar la sensibilidad del modelo. El uso de la plataforma Ultralytics también puede agilizar el proceso de gestión de conjuntos de datos y seguimiento de estas métricas en varias ejecuciones de entrenamiento.
Mejora de la exhaustividad del modelo#
Para aumentar la exhaustividad de un modelo, los científicos de datos suelen ajustar el umbral de confianza utilizado durante la inferencia. Reducir el umbral hace que el modelo sea más «optimista» y acepte más predicciones como positivas, lo que aumenta la exhaustividad, aunque puede reducir la precisión. Además, recopilar datos de entrenamiento más diversos ayuda al modelo a aprender a reconocer negativos difíciles e instancias poco visibles. Para tareas complejas, utilizar arquitecturas avanzadas, como bloques Transformer, o explorar métodos de ensamblado también puede mejorar la capacidad del sistema para detectar características sutiles que los modelos más sencillos podrían pasar por alto.









