Contactez-moi

Définition Residual Networks

Residual Networks

Residual Networks, communément abrégés en ResNets, désignent une architecture de réseau neuronal artificiel profond introduite pour surmonter les difficultés d’entraînement des réseaux comportant un très grand nombre de couches. L’innovation principale des ResNets réside dans l’utilisation de « connexions de raccourci » (shortcut connections) ou « connexions résiduelles » (residual connections) qui permettent aux gradients de se propager plus facilement à travers le réseau lors de la rétropropagation, facilitant ainsi l’optimisation et permettant la construction de modèles significativement plus profonds et performants que les architectures précédentes.

Le concept fondamental derrière les Residual Networks est l’apprentissage résiduel. Plutôt que de forcer un ensemble de couches empilées à apprendre directement une fonction de mappage sous-jacente H(x), l’architecture ResNet les amène à apprendre une fonction résiduelle F(x) = H(x) – x. Le mappage original est alors reformulé comme F(x) + x. L’hypothèse sous-jacente est qu’il est plus facile d’optimiser la fonction résiduelle F(x) que d’optimiser directement la fonction H(x). Si le mappage optimal était proche d’une fonction identité (c’est-à-dire que les couches supplémentaires n’apportent pas d’amélioration significative), il serait plus facile pour le réseau d’apprendre à mettre la fonction résiduelle F(x) à zéro (en ajustant les poids des couches) que d’apprendre la fonction identité H(x)=x par une pile de transformations non linéaires. Cette reformulation est implémentée via des blocs résiduels. Un bloc résiduel typique est composé de quelques couches convolutives (ou autres types de couches) dont la sortie est additionnée à l’entrée du bloc (le ‘x’ dans F(x)+x) via une connexion de raccourci qui contourne ces couches.

L’importance des Residual Networks dans le domaine de l’apprentissage profond, en particulier en vision par ordinateur, est considérable. Avant leur introduction, augmenter la profondeur des réseaux neuronaux menait souvent à un problème de dégradation : la précision d’entraînement commençait à saturer puis à diminuer rapidement, non pas à cause du surapprentissage, mais parce que l’optimisation des réseaux très profonds devenait extrêmement difficile. Les ResNets ont résolu ce problème de manière élégante, permettant la création de réseaux fonctionnels avec des centaines, voire plus d’un millier de couches (par exemple, ResNet-152, ResNet-1202). Cette capacité à exploiter la profondeur a conduit à des améliorations spectaculaires des performances sur des tâches de référence complexes comme la classification d’images sur ImageNet, la détection d’objets sur COCO, et la segmentation sémantique. L’architecture ResNet est devenue une référence et a profondément influencé la conception de nombreuses architectures de réseaux profonds ultérieures dans divers domaines.

Les applications pratiques des Residual Networks sont nombreuses et variées, principalement en vision par ordinateur. Elles sont largement utilisées pour la classification d’images, où des modèles pré-entraînés comme ResNet-50 ou ResNet-101 servent souvent de base pour d’autres tâches via l’apprentissage par transfert. Dans la détection d’objets, les ResNets sont fréquemment employés comme l’épine dorsale (backbone) pour extraire des caractéristiques pertinentes des images dans des systèmes comme Faster R-CNN ou YOLO. De même, en segmentation sémantique, qui vise à classifier chaque pixel d’une image, les ResNets fournissent les représentations hiérarchiques nécessaires. D’autres applications incluent la reconnaissance faciale, l’estimation de pose humaine, et même certaines tâches en traitement du langage naturel (bien que les architectures Transformer y soient désormais plus dominantes, l’idée de connexion résiduelle y est aussi présente) et en reconnaissance vocale.

Il existe plusieurs nuances et variations autour du concept de base des ResNets. L’implémentation originale utilisait une addition après la dernière activation non linéaire du bloc résiduel (post-activation). Des recherches ultérieures ont proposé des améliorations, comme la pré-activation, où l’addition et la fonction d’activation (ReLU) sont réorganisées pour potentiellement améliorer le flux d’informations et la régularisation. D’autres architectures se sont inspirées de ResNet : les Wide Residual Networks (WRNs) explorent l’idée qu’augmenter la largeur (nombre de filtres par couche) plutôt que la profondeur peut être plus efficace ; les ResNeXt introduisent une dimension de « cardinalité » en utilisant des convolutions groupées pour améliorer l’efficacité et la précision. L’interprétation théorique des ResNets est également un sujet de recherche active, certains les voyant comme un ensemble implicite de nombreux chemins de propagation plus courts, tandis que d’autres se concentrent sur leur capacité à lisser le paysage de la fonction de perte, facilitant l’optimisation.

Plusieurs concepts sont étroitement liés aux Residual Networks. Ils sont une instance spécifique de Réseaux Neuronaux Convolutifs (CNN), l’architecture dominante en vision par ordinateur. Ils s’inscrivent dans le cadre plus large de l’Apprentissage Profond (Deep Learning). Les connexions résiduelles sont un type de Connexion de Raccourci (Skip Connection), un terme plus général désignant les connexions qui sautent une ou plusieurs couches. L’introduction des ResNets a été motivée par la difficulté d’entraîner des réseaux profonds, en partie liée au problème de l’évanescence ou de l’explosion du gradient (Gradient Vanishing/Exploding), que les connexions résiduelles aident à atténuer en fournissant un chemin plus direct pour la propagation du gradient via la fonction identité. Les Highway Networks, proposés peu avant les ResNets, exploraient une idée similaire en utilisant des portes (gates) pour contrôler le flux d’information à travers les connexions de raccourci. Les DenseNets, développés ultérieurement, poussent l’idée de la connectivité courte plus loin en connectant chaque couche à toutes les couches suivantes.

L’origine des Residual Networks remonte à 2015 avec la publication de l’article « Deep Residual Learning for Image Recognition » par Kaiming He, Xiangyu Zhang, Shaoqing Ren et Jian Sun de Microsoft Research Asia (MSRA). Cette architecture a été proposée dans le contexte d’une « course à la profondeur » où les chercheurs tentaient de construire des réseaux de plus en plus profonds (comme VGGNet et GoogLeNet) pour améliorer les performances. Cependant, ils se heurtaient au problème de dégradation mentionné précédemment. Les ResNets ont non seulement proposé une solution élégante à ce problème mais ont aussi remporté de manière écrasante plusieurs compétitions majeures en 2015, notamment ILSVRC (classification, détection, localisation) et COCO (détection, segmentation), établissant ainsi rapidement leur supériorité et leur influence durable sur le domaine.

Les avantages principaux des Residual Networks incluent leur capacité à faciliter l’entraînement de réseaux neuronaux exceptionnellement profonds sans souffrir du problème de dégradation, menant à des gains de précision significatifs sur de nombreuses tâches. Les connexions résiduelles améliorent la propagation du gradient et permettent aux réseaux d’apprendre plus facilement la fonction identité lorsque des couches supplémentaires ne sont pas utiles. L’architecture est modulaire, basée sur la répétition de blocs résiduels, ce qui simplifie sa conception et son extension. Ils présentent généralement de bonnes capacités de généralisation.

Cependant, les Residual Networks présentent aussi des inconvénients et des limitations. Bien qu’ils permettent une plus grande profondeur, cela s’accompagne souvent d’une augmentation du nombre de paramètres et de la complexité computationnelle, nécessitant des ressources matérielles importantes pour l’entraînement et l’inférence, même si leur efficacité computationnelle par rapport à leur performance est souvent meilleure que celle des architectures plus anciennes comme VGG. La compréhension théorique complète de leur fonctionnement et des raisons exactes de leur succès fait encore l’objet de recherches. De plus, bien qu’ils aient été révolutionnaires, de nouvelles architectures comme les EfficientNets ou les Transformers adaptés à la vision (Vision Transformers) peuvent les surpasser sur certaines métriques ou tâches spécifiques. Le choix optimal de la profondeur, de la largeur et de la structure spécifique des blocs résiduels pour une tâche donnée reste un défi de conception.