Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Courbe ROC (Receiver Operating Characteristic)

Apprenez à utiliser la courbe ROC (Receiver Operating Characteristic) pour évaluer les classificateurs binaires. Explorez les compromis entre TPR et FPR avec Ultralytics .

La courbe ROC (Receiver Operating Characteristic) est un outil graphique fondamental utilisé pour évaluer les performances des modèles de classification binaire. Dans le domaine de l' apprentissage automatique (ML), elle permet de visualiser le compromis entre la sensibilité et la spécificité d'un modèle pour tous les seuils de décision possibles. Contrairement aux mesures à valeur unique telles que la précision, qui peuvent être trompeuses si un ensemble de données est déséquilibré, la courbe ROC offre une vue d'ensemble du comportement d'un classificateur lorsque les critères d'identification des instances positives deviennent plus ou moins stricts. Cette visualisation est essentielle pour les ingénieurs qui utilisent des techniques d'apprentissage supervisé afin de déterminer le point de fonctionnement optimal pour leur cas d'utilisation spécifique.

Interprétation des axes et des compromis

Pour comprendre une courbe ROC, il est nécessaire d'examiner les deux paramètres représentés l'un par rapport à l'autre : le taux de vrais positifs (TPR) et le taux de faux positifs (FPR). Le TPR correspond à la proportion de vrais positifs parmi les résultats positifs. Le FPR correspond à la proportion de faux positifs parmi les résultats négatifs.

  • Taux de vrais positifs (TPR) : souvent appelé rappel ou sensibilité, cet indicateur sur l'axe des y mesure la proportion d'observations positives réelles que le modèle a correctement identifiées. Un TPR élevé signifie que le système rate rarement une cible.
  • Taux de faux positifs (FPR) : représenté sur l'axe des x, il correspond au ratio d'instances négatives qui sont incorrectement classées comme positives, également appelé « fausse alerte ».

La courbe illustre une relation dynamique : lorsque vous abaissez le seuil de confiance pour capturer davantage de cas positifs (augmentation du TPR), vous augmentez inévitablement le risque de signaler à tort des cas négatifs (augmentation du FPR). Un classificateur parfait atteindrait le coin supérieur gauche du graphique, indiquant une sensibilité de 100 % et 0 % de fausses alarmes. Un modèle qui fait des suppositions aléatoires apparaîtrait sous la forme d'une ligne diagonale allant du coin inférieur gauche au coin supérieur droit. La performance globale est souvent résumée par l' aire sous la courbe (AUC), où une valeur de 1,0 représente la perfection.

Applications concrètes

La décision concernant l'emplacement du seuil sur une courbe ROC dépend entièrement du coût des erreurs dans une application industrielle spécifique.

  1. Diagnostic médical : dans le domaine de l' IA appliquée aux soins de santé, en particulier pour des tâches telles que la détection de tumeurs dans l'analyse d'images médicales, le coût d'un cas positif manqué (un faux négatif) peut potentiellement mettre la vie en danger. Par conséquent, les praticiens choisissent souvent un seuil qui maximise le TPR, même si cela entraîne un FPR plus élevé, ce qui signifie que davantage de patients en bonne santé pourraient initialement être signalés pour des tests supplémentaires.
  2. Détection des fraudes financières : lorsque l'IA est utilisée dans le domaine financier pour surveiller les transactions par carte de crédit, les banques doivent trouver un équilibre entre sécurité et expérience client. Si le système est trop sensible (TPR élevé ), il peut bloquer des cartes légitimes (FPR élevé), ce qui frustre les utilisateurs. Les analystes utilisent la courbe ROC pour trouver un seuil équilibré qui détecte la plupart des fraudes tout en limitant les fauxpositifs à un minimum acceptable.

Génération de probabilités pour l'analyse ROC

Pour tracer une courbe ROC, vous avez besoin des probabilités de prédiction brutes plutôt que des étiquettes de classe finales. L'exemple suivant utilise le modèle de pointe YOLO26 pour générer des scores de classification.

from ultralytics import YOLO

# Load a pretrained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")

# Run inference to get probability distribution
results = model("bus.jpg")

# Access the probability score for the predicted class
# These continuous scores are required to calculate TPR/FPR at different thresholds
print(f"Top Class Index: {results[0].probs.top1}")
print(f"Confidence Score: {results[0].probs.top1conf:.4f}")

Une fois ces probabilités collectées pour un ensemble de validation, les développeurs peuvent utiliser des bibliothèques telles que Scikit-learn pour calculer les points de la courbe. Pour gérer les ensembles de données et suivre ces métriques au fil du temps, la Ultralytics propose des outils intégrés pour l'évaluation et le déploiement des modèles.

ROC et concepts connexes

Il est important de distinguer la courbe ROC des autres outils d'évaluation :

  • vs. Courbe précision-rappels (PR) : alors que la courbe ROC représente la TPR en fonction de la FPR, la courbe précision-rappels représente la précision en fonction des rappels. La courbe PR est généralement préférée lorsque l'ensemble de données est fortement déséquilibré (par exemple, détection d'anomalies rares), car la courbe ROC peut parfois présenter une vision trop optimiste dans de tels scénarios.
  • vs. Matrice de confusion : une matrice de confusion fournit un aperçu des performances à un seuil spécifique unique. En revanche, la courbe ROC visualise les performances pour tous les seuils possibles, ce qui en fait un outil plus complet pour l' analyse de modélisation prédictive avant qu'une règle de décision finale ne soit établie.

Rejoindre la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant