Découvrez comment l'aire sous la courbe (AUC) mesure les performances d'un modèle. Découvrez son rôle dans la classification, les soins de santé et la finance à l'aide Ultralytics .
L'aire sous la courbe (AUC) est une mesure de performance complète utilisée dans l' apprentissage automatique (ML) pour évaluer le pouvoir discriminant d'un modèle de classification. Plus précisément, elle mesure l'aire bidimensionnelle sous la courbe ROC (Receiver Operating Characteristic), fournissant une valeur scalaire unique comprise entre 0 et 1. Une AUC de 1,0 indique un classificateur parfait, tandis qu'une AUC de 0,5 suggère que le modèle n'est pas plus performant que le hasard. Comme elle agrège les performances pour tous les seuils de classification possibles , l'AUC est particulièrement efficace pour évaluer les capacités de modélisation prédictive dans des scénarios où la frontière de décision optimale est inconnue ou variable.
Pour bien comprendre l'AUC, il faut comprendre la courbe ROC sous-jacente. Ce graphique représente le taux de vrais positifs (rappel) par rapport au taux de faux positifs pour différents seuils. L' AUC quantifie essentiellement la probabilité que le modèle classe une instance positive choisie au hasard plus haut qu'une instance négative choisie au hasard.
L'AUC est une mesure privilégiée dans les secteurs où la prise de décision est cruciale et où les ensembles de données sont déséquilibrés, c'est-à-dire qu'une classe est beaucoup plus rare que l'autre.
Il est essentiel de différencier l'AUC des autres indicateurs d'évaluation des modèles afin de choisir l' outil le mieux adapté à votre projet.
L'exemple suivant montre comment charger un modèle de classification YOLO26 pré-entraîné et exécuter une validation. Alors que les modèles YOLO rapportent principalement une précision top-1 et top-5, le processus de validation génère les données de prédiction nécessaires pour analyser les métriques basées sur les courbes.
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}")
Pour une gestion complète du cycle de vie, y compris l'annotation des ensembles de données et la formation dans le cloud où ces mesures sont visualisées automatiquement, les développeurs peuvent utiliser Ultralytics . Cela simplifie le processus d'interprétation de mesures complexes telles que l'AUC sans calcul manuel.