Glossaire

Dégradé disparaissant

Découvre le problème du gradient de disparition dans l'apprentissage profond, son impact sur les réseaux neuronaux et les solutions efficaces comme ReLU, ResNets, et plus encore.

Entraîne les modèles YOLO simplement
avec Ultralytics HUB

En savoir plus

Le Vanishing Gradient est un problème courant rencontré au cours de la formation des réseaux neuronaux profonds (NN), en particulier ceux qui comportent de nombreuses couches comme les réseaux neuronaux récurrents (RNN) et les réseaux feedforward profonds. Il se produit au cours du processus de rétropropagation, où les gradients de la fonction de perte par rapport aux poids du réseau deviennent extrêmement faibles au fur et à mesure qu'ils sont propagés vers l'arrière depuis la couche de sortie vers les couches précédentes. Lorsque ces gradients deviennent infiniment petits, les mises à jour des poids du modèle dans les couches initiales deviennent négligeables, ce qui empêche effectivement ces couches d'apprendre. Cela entrave la capacité du réseau à apprendre des modèles complexes et à capturer des dépendances à longue portée dans les données, ce qui est crucial pour de nombreuses tâches d'apprentissage profond (DL).

Pourquoi les dégradés de disparition posent-ils problème ?

Le problème principal des gradients qui disparaissent est qu'ils bloquent le processus d'apprentissage. Les modèles d'apprentissage automatique (ML) apprennent en ajustant leurs paramètres internes en fonction du signal d'erreur (gradient) calculé à l'aide d'algorithmes d'optimisation tels que la descente de gradient ou ses variantes comme Adam. Si le gradient est proche de zéro, les mises à jour des paramètres sont minimes ou inexistantes. Dans les réseaux profonds, ce problème est aggravé parce que le signal du gradient est multiplié à plusieurs reprises par de petits nombres lorsqu'il remonte les couches. Par conséquent, les couches les plus proches de l'entrée apprennent beaucoup plus lentement que les couches les plus proches de la sortie, voire n'apprennent pas du tout. Cela empêche le réseau de converger vers une solution optimale et limite ses performances globales et sa précision. Il est essentiel de comprendre ce phénomène pour former efficacement un modèle.

Causes et comparaison avec les gradients d'explosion

Les gradients qui s'évanouissent sont souvent dus à :

  1. Choix des fonctions d'activation : Certaines fonctions d'activation, comme la sigmoïde ou la tangente hyperbolique (tanh), ont des dérivées inférieures à 1, surtout dans leurs régions de saturation. Au cours de la rétropropagation, la multiplication de ces petites dérivées sur de nombreuses couches entraîne une diminution exponentielle du gradient.
  2. Architectures profondes : La profondeur même des réseaux modernes augmente le nombre de fois où les gradients sont multipliés, ce qui rend les gradients disparus plus probables.
  3. Initialisation des poids : Une mauvaise initialisation des poids peut également contribuer au problème.

Il est important de distinguer les gradients disparaissants du problème connexe des gradients explosifs. L'explosion des gradients. L'explosion des gradients se produit lorsque les gradients deviennent excessivement grands, ce qui entraîne une formation instable et des mises à jour de poids importantes et oscillantes. Cela se produit généralement lorsque les gradients sont multipliés à plusieurs reprises par des nombres supérieurs à 1. Alors que les gradients qui s'évanouissent empêchent l'apprentissage, les gradients qui explosent entraînent une divergence de l'apprentissage. Des techniques telles que l'écrêtage du gradient sont souvent utilisées pour lutter contre l'explosion des gradients.

Techniques d'atténuation

Plusieurs stratégies ont été développées pour résoudre le problème du gradient qui s'évanouit :

  • ReLU et variantes : L'utilisation de fonctions d'activation telles que ReLU (Rectified Linear Unit) et ses variantes(Leaky ReLU, GELU, SiLU) est utile car leurs dérivées sont égales à 1 pour les entrées positives, ce qui empêche le gradient de diminuer dans ces régions.
  • Architectures spécialisées : Les architectures telles que les réseaux résiduels (ResNet) introduisent des "connexions de saut" qui permettent aux gradients de contourner les couches, offrant ainsi un chemin plus court pendant la rétropropagation. Pour les données séquentielles, les mémoires à long terme (LSTM) et les unités récurrentes gérées (GRU) utilisent des mécanismes de gating pour contrôler le flux d'informations et maintenir les gradients sur de longues séquences.
  • Initialisation des poids : Des schémas d'initialisation appropriés, tels que l'initialisation He ou l'initialisation Xavier/Glorot, permettent de maintenir la variance du gradient d'une couche à l'autre.
  • Normalisation par lots : La normalisation par lots aide à stabiliser l'apprentissage en normalisant les entrées des couches, ce qui peut indirectement atténuer les gradients qui s'évanouissent (et qui explosent).
  • Écrêtage des dégradés : Bien que cela concerne principalement les gradients qui explosent, la définition d'un seuil maximum pour les gradients peut parfois permettre d'éviter qu'ils ne deviennent trop petits après de grandes oscillations.

Impact dans le monde réel et exemples

La résolution des problèmes de disparition des gradients a joué un rôle essentiel dans les progrès de l'IA :

  1. Traitement du langage naturel (NLP) : Les premiers RNN avaient du mal à traiter les longues phrases dans des tâches telles que la traduction automatique ou l'analyse des sentiments en raison de l'évanouissement des gradients. Le développement des LSTM et des GRU a permis aux modèles d'apprendre les dépendances à longue portée, ce qui a considérablement amélioré les performances. Les architectures modernes comme le Transformer contournent ce problème en utilisant des mécanismes comme l'auto-attention.
  2. Vision par ordinateur : La formation de réseaux neuronaux convolutifs (CNN) très profonds était un défi jusqu'à l'introduction d'architectures telles que ResNet. Les ResNet ont permis de créer des réseaux comportant des centaines, voire des milliers de couches, ce qui a conduit à des percées dans la classification d'images, la détection d'objets (utilisée dans des modèles tels qu'Ultralytics) et l'analyse d'images. Ultralytics YOLO) et la segmentation des images. Tu peux explorer divers ensembles de données de vision par ordinateur utilisés pour former ces modèles.

Comprendre et atténuer les gradients de disparition reste un aspect essentiel de la conception et de la formation de modèles d'apprentissage profond efficaces, permettant les puissantes applications d'IA que nous voyons aujourd'hui, souvent gérées et déployées à l'aide de plateformes telles qu'Ultralytics HUB.

Tout lire