Table of Contents

Les fonctions de perte servent de base mathématique pour orienter les modèles de vision informatique vers des prédictions précises. Elles quantifient la différence entre ce qu'un modèle prédit et la réalité réelle du sol, créant un signal mesurable que les algorithmes d'optimisation utilisent pour améliorer itérativement les performances du modèle. La fonction de perte détermine la vitesse de convergence et la précision du modèle DL et a un impact crucial sur la qualité de l'algorithme et la performance du modèle.

Quelles sont les fonctions de perte dans la vision de l'ordinateur?

Dans le domaine de l'apprentissage automatique, la fonction perte (ou fonction coût) se réfère à la différence entre la sortie de vérité au sol et la sortie prévue par le modèle. Au cours du processus d'entraînement, les réseaux neuraux ajustent leurs paramètres internes – poids et biais – pour minimiser cette différence. Le processus d'optimisation utilise généralement la descente en gradient ou ses variantes, qui calculent le gradient de la fonction perte par rapport à chaque paramètre et les mettent à jour dans la direction qui réduit la perte.

Ils servent à quantifier la différence entre les sorties prévues et les étiquettes de vérité au sol, à guider le processus d'optimisation pour minimiser les erreurs. Le choix de la fonction perte influence directement la façon dont le modèle apprend les modèles à partir de données, qui le présente comme étant prioritaire, et finalement comment il fonctionne sur des exemples invisibles.

Par conséquent, pendant l'entraînement, le but est de trouver de tels paramètres du modèle (poids et biais) qui minimisent la perte et maximisent le taux de prédictions correctes. Cependant, obtenir une perte zéro pendant l'entraînement ne garantit pas d'excellentes performances réelles. Bien que réaliser une faible perte pendant l'entraînement est souhaitable, la perte égale à 0 ne garantit pas une grande performance du modèle dans un contexte réel.

L'évolution des fonctions de perte dans l'apprentissage profond

Les progrès réalisés dans le domaine de l'apprentissage profond ont été alimentés par les progrès réalisés dans les architectures modèles et les techniques d'optimisation. Les modèles d'apprentissage profond, principalement basés sur les réseaux neuronaux, ont été fondés sur des fonctions de perte simples.

Dans le domaine de l'apprentissage approfondi, la perte de l'entropie a augmenté en popularité, en gérant efficacement la classification multiclasses en mesurant la dissimilarité entre les probabilités prévues et les classes réelles. Cette évolution reflète la compréhension croissante du domaine de la façon dont différentes formulations mathématiques peuvent répondre à des défis d'apprentissage spécifiques, du déséquilibre des classes à la précision des limites.

Récemment, la conception de fonctions de perte pour les méthodes d'apprentissage profond est devenue l'un des problèmes les plus difficiles. Les fonctions de perte modernes doivent traiter des scénarios de plus en plus complexes, y compris les données multimodales, les déséquilibres de classe graves et les contraintes du monde réel qui n'étaient pas prises en compte dans les systèmes d'apprentissage automatique antérieurs.

Fonctions de perte fondamentale pour la vision informatique

Erreur carrée moyenne (ESM) pour les tâches de régression

L'erreur carrée moyenne est l'une des fonctions de perte les plus fondamentales utilisées dans les tâches de régression où les prédicteurs et les variables cibles sont continus. Au cours de la dernière décennie, les chercheurs ont conçu de nombreuses fonctions de perte pour l'apprentissage automatique, comme l'erreur carrée moyenne et l'erreur absolue moyenne.

La formulation mathématique est simple : résumer la différence carrée entre chaque valeur prédite et réelle, puis diviser par le nombre d'observations. Cette simplicité rend MSE facile à comprendre et à mettre en œuvre, ce qui contribue à son adoption généralisée dans les problèmes de régression.

Bien qu'elle soit commune et facile à comprendre, la fonction de perte MSE ne convient pas à tous les cas d'utilisation pour les raisons suivantes : Elle est sensible aux valeurs aberrantes : les points de données qui se distinguent grandement du reste peuvent fortement influencer la droite de régression, ce qui entraîne une diminution des performances du modèle.

Pertes entropies croisées aux fins de classement

La perte croisée d'entropie est une alternative largement utilisée pour le MSE. Elle est souvent utilisée pour les tâches de classification, où la sortie peut être représentée comme valeur de probabilité entre 0 et 1. La valeur de l'entropie croisée mesure la différence entre deux distributions de probabilités : la distribution prévue du modèle et la distribution réelle des étiquettes.

Par exemple, si l'animal dans l'image est un chat (cat = 1, chien = 0, poisson = 0), et que le modèle prédit la distribution comme chat = 0,1, chien = 0,5 et poisson = 0,4, la perte d'entropie croisée sera assez élevée. Cette valeur de perte élevée indique à l'algorithme d'optimisation que les prédictions du modèle sont loin d'être correctes, ce qui entraîne des mises à jour significatives des paramètres.

La perte de l'entropie croisée binaire est un cas particulier de perte de l'entropie croisée utilisée. Elle peut être utilisée pour toute tâche de classification binaire et, en principe, pour la segmentation binaire. L'entropie croisée binaire est particulièrement utile pour traiter des problèmes de deux classes, comme déterminer si une image contient un objet spécifique ou non.

Perte de charnière pour les machines vectorielles de soutien

La perte de charnière est principalement associée aux machines à vectorielle de soutien (SVM) et est conçue pour la classification de la marge maximale. Contrairement à l'entropie croisée, qui continue de pénaliser les prédictions même lorsqu'elles sont correctes mais pas assez confiantes, la perte de charnière ne pénalise que les prédictions qui tombent du mauvais côté de la limite de décision ou sont trop proches.

Cette fonction de perte encourage le modèle à non seulement classer correctement les exemples, mais aussi à maintenir une marge de séparation entre les classes. La propriété de maximisation de la marge rend la perte de charnière particulièrement efficace pour les problèmes de classification binaire où une séparation claire entre les classes est souhaitée.

Fonctions spécialisées de perte pour les tâches de vision informatique

Perte focale pour la détection d'objets

Nous découvrons que le déséquilibre extrême entre les classes de premier plan et de fond rencontré lors de l'entraînement de détecteurs denses est la cause centrale. Nous proposons de corriger ce déséquilibre de classe en reformant la perte standard d'entropie croisée de sorte qu'elle décroît la perte attribuée à des exemples bien classés.

Notre nouvelle Focal Loss se concentre sur une série d'exemples difficiles et empêche le grand nombre de négatifs faciles d'écraser le détecteur pendant l'entraînement. Dans la détection d'objets, la grande majorité des emplacements candidats ne contiennent pas d'objets (négatifs faciles), tandis qu'une petite fraction seulement contient des objets réels.

Pour y remédier, nous proposons la perte focale qui applique un terme modulant à la perte entropie croisée afin de concentrer l'apprentissage sur les exemples difficiles et de réduire le poids des nombreux négatifs faciles. Le facteur modulant réduit la contribution des exemples faciles, permettant au modèle de concentrer les ressources informatiques sur l'apprentissage à partir de cas difficiles qui nécessitent plus d'attention.

Pour compenser le déséquilibre de classe, la fonction de perte focale multiplie la fonction d'entropie croisée avec un facteur modulateur qui augmente la sensibilité du réseau aux observations mal classées.Cette approche s'est avérée très efficace, avec une formation avec la perte focale, RetinaNet est capable de correspondre à la vitesse des détecteurs à un stade précédents tout en dépassant la précision de tous les détecteurs à deux stades de pointe existants.

Pour les négatifs, cependant, l'augmentation de γ concentre fortement la perte sur des exemples difficiles, en concentrant presque toute l'attention sur les négatifs faciles. Le paramètre de focalisation gamma (γ) contrôle combien la perte fonction de bas poids des exemples faciles, avec des valeurs plus élevées fournissant une plus grande attention sur les exemples difficiles.

Perte de coefficient de dés pour la segmentation d'image

La perte de coefficient de Die, également connue sous le nom de perte F1, est spécialement conçue pour les tâches de segmentation d'image où le but est de prédire un masque binaire indiquant quels pixels appartiennent à des objets d'intérêt. Contrairement à l'entropie croisée pixel-wise, la perte de Die optimise directement le chevauchement entre les masques de segmentation prédits et ceux de la vérité au sol.

Cette fonction de perte est particulièrement utile dans l'imagerie médicale et d'autres applications de segmentation où le déséquilibre de classe est grave, par exemple, lorsque l'objet d'intérêt ne occupe qu'une petite partie de l'image. La perte de dés traite la segmentation dans son ensemble plutôt que d'évaluer indépendamment les pixels individuels, ce qui rend le déséquilibre de classe plus robuste.

Le coefficient de dés mesure la similitude entre deux ensembles et varie de 0 (aucun chevauchement) à 1 (recoupement parfait). En minimisant 1 moins le coefficient de dés, la fonction de perte encourage le modèle à maximiser le chevauchement entre les prédictions et la vérité au sol. Cette formulation traite naturellement les ensembles de données déséquilibrés mieux que les pertes par pixel parce qu'elle se concentre sur la région d'intérêt plutôt que sur le fond.

Pertes de l'IoU pour la régression de la boîte de culasse

La perte d'intersection sur l'Union (IoU) répond à un défi fondamental dans la détection des objets : optimiser les prédictions de boîtes limites. Les pertes traditionnelles de L1 ou L2 traitent les coordonnées de boîtes limites indépendamment, ne saisissant pas la relation géométrique entre les boîtes de vérité prédites et au sol. La perte d'iode optimise directement le chevauchement entre les boîtes, ce qui est exactement ce que nous nous soucions dans les tâches de détection.

L'IoU mesure le rapport entre la zone d'intersection et la zone d'union de deux boîtes de délimitation. Une IoU plus élevée indique un meilleur alignement entre les boîtes de vérité prédites et les boîtes de vérité au sol. En utilisant l'IoU comme fonction de perte, le modèle apprend à prédire des boîtes qui maximisent le chevauchement avec la vérité au sol, ce qui conduit à une localisation plus précise.

Plusieurs variantes de perte d'IoU ont été développées pour répondre à des limitations spécifiques. L'IoU généralisé (GIoU) gère des cas où les boîtes ne se chevauchent pas du tout, fournissant un gradient significatif même lorsque l'IoU est zéro. Distance IoU (DIoU) et l'IoU complet (CIoU) affiner la perte en considérant la distance entre les centres de boîtes et le rapport d'aspect, conduisant à une convergence plus rapide et une meilleure performance dans les tâches de détection d'objets.

Perte contrastive et triple pour l'apprentissage métrique

Les pertes contrastives et triplets sont conçues pour les tâches d'apprentissage métrique où le but est d'apprendre les ancrages qui placent des exemples similaires étroitement et des exemples différents très éloignés dans l'espace d'intégration. Ces fonctions de perte sont fondamentales pour la reconnaissance des visages, la récupération d'images et les applications de réidentification des personnes.

La perte contrastive fonctionne sur des paires d'exemples, tirant des paires similaires plus près tout en poussant les paires dissemblables à l'écart. Il encourage le modèle à apprendre des représentations où la distance entre les emboîtements reflète la similitude sémantique entre les entrées. Cette approche est particulièrement efficace lorsque vous avez étiqueté des paires indiquant si les exemples sont similaires ou différents.

La perte triplet étend ce concept en travaillant avec des triplets d'exemples : une ancre, un exemple positif (similaire à l'ancre) et un exemple négatif (similaire à l'ancre). La perte encourage le modèle à placer l'exemple positif plus près de l'ancre que l'exemple négatif par au moins une marge spécifiée. Cette formulation fournit des signaux d'entraînement plus riches que la perte contrastée par paire et conduit souvent à des ancrages mieux appris.

Des variantes modernes comme la perte de la paire N et la perte du centre s'améliorent encore sur ces fondations en considérant simultanément plusieurs négatifs ou en apprenant explicitement les centres de classe dans l'espace d'intégration. Ces pertes d'apprentissage métrique avancées sont devenues des outils essentiels pour les tâches exigeant des jugements de similitude à grain fin.

Pertes perceptives pour la génération d'images

La perte de perception représente un changement de paradigme dans la façon dont nous évaluons les images générées. Au lieu de comparer directement les valeurs de pixels, la perte de perception compare les représentations de fonctions de haut niveau extraites d'un réseau pré-formé, généralement VGG ou ResNet. Cette approche s'harmonise mieux avec la perception humaine, car les humains jugent la qualité d'image en fonction du contenu sémantique et de la structure plutôt que des valeurs de pixels exactes.

Dans les tâches de transfert de style, de super résolution et de traduction image-image, la perte perceptive s'est avérée beaucoup plus efficace que les pertes par pixel comme MSE. Bien que MSE puisse produire des résultats flous qui minimisent les erreurs de niveau pixel, la perte perceptive encourage la génération d'images nettes et visuellement agréables qui préservent des caractéristiques sémantiques importantes.

La perte est calculée en passant à la fois les images générées et les images cibles à travers un réseau pré-formé et en comparant leurs cartes de fonctionnalités à une ou plusieurs couches. Les couches précoces capturent des caractéristiques de bas niveau comme les bords et les textures, tandis que les couches plus profondes capturent du contenu sémantique de haut niveau.

La perte de perception est souvent combinée à la perte de perception dans les réseaux antagonistes générateurs (GAN) pour produire des résultats encore plus réalistes. La composante perceptuelle assure la cohérence sémantique tandis que la composante adverse pousse les images générées vers le multiple d'images naturelles.

Utilisations spécifiques des fonctions de perte

Classement de l'image

Les tâches discriminatoires, telles que la classification d'image, la détection d'objets et la segmentation sémantique, reposent fortement sur les fonctions de perte pour mesurer avec précision la différence entre les étiquettes prévues et la vérité au sol.

Dans les scénarios de classification multiclasses, l'entropie croisée de softmax combine la fonction d'activation de softmax avec la perte de softmax. La fonction softmax convertit les sorties brutes du modèle (logits) en une distribution de probabilités sur les classes, assurant que les prédictions s'additionnent à une.

Pour les ensembles de données présentant un déséquilibre de classe, l'entropie croisée pondérée attribue différents poids à différentes classes, ce qui permet au modèle de prêter davantage attention aux classes sous-représentées. Le lissage des étiquettes est une autre technique qui modifie légèrement la distribution cible pour prévenir les prédictions surconfidentielles et améliorer la généralisation.

Détection d'objets

Détection d'objets. La détection d'objets est une tâche essentielle dans la vision informatique. Elle contient généralement deux sous-tâches principales, c'est-à-dire la classification d'objets et la régression d'objets. Les détecteurs d'objets modernes doivent résoudre simultanément les problèmes de classification (quels objets sont présents) et de localisation (où les objets sont situés), ce qui nécessite des fonctions de perte soigneusement conçues pour chaque composant.

Le problème critique que posent les chercheurs est le déséquilibre extrême entre les exemples positifs et négatifs. De nombreux exemples faciles domineront le gradient, ce qui soulève un autre problème déséquilibré. Ce double déséquilibre, entre exemples positifs et négatifs, et entre exemples faciles et difficiles, rend la détection d'objets particulièrement difficile.

Les détecteurs d'objets de pointe combinent généralement plusieurs fonctions de perte : perte focale ou entropie croisée pour la classification, pertes basées sur l'IoU pour la régression de la boîte de délimitation, et parfois pertes supplémentaires pour les tâches auxiliaires comme la détection de point de touche ou la segmentation d'instance. La perte totale est une somme pondérée de ces composants, avec des poids soigneusement ajustés pour équilibrer les différents objectifs.

Segmentation sémantique

La segmentation sémantique nécessite de prévoir un label de classe pour chaque pixel d'une image, ce qui en fait l'une des tâches de vision informatique les plus intensives par calcul. Le choix de la fonction de perte affecte de façon significative l'efficacité de l'entraînement et la qualité de segmentation finale.

L'entropie croisée par pixel est l'approche de base, en traitant chaque pixel comme un problème de classification indépendant. Cependant, cette approche souffre d'un déséquilibre de classe grave lorsque les objets d'intérêt n'occupent qu'une petite partie de l'image. L'entropie croisée pondérée répond partiellement à cette question en attribuant des poids plus élevés aux classes minoritaires.

La perte de dés et ses variantes sont devenues de plus en plus populaires pour la segmentation parce qu'elles optimisent directement le chevauchement de la région plutôt que les pixels individuels. La perte focale est également largement utilisée pour gérer le déséquilibre entre les pixels de fond faciles et les pixels limites difficiles.

Les pertes de visibilité ciblent spécifiquement la délimitation précise des limites des objets, qui est souvent l'aspect le plus difficile de la segmentation. Ces pertes appliquent des poids plus élevés aux pixels proches des limites ou utilisent des transformations de distance pour coder les relations spatiales entre pixels.

Reconnaissance faciale

Les systèmes de reconnaissance faciale doivent apprendre à intégrer des caractéristiques spécifiques à l'identité tout en étant robustes aux variations de pose, d'éclairage, d'expression et de vieillissement.

La perte de Softmax avec une classification à grande échelle traite chaque identité comme une classe distincte, mais cette approche ne généralise pas bien les nouvelles identités non vues pendant l'entraînement. Les pertes d'apprentissage métrique comme la perte contrastée et la perte triplet s'attaquent à cela en apprenant une métrique de distance dans l'espace d'intégration, permettant la reconnaissance de nouvelles identités par le rapprochement le plus proche.

La perte de centre apprend explicitement un centre pour chaque classe d'identité et pénalise la distance entre les caractéristiques et leurs centres de classe correspondants. Cela favorise la compacité intra-classe tout en maintenant la séparabilité inter-classes. Les pertes à base de marge angulaire comme ArcFace et CosFace améliorent encore la discrimination en introduisant des marges angulaires dans l'espace d'intégration, conduisant à des systèmes de reconnaissance du visage plus robustes.

Génération d'images et transfert de style

Des tâches de création, y compris la production de texte à image, d'image à image et d'audio à image, utilisent des fonctions de perte pour évaluer le réalisme et la qualité des sorties générées, souvent en utilisant des pertes contradictoires ou perceptives pour guider le processus de formation.

La perte d'un adversaire, introduite avec Generative Adversarial Networks (GANs), utilise un réseau de discriminateurs pour distinguer les images réelles et générées. Le générateur apprend à produire des images qui trompent le discriminateur, ce qui conduit à des sorties de plus en plus réalistes.

Pour le transfert de style, une combinaison de perte de contenu et de perte de style est généralement utilisée. La perte de contenu, souvent mise en œuvre comme perte perceptive, garantit que l'image générée préserve le contenu sémantique de l'entrée.

Les modèles modernes de diffusion utilisent des pertes de match de dénigrement, formant le modèle pour inverser un processus de bruit progressif. Cette approche a obtenu des résultats remarquables dans la génération de texte à image, produisant des images diverses et de haute qualité à partir de descriptions textuelles.

Importance de choisir la bonne fonction de perte

Dans les tâches d'apprentissage approfondi, la fonction de perte mesure généralement la précision, la similitude ou la bonté d'ajustement entre la valeur prédite et la vérité au sol. Une fonction de perte soigneusement préparée peut améliorer significativement les performances de formation du réseau neuronal.

La sélection de la fonction de perte adéquate est essentielle, car elle a des répercussions directes sur la convergence des modèles, la généralisation et la performance globale dans diverses applications, de la vision informatique à la prévision de séries chronologiques. Une fonction de perte inappropriée peut entraîner plusieurs problèmes : convergence lente, généralisation insuffisante aux nouvelles données, instabilité pendant la formation ou incapacité à saisir les nuances de la tâche.

Les fonctions de perte dans l'apprentissage profond sont un domaine de recherche typique mais important qui détermine la performance d'un réseau neuronal profond. Le même cadre de CNN profonds avec différentes fonctions de perte peut avoir des résultats de formation différents.Cette observation souligne que les innovations architecturales ne suffisent pas à elles seules – la fonction de perte joue un rôle tout aussi critique dans la détermination de la performance finale du modèle.

Facteurs à prendre en considération pour choisir une fonction de perte

Type de tâche: La nature fondamentale de votre tâche – classification, régression, segmentation ou génération – réduit les fonctions de perte appropriées. Les tâches de classification utilisent généralement des variantes d'entropie croisée, la régression utilise MSE ou MAE, la segmentation bénéficie de la perte de Die ou focale, et la génération emploie des pertes accusatoires ou perceptives.

Caractéristiques des données: Le déséquilibre des classes, les valeurs aberrantes, les niveaux de bruit et la taille des ensembles de données influencent tous la sélection des fonctions de perte.

Architecture du modèle:[ Cependant, dans l'apprentissage profond, les neurones de la dernière couche sont généralement activés par une fonction sigmoïde ou softmax. Ainsi, l'entraînement avec des pertes traditionnelles causerait une efficacité et une précision moindres.

Méthodes d'évaluation:[ Idéalement, votre fonction de perte devrait s'aligner sur la façon dont vous évaluerez les performances du modèle. Si vous vous souciez de l'IoU dans la détection d'objets, l'utilisation de pertes basées sur l'IoU est logique.

Efficacité computationnelle:[ Certaines fonctions de perte sont plus coûteuses en calcul que d'autres. La perte perceptive nécessite un passage vers l'avant par un réseau pré-entraînement supplémentaire, tandis que la perte adversaire nécessite la formation d'un discriminateur.

Stratégies de formation multi-pertes

Certaines de ces méthodes ont utilisé une combinaison de plusieurs fonctions de perte, en particulier pour les modèles de génération d'images. Les systèmes modernes de vision informatique combinent souvent plusieurs fonctions de perte pour tirer parti de forces complémentaires et aborder différents aspects du problème d'apprentissage.

Dans la détection des objets, la perte totale combine généralement la perte de classification, la perte de localisation et parfois des pertes auxiliaires additionnelles. Chaque composant traite d'un aspect différent de la tâche, et leur poids relatif doit être soigneusement équilibré.

Pour la génération d'images, combiner perte adversaire avec perte perceptuelle et perte par pixel crée un problème d'optimisation multi-objectifs. Perte adversaire encourage le réalisme, perte perceptuelle préserve le contenu sémantique, et perte par pixel maintient la similitude structurelle. Le défi consiste à trouver le bon équilibre entre ces objectifs.

Les stratégies de pondération de la perte dynamique permettent d'ajuster automatiquement l'importance relative des différents composants de perte pendant l'entraînement.Ces approches reconnaissent que différents objectifs peuvent être plus ou moins importants à différents stades de l'entraînement, permettant au modèle de se concentrer sur ce qui compte le plus à chaque étape du processus d'apprentissage.

Concepts avancés et développements récents

Fonctions de perte adaptative et apprise

Les recherches récentes ont exploré les fonctions de perte d'apprentissage elles-mêmes plutôt que de les concevoir à la main. Les approches de méta-apprentissage forment une fonction de perte sur une répartition des tâches, lui permettant de généraliser à de nouvelles tâches.

Les fonctions de perte adaptative ajustent automatiquement leur comportement en fonction de la dynamique de l'entraînement. Par exemple, certaines pertes équilibrent automatiquement plusieurs objectifs en surveillant l'amplitude des gradients, en veillant à ce qu'aucun objectif ne domine l'entraînement.

Ces approches apprises et adaptatives sont prometteuses, mais elles apportent aussi une complexité supplémentaire et des frais généraux de calcul. Elles sont particulièrement utiles lorsque vous travaillez avec des tâches ou des domaines nouveaux où les fonctions de perte établies ne sont pas optimales.

Robuste et incertitude

Cet article a également introduit des défis et des frontières avancés de la fonction perte dans le cadre d'un apprentissage profond.k Pour améliorer la stabilité d'un modèle, les chercheurs ont constamment amélioré la robustesse des fonctions perte.

Les fonctions de perte symétrique traitent les erreurs positives et négatives de la même manière, les rendant plus robustes pour l'étiquetage du bruit. Les pertes de bruit-robuste modèlent explicitement le bruit dans le cadre du processus d'apprentissage, permettant au modèle d'apprendre efficacement même si une fraction importante des étiquettes de formation sont incorrectes.

Les pertes connues d'incertitude intègrent l'incertitude du modèle dans l'objectif de formation. Plutôt que de traiter toutes les prévisions de façon égale, ces pertes tiennent compte de la confiance du modèle, ce qui lui permet de se concentrer sur des exemples où il peut faire des prédictions fiables tout en étant prudents au sujet des cas incertains.

Fonctions de perte pour l'apprentissage auto-surveillant

L'apprentissage autosupervisé est devenu un paradigme puissant pour apprendre les représentations visuelles sans étiquettes manuelles. Cette approche nécessite des fonctions de perte spécialisées qui encouragent le modèle à apprendre des caractéristiques utiles à partir de données non marquées.

Les pertes contrastives pour l'apprentissage autosupervisé rassemblent différentes vues augmentées de la même image tout en écartant les vues de différentes images. SimCLR, MoCo, et des cadres similaires utilisent des variantes de perte contrastée pour apprendre des représentations qui sont invariantes aux augmentations de données mais discriminantes entre différentes images.

Les méthodes non contrastives comme BYOL et SimSiam évitent les paires négatives explicites, en utilisant des opérations de prédiction et d'arrêt-gradient pour empêcher l'effondrement de solutions triviales. Ces approches ont obtenu des résultats impressionnants, parfois en appariant ou en dépassant les performances d'apprentissage supervisées sur les tâches en aval.

La modélisation d'images masquées, inspirée de la modélisation de langage masqué dans le NLP, utilise des pertes de reconstruction pour prédire les patchs d'images masqués. Cette approche s'est révélée efficace pour apprendre les représentations visuelles, en particulier lorsqu'elle est combinée avec des transformateurs de vision.

Considérations pratiques de mise en œuvre

Appui au cadre et mise en œuvre

Les cadres populaires tels que PyTorch, TensorFlow/Keras et MATLAB fournissent des fonctionnalités de base comme les graphiques de calcul, la différenciation automatique et les pertes pré-mise en œuvre (p. ex. MSE, entropie croisée) ainsi que des mesures standard comme la précision ou la rappel de précision.

Pour les fonctions de perte personnalisée, ces frameworks fournissent les outils nécessaires pour les mettre en œuvre efficacement. La différenciation automatique gère le calcul du gradient, vous permettant de vous concentrer sur la définition du passage avant de la perte. L'accélération GPU garantit que même les fonctions de perte complexes peuvent être calculées efficacement pendant l'entraînement.

Lors de la mise en œuvre de pertes personnalisées, la stabilité numérique est cruciale. Les opérations comme les logarithmes et les divisions peuvent produire des valeurs infinies ou non définies si elles ne sont pas manipulées avec soin.

Tuning hyperparamétrique

De nombreuses fonctions de perte incluent des hyperparamètres qui impactent significativement la formation. La perte focale a le paramètre de focalisation gamma et le paramètre d'équilibrage alpha. La perte triplet a un paramètre de marge.

La recherche en grille et la recherche aléatoire sont des approches courantes pour l'accordage des hyperparamètres, bien qu'elles puissent être calculables coûteux. L'optimisation bayésienne et d'autres techniques avancées peuvent trouver de bons hyperparamètres plus efficacement.

En commençant par les valeurs rapportées dans la littérature fournit une bonne base de référence, mais les hyperparamètres optimaux dépendent souvent de votre ensemble de données et de votre tâche spécifiques.

Débogue et surveillance

La surveillance des valeurs de perte pendant la formation fournit des indications cruciales sur le processus d'apprentissage. La perte devrait généralement diminuer au fil du temps, bien que le taux et le modèle de diminution varient selon la tâche et la fonction de perte.

Pour les configurations multi-pertes, le suivi de chaque composant permet de repérer les déséquilibres. Si un composant de perte domine, le modèle peut négliger d'autres objectifs.

La visualisation des prévisions et des valeurs de perte fournit des indications qualitatives qui complètent les mesures quantitatives. Pour la segmentation de l'image, la superposition des masques prévus sur les images d'entrée révèle si le modèle est en train d'apprendre des modèles significatifs ou d'exploiter des biais de l'ensemble de données.

Défis et orientations futures

Enfin, nous définissons les grandes orientations futures, prônant des fonctions de perte qui améliorent l'interprétation, l'évolutivité et la généralisation, ce qui nous amène à des modèles d'apprentissage profond plus efficaces et plus résilients.

Manipulation de l'équilibre de classe extrême

Nous avons constaté que de nombreuses fonctions de perte essentielles sont utilisées pour résoudre le problème du déséquilibre. L'idée de perte focale peut effectivement résoudre ce problème, et les pertes récentes de classement peuvent mieux y faire face. Bien que la perte focale et les pertes pondérées aident, le déséquilibre extrême reste difficile, en particulier dans des domaines comme l'imagerie médicale où les anomalies sont rares.

Les futures orientations de recherche comprennent le développement de fonctions de perte qui s'adaptent automatiquement au degré de déséquilibre, combinant plusieurs stratégies pour gérer le déséquilibre, et une meilleure intégration de l'augmentation des données avec la conception de la fonction de perte.

Apprentissage multimodaux et multitâches

Alors que les systèmes de vision informatique traitent de plus en plus de multiples modalités (images, texte, audio) et résolvent simultanément plusieurs tâches connexes, les fonctions de perte doivent évoluer pour gérer ces complexités.

Les pertes modales qui encouragent l'alignement entre les différentes modalités se sont révélées précieuses pour les modèles de langage de vision.Les pertes spécifiques associées aux tâches et les pertes de représentation partagée permettent un apprentissage multitâche efficace.

Interprétabilité et expliquabilité

La compréhension des raisons pour lesquelles une fonction de perte donnée fonctionne bien pour une tâche donnée reste largement empirique. L'élaboration de cadres théoriques qui prédisent quelles fonctions de perte seront efficaces en fonction des caractéristiques de la tâche accélérerait le progrès et réduirait la nature d'essai et d'erreur de la sélection de la fonction de perte.

Les fonctions de perte interprétatives qui permettent de comprendre ce que le modèle est l'apprentissage et pourquoi certains exemples sont difficiles pourraient aider les praticiens à déboguer les modèles et à améliorer le rendement.

Conception automatique de la fonction de perte

Enfin, nous identifions des problèmes ouverts et des orientations prometteuses, y compris l'automatisation de la recherche de perte-fonction et le développement de mesures d'évaluation robustes et interprétables pour des tâches d'apprentissage profond de plus en plus complexes.

La recherche d'architecture neurale a réussi à automatiser la conception de modèles; l'application de techniques similaires à la recherche de fonctions de perte est une étape naturelle. Les défis comprennent la définition de l'espace de recherche des fonctions de perte possibles, l'évaluation efficace des candidats et la garantie que les pertes découvertes se généralisent au-delà des tâches spécifiques utilisées pendant la recherche.

Liste complète des fonctions de perte pour la vision informatique

Pour fournir une référence pratique, voici une catégorisation élargie des fonctions de perte couramment utilisées dans la vision informatique :

Pertes liées à la régression

  • Erreur carrée de moyenne (EMS):[ Perte standard pour la régression, sensible aux valeurs aberrantes
  • Erreur absolue modérée (EAM): Plus robuste que MSE
  • combine MSE et MAE, robustes à aberrants tout en maintenant la douceur
  • Smooth L1 Loss:[ Similaire à la perte Huber, couramment utilisée dans la détection d'objets
  • Log-Cosh Perte:[ Approxiation lissée de l'EAM avec de meilleures propriétés de gradient

Pertes de classement

  • Perte d'entropie : Norme pour le classement en classes multiples
  • Entropie croisée des urines: Pour les tâches de classification binaire
  • Perte focale :[ S'attaque au déséquilibre des classes en se concentrant sur des exemples difficiles
  • Entropie croisée pondérée: Assigne différents poids à différentes classes
  • Label Lissage Perte:[ Prévient les prédictions surconfidentielles
  • Perte de marge maximale pour les MRS

Pertes de segmentation

  • Perte de dés: Optimise le chevauchement entre les masques de vérité prévus et les masques de vérité au sol
  • Tversky Loss:[ Généralisation de la perte de dés avec des pénalités positives/négatives réglables
  • Perte focale Tversky :[ Combine perte focale avec perte Tversky
  • Pertes budgétaires : Souligne une délimitation précise des limites
  • Lovász-Softmax Perte: Optimisation directe de l'IoU pour la segmentation

Pertes de détection d'objets

  • IoU Perte:[ optimise directement le chevauchement de la boîte de délimitation
  • GioU Perte:[ IoU généralisée qui gère les boîtes non-overlaping
  • DioU Perte: Distance IoU considérant la distance médiane
  • Pertes de CIoU: IoU complet, y compris le rapport d'aspect
  • Pertes focales:[ Pour le classement dans la détection d'objets

Pertes d'apprentissage métrique

  • Pertes contrastives:[ Apprend à intégrer des paires d'exemples
  • Perte de trépied:[ Utilise des triplets positifs-négatifs à l'ancre
  • N-Pair Loss:[ Prolonge la perte triplet à plusieurs négatifs
  • Center Loss:[ Apprend les centres de classe dans l'espace d'intégration
  • Perte de la surface de l'arc: Perte angulaire fondée sur la marge pour la reconnaissance du visage
  • Perte de la façade: Perte fondée sur la marge de cosine

Pertes génitales

  • Perte adversaire: Utilisé dans les GAN pour distinguer les images réelles des images générées
  • Perte perçue: Comparer les caractéristiques de haut niveau des réseaux pré-entraînement
  • Perte de style: Capture le style artistique à travers des matrices de Gram
  • Perte totale de variation:[ Encourage la douceur spatiale
  • Perte de reconstruction: Comparaison par pixel pour les encodeurs automatiques
  • PerteSSIM: Indice de similitude structurelle pour la qualité de l'image

Meilleures pratiques pour travailler avec des fonctions de perte

Nous avons proposé deux lignes directrices sur la conception ou la sélection des fonctions de perte. Les chercheurs peuvent utiliser une fonction de perte selon le scénario d'application ou en fonction de ses propriétés. Voici des recommandations pratiques pour utiliser efficacement les fonctions de perte dans les projets de vision informatique:

  1. Démarrer avec les lignes de base établies:Démarrer avec les fonctions de perte standard connues pour bien fonctionner pour votre type de tâche avant d'explorer des options plus exotiques.
  2. Comprendre vos données:[ Analyser les distributions de classes, la prévalence et la qualité des données pour éclairer la sélection des fonctions de perte.
  3. Alignez la perte sur les paramètres d'évaluation :[ Choisissez des pertes qui correspondent à la façon dont vous allez finalement mesurer le succès.
  4. Moniteur de plusieurs mesures:[ Ne comptez pas uniquement sur les valeurs de perte; suivez des mesures spécifiques à la tâche qui reflètent les performances du monde réel.
  5. Expérimenter systématiquement: Lorsque vous essayez différentes pertes, changez une chose à la fois pour comprendre ce qui entraîne des changements de performance.
  6. Évaluer les coûts de calcul :[ Équilibrer les gains de rendement potentiels par rapport au temps de formation et aux besoins en ressources.
  7. Validation sur les données conservées:[ S'assurer que les améliorations apportées à la perte de formation se traduisent par une meilleure généralisation.
  8. Documentez vos choix : Consignez les pertes que vous avez essayées, leurs hyperparamètres et les résultats pour renforcer les connaissances institutionnelles.

Ressources pour l'apprentissage continu

Pour les praticiens qui cherchent à approfondir leur compréhension des fonctions de perte dans la vision informatique, plusieurs ressources fournissent des renseignements précieux :

La documentation PyTorch[ offre une couverture complète des fonctions de perte intégrées avec des détails d'implémentation et des exemples d'utilisation. De même, La documentation de la fonction de perte de TensorFlow fournit des ressources considérables aux utilisateurs de Keras.

Les documents universitaires qui présentent de nouvelles fonctions de perte comprennent généralement des études d'ablation démontrant leur efficacité. La lecture de ces documents fournit des informations sur la motivation derrière différents modèles de perte et les problèmes qu'ils résolvent. Le serveur arXiv preprint héberge de nombreux documents récents sur les fonctions de perte et leurs applications.

Les cours en ligne sur l'apprentissage profond de plateformes comme Coursera, fast.ai et CS231n de Stanford couvrent les fonctions de perte dans le cadre de leur programme. Ces cours fournissent des voies d'apprentissage structurées avec des exercices pratiques.

Les implémentations open-source de modèles de pointe sur GitHub montrent comment les praticiens combinent et harmonisent les fonctions de perte dans les applications réelles. L'étude de ces implémentations révèle des considérations pratiques souvent omises dans les documents.

Conclusion

Les fonctions de perte sont essentielles pour former des modèles de vision informatique efficaces, servant de pont entre les prévisions du modèle et les résultats souhaités.Ces pertes sont généralement conçues pour résoudre les problèmes uniques auxquels font face les apprentissages profonds.

La compréhension des fondements mathématiques, des considérations pratiques et des applications appropriées des différentes fonctions de perte permet aux praticiens de prendre des décisions éclairées lors de la conception et de la formation de systèmes de vision informatique.

La vision informatique s'attaque à des défis de plus en plus complexes, de la compréhension multimodale à l'apprentissage à faible portée, à un déploiement robuste dans des applications critiques en matière de sécurité, et les fonctions de perte continueront de jouer un rôle crucial dans la façon dont les modèles apprennent.

En examinant attentivement les exigences de tâches, les caractéristiques des données et les objectifs d'évaluation, les praticiens peuvent tirer parti de la riche trousse d'outils de fonctions de perte disponibles pour construire des systèmes de vision informatique qui non seulement atteignent une précision élevée, mais aussi généralisent bien, manipulent les cas de bord gracieusement, et s'alignent sur les contraintes de déploiement réelles.