Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Perte focale

Découvrez comment Focal Loss s'attaque au déséquilibre des classes dans la détection d'objets - en concentrant la formation sur des exemples difficiles pour améliorer la précision sur des ensembles de données déséquilibrés.

La perte focale est une fonction objective spécialisée principalement utilisée dans les tâches de vision par ordinateur pour relever le défi du déséquilibre extrême des classes pendant l'entraînement du modèle. Elle est particulièrement utile dans les scénarios de détection d'objets où le nombre d'exemples d'arrière-plan (échantillons négatifs) dépasse largement celui des objets d'intérêt (échantillons positifs). En ajustant dynamiquement la pénalité attribuée à chaque échantillon, la perte focale réduit efficacement le poids des exemples « faciles » , ceux que le modèle peut déjà classify un haut degré de confiance, et oblige le processus d'optimisation à se concentrer sur les exemples « difficiles » qui sont difficiles à classify. Cette approche ciblée empêche le grand nombre de négatifs faciles de submerger le signal d'entraînement, améliorant ainsi la précision du modèle sur les objets rares mais critiques .

Résoudre le problème du déséquilibre entre les classes

Dans de nombreuses applications d'apprentissage profond (DL), en particulier les détecteurs d'objets en une seule étape, le processus d'apprentissage consiste à évaluer des milliers d'emplacements candidats dans une image. La majorité de ces emplacements ne contiennent aucun objet et sont facilement identifiables comme arrière-plan. Les fonctions standard telles que la perte de cross-entropie traitent toutes les erreurs de classification de manière égale. Par conséquent, l'erreur accumulée à partir de milliers d'échantillons d'arrière-plan faciles peut noyer le signal provenant des quelques échantillons positifs difficiles, ce qui conduit à un modèle biaisé en faveur de la classe majoritaire.

La perte focale modifie le calcul standard de la perte en introduisant un paramètre de focalisation, généralement désigné par le symbole gamma ($\gamma$). À mesure que la probabilité de la classe correcte augmente (ce qui signifie que l'exemple est « facile »), le facteur de modulation réduit la contribution à la perte à près de zéro. À l'inverse, pour les exemples mal classés ou incertains (cas « difficiles »), la perte reste importante. Ce mécanisme garantit que l' algorithme d'optimisation met à jour les pondérations du modèle en fonction des exemples qui nécessitent réellement une amélioration, plutôt que de simplement valider ce que le modèle sait déjà.

Applications concrètes

La capacité à traiter des ensembles de données déséquilibrés fait de Focal Loss une pierre angulaire des solutions d'IA modernes dans les domaines où la sécurité est essentielle et où une grande précision est requise.

  • Diagnostic médical : dans l' analyse d'images médicales, l'identification des pathologies pose souvent un problème comparable à celui de « l'aiguille dans une botte de foin ». Par exemple, lors de la détection de petites lésions dans un scanner, les tissus sains représentent 99 % de l'image. Une fonction de perte standard pourrait atteindre une grande précision en supposant simplement que chaque pixel est « sain ». Grâce à la mise en œuvre de la fonction Focal Loss, les modèles utilisés dans l' IA dans le domaine de la santé peuvent ignorer les tissus sains abondants et concentrer l'apprentissage sur les caractéristiques rares et subtiles des tumeurs ou des fractures, améliorant ainsi considérablement le rappel pour les détections qui sauvent des vies.
  • Conduite autonome : les systèmes qui équipent les véhicules autonomes doivent detect , les cyclistes et les débris sur fond de routes, de bâtiments et de ciel. L'arrière-plan est facile à apprendre, mais les petits obstacles éloignés sont difficiles à détecter. Focal Loss permet au système de perception de donner la priorité à cesdetect , garantissant ainsi que le véhicule ne manque pas les dangers critiques, même lorsqu'ils n'occupent qu'une infime partie du champ visuel . Cela est essentiel pour une détection fiable des piétons et la sécurité globale.

Mise en œuvre avec Ultralytics

Le ultralytics La bibliothèque comprend des implémentations optimisées de fonctions de perte pour prendre en charge l'entraînement de modèles de pointe tels que YOLO26. Alors que la formation de haut niveau est automatisée via le Plate-forme Ultralytics, les développeurs peuvent accéder à des composants de perte spécifiques pour les pipelines personnalisés.

L'exemple suivant montre comment initialiser la perte focale et calculer l'erreur entre les scores de prédiction et les étiquettes cibles à l'aide de la fonction ultralytics ensemble d'utilitaires.

import torch
from ultralytics.utils.loss import FocalLoss

# Initialize Focal Loss with a standard gamma value
# Gamma=1.5 aggressively down-weights easy examples
criterion = FocalLoss(gamma=1.5)

# Example: Predictions (logits) and binary Ground Truth labels
predictions = torch.tensor([[0.8], [-1.5], [0.1]], requires_grad=True)
targets = torch.tensor([[1.0], [0.0], [1.0]])

# Calculate the loss
loss = criterion(predictions, targets)
print(f"Computed Focal Loss: {loss.item():.4f}")

Distinction par rapport aux concepts apparentés

Comprendre comment la perte focale s'inscrit dans le paysage plus large de la mesure des erreurs est utile pour choisir la bonne stratégie de formation.

  • Perte focale vs perte d'entropie croisée : La perte d'entropie croisée est la métrique fondamentale pour la classification qui pénalise les prédictions basées sur l'erreur logarithmique. La perte focale est strictement une extension de l'entropie croisée. Si le paramètre de focalisation est réglé sur zéro, la perte focale revient mathématiquement à l'entropie croisée standard. La principale différence réside dans la capacité de la perte focale à réduire le poids des négatifs faciles.
  • Perte focale vs IoU : alors que la perte focale est conçue pour la classification (déterminer ce qu' est un objet), l'intersection sur l'union (IoU) est utilisée pour la localisation (déterminer où se trouve un objet). Les détecteurs modernes tels que YOLO11 et YOLO26 utilisent une fonction de perte composite qui combine la perte focale (ou ses variantes telles que la perte varifocale) pour les probabilités de classe et la perte IoU pour la régression des boîtes englobantes.
  • Perte focale vs OHEM : L'Online Hard Example Mining (OHEM) est une stratégie plus ancienne qui écarte complètement les exemples faciles et ne s'entraîne que sur les plus difficiles d'un lot. La perte focale est généralement préférée aujourd'hui car elle utilise un facteur d'échelle continu plutôt qu'une coupure nette, fournissant un signal d'entraînement plus fluide et plus stable à partir de toutes les données d'entraînement.

Rejoindre la communauté Ultralytics

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

Rejoindre maintenant