Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Volver al glosario de Ultralytics

Area Under the Curve (AUC)

AUC convierte una curva ROC en una puntuación de 0 a 1: la probabilidad de que un clasificador sitúe un positivo aleatorio por encima de un negativo aleatorio. ROC AUC frente a PR AUC, con código.

El área bajo la curva (AUC) es una métrica que resume la capacidad de un clasificador binario para separar dos clases en todos los umbrales de decisión posibles. En aprendizaje automático, AUC casi siempre significa el área bajo la curva característica operativa del receptor (ROC), también denominada ROC AUC o AUROC. Su valor equivale a la probabilidad de que el modelo puntúe más alto un ejemplo positivo elegido al azar que uno negativo elegido al azar. Un AUC de 1,0 significa que todos los positivos superan a todos los negativos; 0,5 significa que la clasificación no es mejor que el azar, y los valores inferiores a 0,5 indican que está invertida. Como solo depende del orden de las puntuaciones, el AUC evalúa un modelo antes de que nadie elija un umbral, lo que lo convierte en una métrica estándar para los modelos de diagnóstico médico, la evaluación crediticia y la detección de fraude.

Cómo se calcula el AUC#

La curva ROC representa la tasa de verdaderos positivos, es decir, el recall, frente a la tasa de falsos positivos, la proporción de negativos marcados por error, cuando el umbral de decisión recorre los valores desde la puntuación más alta hasta la más baja. Un umbral superior a todas las puntuaciones no marca nada y se sitúa en (0, 0); un umbral inferior a todas las puntuaciones lo marca todo y se sitúa en (1, 1). El AUC es el área bajo la línea que conecta todos los puntos intermedios, que normalmente se calcula mediante la regla del trapecio.

El mismo valor se obtiene contando pares. Al comparar cada positivo con cada negativo y asignar a cada par una puntuación de 1 si el positivo ocupa una posición más alta, 0,5 si hay empate y 0 en caso contrario, se obtiene exactamente el ROC AUC. Los estadísticos conocen esta cantidad como el estadístico U de Mann-Whitney normalizado, y los investigadores médicos, como el estadístico de concordancia o estadístico c. Los equipos de riesgo crediticio suelen indicar en su lugar el coeficiente de Gini, que equivale a 2 × AUC − 1.

La interpretación por pares explica las principales propiedades del AUC. Cualquier transformación que mantenga el orden de las puntuaciones, como elevar al cuadrado las probabilidades o aplicar escalado de temperatura a los logits de un clasificador binario, deja el AUC sin cambios. Por eso, un modelo puede tener un AUC excelente y probabilidades mal calibradas. La calibración necesita una métrica aparte, como la puntuación de Brier.

ROC AUC y PR AUC con datos desequilibrados#

ROC AUC no depende de la proporción entre clases, porque la tasa de verdaderos positivos se calcula solo sobre los positivos y la tasa de falsos positivos, solo sobre los negativos. Esta propiedad se convierte en una desventaja cuando los positivos son poco frecuentes. Si hay 1 positivo por cada 100, una tasa de falsos positivos del 5 % genera unas cinco falsas alarmas por cada positivo real, pero apenas altera la curva ROC. El área bajo la curva precisión-recall (PR AUC), que suele resumirse como precisión media (AP), representa la precisión frente al recall y muestra directamente esas falsas alarmas, por lo que resulta más informativa que la curva ROC con datos desequilibrados. El siguiente script de scikit-learn puntúa un modelo de las dos formas:

from sklearn.datasets import make_classification
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import average_precision_score, roc_auc_score
from sklearn.model_selection import train_test_split

# Imbalanced binary problem: 1 positive per 100 samples
X, y = make_classification(n_samples=20_000, weights=[0.99], flip_y=0, random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5, stratify=y, random_state=0)

# Score the test set with a simple classifier
model = LogisticRegression(max_iter=1000).fit(X_train, y_train)
scores = model.predict_proba(X_test)[:, 1]

# The same scores summarized by the areas under two different curves
print(f"Positives in test set: {y_test.sum()} of {len(y_test)}")
print(f"ROC AUC: {roc_auc_score(y_test, scores):.3f}")
print(f"PR AUC (average precision): {average_precision_score(y_test, scores):.3f}")

Con 100 positivos entre 10 000 muestras de prueba, el modelo alcanza un ROC AUC de 0,911, pero una precisión media de solo 0,462. Los dos valores también tienen líneas de base distintas: una clasificación aleatoria obtiene un ROC AUC de 0,5 independientemente del equilibrio entre clases, mientras que su precisión media equivale a la tasa de positivos, que aquí es 0,01.

AUC multiclase y detección de objetos#

ROC AUC se define para dos clases. Para más clases, la función roc_auc_score de scikit-learn calcula la media de los AUC uno contra el resto, en los que cada clase se compara con todas las demás, o de los AUC uno contra uno de cada par de clases, con una media macro o ponderada por prevalencia.

La detección de objetos no puede usar curvas ROC, porque los negativos son todas las ubicaciones de caja que no contienen objetos, un conjunto prácticamente ilimitado sin una tasa de falsos positivos significativa. Las métricas de detección usan, en su lugar, las áreas bajo las curvas precisión-recall. La validación de YOLO26 en Ultralytics calcula la precisión media de cada clase como el área bajo su curva precisión-recall envolvente, muestreada en 101 puntos de recall, como en la evaluación de COCO, y promedia esas áreas para obtener la precisión media (mAP) en umbrales de IoU de 0,50 a 0,95.

  • Precisión: Mide las predicciones correctas en un único umbral y puede parecer excelente con datos desequilibrados aunque no detecte ningún positivo. El AUC mide la clasificación en todos los umbrales.
  • Puntuación F1: Combina precisión y recall en un único umbral, por lo que puntúa un solo punto de funcionamiento, mientras que el AUC los resume todos.
  • Matriz de confusión: Cuenta los verdaderos y falsos positivos y negativos en un único umbral. Cada punto ROC resume una matriz de confusión como un par de tasas.
  • Precisión media: Área bajo la curva precisión-recall, el resumen habitual cuando los positivos son poco frecuentes y el principal componente de mAP.
  • AUC parcial: Área en un intervalo limitado de falsos positivos, como de 0 a 0,1; se usa cuando solo son aceptables tasas bajas de falsas alarmas, por ejemplo, en programas de cribado a gran escala donde cada falsa alarma activa una prueba de seguimiento.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático