Qu’est-ce qu’un réseau de neurones résiduels ?

Un réseau neuronal résiduel appelé “ResNet” est un réseau neuronal artificiel réputé. Il s’assemble sur des constructions obtenues à partir des cellules pyramidales du cortex cérébral. Les réseaux neuronaux résiduels accomplissent cela en utilisant des raccourcis ou des “sauts de connexion” pour se déplacer sur différentes couches.

Les experts mettent en œuvre des modèles traditionnels de réseaux neuronaux résiduels avec des sauts à deux ou trois couches contenant des normalisations par lots et des non-linéarités entre les deux. Les scientifiques profitent également d’une matrice de poids supplémentaire pour apprendre les poids de saut dans certains cas. Le terme utilisé pour décrire ce phénomène est “Highwaynets”. Les modèles constitués de plusieurs sauts parallèles sont appelés “Densenets”. Les réseaux non résiduels peuvent également être appelés réseaux simples lorsqu’on parle de réseaux neuronaux résiduels.

L’une des principales raisons de sauter des couches est d’éviter les gradients de disparition et autres problèmes similaires. Comme le gradient est rétropropagé vers les couches précédentes, ce processus répété peut rendre le gradient extrêmement petit. La plupart des individus font cela en utilisant les activations des couches précédentes jusqu’à ce que la couche adjacente apprenne des poids particuliers. Pendant l’entraînement, ces poids s’ajustent aux couches en amont et agrandissent la couche sautée précédemment. Dans le cas le plus simple, ce sont les poids utilisés pour relier les couches adjacentes qui entrent en jeu.

Cependant, cela ne fonctionne efficacement que lorsque toutes les couches intermédiaires sont linéaires ou se chevauchent sur la couche non linéaire. Si ce n’est pas le cas, l’utilisation d’une matrice de poids différente serait utile pour les connexions sautées. Dans ce cas, il serait préférable d’envisager l’utilisation d’un Highwaynet.

Le saut élimine les complications du réseau, le rendant plus simple, en utilisant très peu de couches pendant la phase initiale de formation. Cela accélère l’apprentissage par dix fois, en minimisant l’effet des pentes qui disparaissent. Pourquoi ? Parce qu’il n’y a pratiquement pas de couches à traverser. Après cela, le réseau finit par remettre les couches qualifiées en place tout en apprenant l’espace des caractéristiques.

Au fur et à mesure que la formation s’achève et que chaque couche s’étend, ils s’approchent du collecteur et apprennent plus rapidement. Un réseau neuronal qui n’a pas de parties résiduelles a plus de liberté pour explorer l’espace des caractéristiques, ce qui le rend très vulnérable aux perturbations, l’oblige à sortir du collecteur et le rend essentiel pour la récupération des données de formation supplémentaires.

Qu’est-ce qui a rendu nécessaire le recours aux réseaux de neurones résiduels ?

Après le triomphe d’AlexNets lors du concours de classification LSVRC de 2012, le réseau résiduel profond est sans doute devenu l’innovation la plus novatrice et la plus ingénieuse de l’histoire du paysage de l’apprentissage profond et de la vision par ordinateur. ResNet permet de former des centaines, voire des milliers de couches, tout en obtenant des performances fascinantes.

De nombreuses applications de vision par ordinateur ont profité des fortes capacités de représentation du réseau neuronal résiduel et ont remarqué une augmentation massive. La classification d’images n’était pas la seule application de vision par ordinateur à utiliser ResNet – la reconnaissance des visages et la détection d’objets ont également bénéficié de cette innovation révolutionnaire.

Comme les réseaux neuronaux résiduels ont laissé les gens stupéfaits lors de son inauguration en 2015, plusieurs personnes de la communauté de la recherche ont tenté de découvrir les secrets de son succès, et on peut dire sans se tromper que des tonnes de raffinements ont été apportés à la vaste architecture de ResNet.

La question du gradient de disparition (Vanishing Gradient)

Le problème de la disparition du gradient est courant dans le milieu de l’apprentissage profond et de la science des données. Les gens rencontrent souvent ce problème lors de la formation de réseaux neuronaux artificiels impliquant la rétropropagation et l’apprentissage par gradient. Comme nous l’avons vu précédemment, les experts utilisent les gradients pour mettre à jour les poids dans un réseau spécifique.
Cependant, les choses sont parfois différentes car le gradient devient incroyablement petit et disparaît presque. Il empêche les poids de modifier leurs valeurs, ce qui entraîne l’arrêt de la formation par le réseau, car les mêmes valeurs se répandent sans cesse sans qu’aucun travail significatif ne soit effectué.

Le ResNet et l’apprentissage approfondi

Chaque modèle d’apprentissage approfondi possède plusieurs couches qui lui permettent de comprendre les caractéristiques d’entrée, l’aidant ainsi à prendre une décision éclairée. Bien que cela soit assez simple, comment les réseaux identifient-ils les différentes caractéristiques présentes dans les données ?
Il serait juste de considérer les réseaux neuronaux comme des approximateurs de fonctions universelles. Les modèles tentent d’apprendre les bons paramètres représentant étroitement une caractéristique ou une fonction qui fournit la bonne sortie. L’incorporation de plusieurs couches est un excellent moyen d’ajouter des paramètres, et permet également de cartographier des fonctions non linéaires complexes.

Toutefois, cela ne signifie pas que l’empilement de tonnes de couches permettra d’améliorer les performances. Si vous regardez de près, vous vous rendrez compte qu’il y a un hic. Si nous constatons que la mise en œuvre de nos modèles avec plus de couches conduit à de meilleures performances, les résultats pourraient changer radicalement dans certaines conditions, entraînant une saturation, et finalement, un déclin rapide.

Comprendre le problème avec les couches multiples

Nous devons d’abord comprendre comment les modèles apprennent à partir des données de formation. Le processus se déroule en faisant passer chaque entrée dans le modèle (feedforward) et en la faisant repasser (backpropagation). Pendant la rétropropagation, nous mettons à jour les poids de notre modèle en fonction de la classification de l’entrée. La mise à jour soustrait le gradient de la fonction de perte concernant la valeur précédente du poids.

Comment ResNet résout le problème du gradient de disparition (Vanishing Gradient)

Comme il a été abondamment mentionné, les réseaux neuronaux résiduels sont la solution idéale au problème du gradient de disparition. Les experts en apprentissage approfondi ajoutent des raccourcis pour sauter deux ou trois couches afin d’accélérer le processus, ce qui modifie la façon dont nous calculons les gradients à chaque couche. Pour simplifier les choses, le fait de faire passer l’entrée par la sortie empêche certaines couches de modifier les valeurs du gradient, ce qui signifie que nous pouvons sauter la procédure d’apprentissage pour certaines couches spécifiques. Le phénomène clarifie également la manière dont le gradient entre à nouveau dans le réseau.

En poursuivant la formation, le modèle saisit le concept de retenir les couches utiles et de ne pas utiliser celles qui ne sont pas utiles. Le modèle convertira ces dernières en cartes d’identité. C’est un facteur important du succès du réseau neuronal résiduel, car il est incroyablement simple de créer des couches correspondant à la fonction d’identité.

En outre, le fait qu’il soit possible de masquer les couches qui ne sont pas utiles est extrêmement utile. Une quantité massive de couches peut rendre les choses assez confuses, mais avec l’aide des réseaux neuronaux résiduels, nous pouvons décider lesquelles nous voulons garder et lesquelles ne servent à rien.

Réflexions finales

Il serait juste de dire que l’architecture de réseau neuronal résiduel a été incroyablement utile pour augmenter les performances des réseaux neuronaux à couches multiples. En leur cœur, les ResNets sont comme des réseaux divers avec des modifications mineures. Cette architecture présente des étapes fonctionnelles similaires à celles des CNN (réseaux neuronaux convolutifs) ou autres. Toutefois, il existe une étape supplémentaire pour résoudre le problème du gradient de disparition et d’autres questions connexes.