Glossaire

Réseaux résiduels (ResNet)

Découvre comment les ResNets révolutionnent l'apprentissage profond en résolvant les gradients évanescents, ce qui permet de créer des réseaux ultra profonds pour l'analyse d'images, le NLP et bien plus encore.

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

En savoir plus

Les réseaux résiduels, communément appelés ResNet, représentent une architecture révolutionnaire de réseau neuronal convolutif (CNN) développée par Kaiming He et ses collègues de Microsoft Research. Présenté dans leur article de 2015,"Deep Residual Learning for Image Recognition", ResNet s'est attaqué à un défi majeur de l'apprentissage profond (DL): le problème de la dégradation. Ce problème survient lorsque l'ajout de couches supplémentaires à un réseau très profond entraîne une erreur d'apprentissage plus élevée, contrairement à l'attente selon laquelle les modèles plus profonds devraient être plus performants. L'innovation de ResNet a permis de former avec succès des réseaux nettement plus profonds que ce qui était possible auparavant, faisant ainsi progresser de manière significative l'état de l'art dans diverses tâches de vision par ordinateur (VA).

Comment fonctionnent les ResNets : Sauter les connexions

L'idée centrale de ResNet est l'introduction de "connexions de saut" ou de "connexions de raccourci". Dans les réseaux profonds traditionnels, chaque couche alimente séquentiellement la suivante. ResNet modifie cela en permettant à l'entrée d'un bloc de couches d'être ajoutée à la sortie de ce bloc. Cela crée un "bloc résiduel" où les couches apprennent une cartographie résiduelle (la différence entre l'entrée et la sortie souhaitée) plutôt que d'essayer d'apprendre directement toute la cartographie sous-jacente. Si la fonction optimale est plus proche d'une cartographie d'identité (où la sortie doit être identique à l'entrée), il est plus facile pour le réseau d'apprendre à faire en sorte que le résidu soit nul (en faisant tendre les poids des couches empilées vers zéro) que d'apprendre la cartographie d'identité elle-même par le biais de couches non linéaires.

Ces connexions sautées facilitent le flux de gradient pendant la rétropropagation, atténuant ainsi le problème de gradient disparaissant qui affecte souvent les réseaux très profonds. Cela permet de construire et de former efficacement des réseaux comportant des centaines, voire des milliers de couches, et d'obtenir des améliorations remarquables en termes de précision sur des ensembles de données de référence difficiles comme ImageNet.

Concepts clés

  • Bloc résiduel : L'unité de construction fondamentale d'un ResNet, composée de quelques couches convolutives et d'une connexion de saut qui ajoute l'entrée du bloc à sa sortie.
  • Sauter la connexion (raccourci) : Une connexion directe qui contourne une ou plusieurs couches, ce qui permet de faciliter l'apprentissage du flux de gradient et de la cartographie d'identité.
  • Mappage d'identité : Lorsqu'une couche ou un bloc ne fait que passer son entrée sans la modifier. Les connexions de saut permettent aux blocs résiduels d'établir plus facilement des correspondances d'identité approximatives si nécessaire.
  • Problème de dégradation : le phénomène selon lequel les réseaux plus profonds sont moins performants (erreur d'apprentissage et de test plus élevée) que leurs homologues moins profonds, est pris en compte par l'apprentissage résiduel de ResNet.

Pertinence dans la vision par ordinateur

Les architectures ResNet sont rapidement devenues un support standard pour de nombreuses tâches de vision par ordinateur au-delà de la classification d'images, notamment :

  • Détection d'objets : De nombreux modèles de détection, comme le R-CNN plus rapide et certaines variantes utilisées dans les systèmes comparés à Ultralytics YOLO d'Ultralytics (par ex, RT-DETR), utilisent des bases ResNet pour l'extraction des caractéristiques(glossaire de la détection d'objets).
  • Segmentation d'images : Les architectures telles que Mask R-CNN emploient souvent ResNet pour extraire les caractéristiques spatiales riches nécessaires à la classification au niveau du pixel(glossaire de la segmentation d'image).

Sa capacité à extraire des caractéristiques puissantes des images en a fait une architecture très polyvalente et largement adoptée.

Applications dans le monde réel

  1. Analyse d'images médicales : Les ResNets sont largement utilisés dans l'analyse des scans médicaux (rayons X, CT, IRM) pour détecter des anomalies telles que les tumeurs ou la rétinopathie diabétique. La profondeur permise par ResNet permet au modèle d'apprendre des schémas complexes indiquant des maladies, ce qui aide les radiologues à poser leur diagnostic. Tu peux explorer les applications connexes de l'IA en radiologie et en savoir plus sur le domaine de l'analyse des images médicales. Des initiatives telles que le programme Bridge2AI des NIH s 'appuient souvent sur ces modèles avancés.
  2. Conduite autonome : Les systèmes de perception des voitures autonomes s'appuient souvent sur des architectures basées sur ResNet pour la détection et la reconnaissance d'objets en temps réel, qu'il s'agisse de piétons, de véhicules, de feux de circulation ou de panneaux de signalisation. La robustesse et la précision des modèles ResNet profonds sont cruciales pour la sécurité dans les scénarios de conduite complexes(AI in Automotive solutions). Des entreprises comme Waymo détaillent l'importance des systèmes de perception robustes.

Comparaison avec d'autres architectures

  • VGGNet : Alors que VGGNet a démontré l'avantage de la profondeur en utilisant de simples convolutions 3x3, il a lutté avec la convergence pour les réseaux très profonds en raison des gradients qui s'évanouissent. ResNet a directement remédié à cette limitation(Vision AI History blog, VGG paper).
  • DenseNet : Les DenseNets relient chaque couche à toutes les autres couches de manière ascendante, ce qui favorise la réutilisation des caractéristiques. Cela diffère des connexions de saut additives de ResNet. Les deux visent à améliorer le flux d'informations mais utilisent des mécanismes différents(document DenseNet).
  • Transformateurs de vision (ViT) : Des architectures plus récentes comme ViT utilisent des mécanismes d'attention, s'écartant de l'approche convolutive de ResNet, et ont montré des performances compétitives ou supérieures sur de nombreux benchmarks, bien que les ResNets restent influents et largement utilisés.

Outils et mise en oeuvre

Les architectures ResNet sont facilement disponibles dans les principaux frameworks d'apprentissage profond tels que PyTorchPyTorch site officiel dePyTorch ) et TensorFlowTensorFlow ). Les modèles pré-entraînés, souvent formés sur ImageNet, sont accessibles grâce à des bibliothèques comme torchvision, ce qui permet un apprentissage par transfert efficace. Des plateformes comme Ultralytics HUB permettent aux utilisateurs d'exploiter diverses architectures, notamment celles basées sur ResNet, pour former des modèles personnalisés et les déployerUltralytics documentationUltralytics HUB). Tu trouveras d'autres ressources pédagogiques sur les CNN à Stanford CS231n ou par le biais de cours comme ceux proposés par DeepLearning.AI.

Tout lire