Area Under the Curve (AUC)
Aprende cómo el área bajo la curva (AUC) mide el rendimiento de los modelos. Descubre su función en clasificación, sanidad y finanzas mediante Ultralytics YOLO26.
El área bajo la curva (AUC) es una métrica de rendimiento integral utilizada en el aprendizaje automático (ML) para evaluar la capacidad discriminativa de un modelo de clasificación. En concreto, mide el área bidimensional situada bajo la curva característica operativa del receptor (ROC), proporcionando un único valor escalar entre 0 y 1. Un AUC de 1,0 indica un clasificador perfecto, mientras que un AUC de 0,5 sugiere que el modelo no rinde mejor que el azar. Como agrega el rendimiento en todos los umbrales de clasificación posibles, el AUC resulta especialmente eficaz para evaluar las capacidades de modelado predictivo en situaciones en las que el límite de decisión óptimo es desconocido o variable.
La relación entre ROC y AUC#
Para comprender plenamente el AUC, es necesario entender la curva ROC subyacente. Este gráfico representa la tasa de verdaderos positivos (Recall) frente a la tasa de falsos positivos en distintos ajustes del umbral. El AUC cuantifica, en esencia, la probabilidad de que el modelo asigne una clasificación superior a una instancia positiva elegida al azar que a una negativa elegida al azar.
- Separabilidad: el AUC mide hasta qué punto el modelo distingue entre clases (por ejemplo, «perro» y «gato»). Una mayor separabilidad implica mejores predicciones.
- Independencia del umbral: a diferencia de la puntuación F1, que depende de un punto de corte específico, el AUC ofrece una visión general de la calidad del modelo.
- Independencia de la escala: mide hasta qué punto se ordenan correctamente las predicciones, en lugar de sus valores de probabilidad absolutos.
Aplicaciones en el mundo real#
El AUC es una métrica preferente en sectores que toman decisiones críticas y trabajan con conjuntos de datos desequilibrados, en los que una clase es considerablemente más infrecuente que la otra.
-
Diagnóstico médico: en el ámbito de la IA en sanidad, los modelos se entrenan para identificar patologías mediante el análisis de imágenes médicas. Por ejemplo, un modelo que detecta tumores raros debe priorizar la sensibilidad. Un AUC alto garantiza que el sistema asigne de forma fiable puntuaciones de riesgo más elevadas a pacientes reales que a personas sanas, reduciendo los falsos negativos peligrosos.
-
Detección de fraude financiero: las instituciones financieras utilizan la IA en finanzas para detectar transacciones fraudulentas. Como las transacciones legítimas superan ampliamente en número a las fraudulentas, un modelo podría alcanzar una exactitud del 99 % simplemente clasificándolo todo como «legítimo». El AUC evita esto al evaluar hasta qué punto el modelo separa los intentos de fraude reales del comportamiento normal, independientemente de la distribución de las clases.
Diferencias entre el AUC y las métricas relacionadas#
Es fundamental diferenciar el AUC de otros análisis de evaluación de modelos para elegir la herramienta adecuada para tu proyecto.
- AUC frente a exactitud: la exactitud es simplemente la proporción de predicciones correctas respecto al total de predicciones. En conjuntos de datos muy sesgados, la exactitud puede ser engañosamente alta. El AUC es robusto frente al desequilibrio de clases y proporciona una evaluación más realista del rendimiento del clasificador.
- AUC frente a precisión y exhaustividad: aunque ROC-AUC es el estándar para resultados equilibrados, el área bajo la curva de precisión y exhaustividad (AUPRC) suele ser preferible cuando la clase «positiva» es extremadamente infrecuente y los falsos positivos son una preocupación importante.
- AUC frente a mAP: en tareas de detección de objetos que utilizan modelos como YOLO26, la métrica estándar es la precisión media promedio (mAP). Aunque conceptualmente son similares —el mAP calcula el área bajo la curva de precisión y exhaustividad en distintos umbrales de intersección sobre unión (IoU)—, AUC se refiere estrictamente a la curva ROC en la clasificación binaria o multiclase.
Ejemplo de código#
El siguiente ejemplo muestra cómo cargar un modelo de clasificación YOLO26 preentrenado y ejecutar su validación. Aunque los modelos YOLO informan principalmente de la exactitud top-1 y top-5, el proceso de validación genera los datos de predicción necesarios para analizar métricas basadas en curvas.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Validate the model on a standard dataset (e.g., imagenet10)
# This generates precision, recall, and accuracy metrics
results = model.val(data="imagenet10")
# Access top-1 accuracy, a key point on the ROC curve
print(f"Top-1 Accuracy: {results.top1:.4f}")
print(f"Top-5 Accuracy: {results.top5:.4f}")Para una gestión integral del ciclo de vida, que incluya la anotación de conjuntos de datos y el entrenamiento en la nube, donde estas métricas se visualizan automáticamente, los desarrolladores pueden utilizar Ultralytics Platform. Esto simplifica la interpretación de métricas complejas como el AUC sin necesidad de realizar cálculos manuales.









