F1-Score
Découvre comment le score F1 équilibre la précision et le rappel pour évaluer les modèles d’apprentissage automatique. Apprends à optimiser les performances d’Ultralytics YOLO26 pour une meilleure précision.
Le score F1 est une métrique de performance essentielle en apprentissage automatique qui combine la précision et le rappel en une seule moyenne harmonique. Il est particulièrement utile pour évaluer les modèles de classification lorsque le jeu de données est déséquilibré ou lorsque les faux positifs et les faux négatifs ont des coûts différents. Contrairement à l’exactitude classique, qui peut être trompeuse lorsqu’une classe domine le jeu de données, le score F1 offre une vision plus équilibrée de la capacité d’un modèle à identifier correctement les instances pertinentes tout en minimisant les erreurs. En pénalisant les valeurs extrêmes, il garantit qu’un score élevé n’est atteint que lorsque la précision et le rappel sont tous deux raisonnablement élevés, ce qui en fait une métrique incontournable dans des domaines allant du diagnostic médical à la recherche d’informations.
Pourquoi le score F1 est important en apprentissage automatique#
Dans de nombreux scénarios réels, connaître simplement le pourcentage de prédictions correctes (exactitude) ne suffit pas. Par exemple, dans la détection d’anomalies, les cas normaux sont beaucoup plus nombreux que les anomalies. Un modèle qui prédit « normal » pour chaque entrée pourrait atteindre une exactitude de 99 %, mais serait inutile pour détecter les problèmes réels. Le score F1 répond à ce problème en équilibrant deux métriques concurrentes :
- Précision : elle mesure la qualité des prédictions positives. Elle répond à la question suivante : « Parmi toutes les instances que le modèle a étiquetées comme positives, combien étaient effectivement positives ? »
- Rappel : il mesure la quantité de prédictions positives. Il répond à la question suivante : « Parmi toutes les instances réellement positives, combien le modèle a-t-il correctement identifiées ? »
Comme il existe souvent un compromis — l’amélioration de la précision tend à réduire le rappel, et inversement — le score F1 agit comme une métrique unifiée permettant de trouver un point d’équilibre optimal. Cela est essentiel lors de l’ajustement des modèles à l’aide de l’optimisation des hyperparamètres, afin de garantir des performances robustes dans des conditions variées.
Applications concrètes#
L’utilité du score F1 s’étend à divers secteurs où le coût des erreurs est important.
- Diagnostic médical : dans l’IA dans le domaine de la santé, notamment pour des tâches telles que la détection de tumeurs, un faux négatif (ne pas détecter une tumeur) peut mettre la vie en danger, tandis qu’un faux positif (signaler un tissu bénin) provoque une anxiété inutile. Le score F1 aide les chercheurs à optimiser des modèles comme YOLO26 afin de garantir que le système est suffisamment sensible pour détecter les maladies sans submerger les médecins de fausses alertes.
- Recherche d’informations et moteurs de recherche : les moteurs de recherche et les systèmes de classification de documents utilisent le score F1 pour évaluer la pertinence. Les utilisateurs veulent voir tous les documents pertinents (rappel élevé), mais ne veulent pas parcourir une multitude de résultats sans rapport (précision élevée). Un score F1 élevé indique que le moteur récupère efficacement les bonnes informations sans encombrement.
- Filtrage des spams : les services de messagerie utilisent la classification de texte pour trier les spams. Le système doit détecter les e-mails indésirables (rappel), mais surtout ne doit pas classer les e-mails professionnels importants comme indésirables (précision). Le score F1 constitue la principale référence pour ces filtres.
Calculer le score F1 avec Ultralytics#
Les frameworks modernes de vision par ordinateur simplifient le calcul de ces métriques. Lors de l’entraînement de modèles de détection d’objets, le score F1 est calculé automatiquement pendant la phase de validation. La plateforme Ultralytics visualise ces métriques dans des graphiques en temps réel, ce qui permet de voir la courbe du score F1 en fonction de différents seuils de confiance.
Voici comment accéder aux métriques de validation, notamment aux composantes du score F1, à l’aide de l’API Python :
from ultralytics import YOLO
# Load a pre-trained YOLO26 model
model = YOLO("yolo26n.pt")
# Validate the model on a dataset (metrics are computed automatically)
# This returns a validator object containing precision, recall, and mAP
metrics = model.val(data="coco8.yaml")
# Print the Mean Average Precision (mAP50-95), which correlates with F1 performance
print(f"mAP50-95: {metrics.box.map}")
# Access precision and recall arrays to manually inspect the balance
print(f"Precision: {metrics.box.p}")
print(f"Recall: {metrics.box.r}")Score F1 et métriques associées#
Comprendre en quoi le score F1 diffère des autres critères d’évaluation est essentiel pour sélectionner l’outil adapté à ton projet.
- Différence par rapport à l’exactitude : l’exactitude traite toutes les erreurs de la même manière. Le score F1 est supérieur pour les jeux de données déséquilibrés, car il se concentre sur les performances de la classe positive (la classe minoritaire d’intérêt).
- Relation avec mAP : la précision moyenne (mAP) est la référence pour comparer les modèles de détection d’objets sur l’ensemble des seuils de confiance. Cependant, le score F1 est souvent utilisé pour déterminer le seuil de confiance optimal pour le déploiement. Tu peux choisir le seuil correspondant au maximum de la courbe F1 pour déployer ton application.
- Matrice de confusion : la matrice de confusion fournit les comptages bruts (vrais positifs, faux positifs, etc.) à partir desquels le score F1 est calculé. Alors que la matrice fournit des détails précis, le score F1 offre une statistique récapitulative unique pour une comparaison rapide.
- ROC-AUC : l’aire sous la courbe (AUC) mesure la séparabilité sur l’ensemble des seuils. Le score F1 est généralement préféré à ROC-AUC lorsque la distribution des classes est fortement déséquilibrée (par exemple, pour la détection de fraudes où les fraudes sont rares).
Améliorer ton score F1#
Si ton modèle souffre d’un score F1 faible, plusieurs stratégies peuvent aider. L’augmentation des données peut accroître la variété des exemples positifs, ce qui aide le modèle à mieux généraliser. Le recours à l’apprentissage par transfert à partir de modèles de base robustes permet au réseau d’exploiter des caractéristiques préapprises. De plus, l’ajustement du seuil de confiance pendant l’inférence peut modifier manuellement l’équilibre entre la précision et le rappel afin de maximiser le score F1 pour ton cas d’utilisation spécifique.








