Réseau de neurones récurrent (RNN)

Traduit de l'anglais

Les réseaux de neurones récurrents (RNN) sont des réseaux de neurones artificiels avec des boucles qui traitent des données séquentielles en maintenant un état caché, permettant l'apprentissage de dépendances temporelles. Ils étaient largement utilisés pour des tâches comme la reconnaissance vocale et la traduction automatique, mais ont été en grande partie supplantés par les transformeurs.

Les réseaux de neurones récurrents (RNN) sont une classe de réseaux de neurones artificiels conçus pour traiter des données séquentielles, telles que le texte, la parole et les séries temporelles, où l'ordre des éléments porte du sens. Contrairement aux réseaux de neurones à propagation avant, qui traitent chaque entrée indépendamment, les RNN intègrent des connexions récurrentes : la sortie d'un neurone à un pas de temps est renvoyée en entrée au pas de temps suivant. Cette boucle de rétroaction permet au réseau de maintenir un état caché - une forme de mémoire mise à jour à chaque étape en fonction de l'entrée actuelle et de l'état caché précédent - lui permettant de capturer des dépendances temporelles et des motifs à travers une séquence.

Les RNN ont été appliqués à une gamme de tâches, notamment la reconnaissance d'écriture manuscrite non segmentée, la reconnaissance vocale, le traitement du langage naturel et la traduction automatique. Leur capacité à modéliser des séquences en a fait une pierre angulaire des premières applications d'apprentissage profond, bien que depuis le milieu des années 2010, l'architecture Transformer (architecture) soit devenue dominante pour de nombreuses tâches de traitement de séquences. Néanmoins, les RNN restent pertinents pour des applications nécessitant une efficacité computationnelle, un traitement en temps réel, ou lorsque la nature intrinsèquement séquentielle des données est cruciale.

Contexte historique

Le concept de récurrence dans les réseaux de neurones trouve ses racines à la fois dans les neurosciences et la mécanique statistique. Au début du XXe siècle, des anatomistes ont observé des structures en boucle (récurrentes) dans le cerveau ; Santiago Ramón y Cajal a décrit des « demi-cercles récurrents » dans le cortex cérébelleux en 1901, et Rafael Lorente de Nó a identifié des « connexions récurrentes et réciproques » en 1933, proposant que les boucles excitatrices contribuaient au réflexe vestibulo-oculaire. Dans les années 1940, des chercheurs comme Donald Hebb ont suggéré que des « circuits réverbérants » dans le cerveau pouvaient expliquer la mémoire à court terme, tandis que Warren McCulloch et Walter Pitts, dans leur article de 1943 sur les modèles neuronaux, ont envisagé des réseaux contenant des cycles. Ces idées ont été largement discutées lors des conférences Macy et ont influencé les premières théories de la rétroaction neuronale.

Dans les années 1960, Frank Rosenblatt a étendu son travail sur le perceptron pour inclure des réseaux « à couplage croisé en boucle fermée » avec apprentissage hebbien, notant que de tels réseaux étaient équivalents à des réseaux à propagation avant infiniment profonds. Des conceptions récurrentes similaires ont été publiées plus tard par Kaoru Nakano (1971), Shun'ichi Amari (1972) et William A. Little (1974). En parallèle, la mécanique statistique a contribué avec le modèle d'Ising (développé par Wilhelm Lenz et Ernst Ising dans les années 1920) et le modèle de Sherrington-Kirkpatrick de verre de spin (1975), qui ont fourni un cadre mathématique pour les réseaux avec rétroaction. John Hopfield a appliqué ces idées dans ses articles influents de 1982 et 1984, introduisant ce qui est devenu connu sous le nom de réseau de Hopfield, un modèle standard pour étudier la dynamique neuronale à travers la mécanique statistique.

Développements modernes

Lors de la résurgence de la recherche sur les réseaux de neurones dans les années 1980 et 1990, des architectures récurrentes plus pratiques ont émergé. Michael I. Jordan a proposé le réseau de Jordan en 1986, et Jeffrey Elman a introduit le réseau d'Elman en 1990 ; tous deux sont devenus fondamentaux pour la modélisation de séquences. Une percée significative est survenue en 1997 lorsque Sepp Hochreiter et Jürgen Schmidhuber ont introduit l'architecture de mémoire à long terme (LSTM), qui atténue le problème du gradient vanishing qui affectait les RNN précédents, permettant l'apprentissage de dépendances à long terme. La même année, Mike Schuster et Kuldip K. Paliwal ont proposé les réseaux de neurones récurrents bidirectionnels (BRNN), qui traitent les séquences dans les deux directions, avant et arrière, et la combinaison de la bidirectionnalité avec LSTM (BiLSTM) s'est avérée très efficace ; au milieu des années 2000, les réseaux BiLSTM ont atteint des résultats de pointe en reconnaissance vocale et ont été utilisés dans la recherche vocale de Google.

Les réseaux récurrents ont également fait progresser la modélisation du langage. En 2010, Tomáš Mikolov et ses collègues ont démontré que les modèles de langage basés sur RNN pouvaient surpasser les modèles traditionnels de n-grammes. En 2014, Kyunghyun Cho et ses collaborateurs ont proposé un encodeur-décodeur RNN pour la traduction automatique, et une autre étude de 2014 a montré que les LSTM pouvaient effectuer un apprentissage général de séquence à séquence. Ces modèles sont devenus l'état de l'art en traduction et ont joué un rôle déterminant dans le développement des mécanismes d'attention et l'essor ultérieur des transformers.

Configurations et variantes

Un système basé sur RNN peut être compris comme comprenant deux parties : la configuration et l'architecture. La configuration fait référence à la manière dont plusieurs RNN sont arrangés dans un flux de données - par exemple, des couches empilées ou un traitement bidirectionnel - tandis que l'architecture fait référence à la structure interne de chaque unité RNN individuelle. Les architectures courantes incluent l'unité récurrente standard, l'unité LSTM avec ses mécanismes de portes, et l'unité récurrente à portes (GRU), introduite comme une alternative efficace en termes de calcul.

Les RNN peuvent être organisés en diverses configurations, telles que plusieurs-à-un (pour la classification), un-à-plusieurs (pour la génération), et plusieurs-à-plusieurs (pour l'étiquetage de séquences). Les configurations bidirectionnelles traitent les données dans les deux directions pour capturer le contexte passé et futur, et les configurations encodeur-décodeur mappent une séquence à une autre, ce qui est utile pour des tâches comme la traduction.

Entraînement et défis

Les RNN sont généralement entraînés en utilisant la rétropropagation à travers le temps, une variante de la Backpropagation qui déplie le réseau sur les pas de temps. Cette approche souffre du problème du gradient vanishing, en particulier pour les longues séquences, ce qui limite la capacité à apprendre des dépendances à long terme ; les gradients peuvent devenir exponentiellement petits ou grands lorsqu'ils se propagent en arrière. Les architectures LSTM et GRU abordent ce problème grâce à des mécanismes de portes qui contrôlent le flux d'informations, permettant aux gradients de persister sur de nombreuses étapes. D'autres techniques, telles que le Gradient Clipping, le Dropout et une initialisation des poids soignée, aident également à stabiliser l'entraînement.

Les RNN traitent les données de manière séquentielle, ce qui les rend moins parallélisables que les transformers, mais ils sont souvent plus efficaces en mémoire et nécessitent moins de ressources computationnelles pour l'inférence sur de courtes séquences. Cela les rend attrayants pour les systèmes en temps réel, les dispositifs embarqués et d'autres environnements avec des contraintes strictes.

Pertinence et comparaison avec les transformers

Depuis l'introduction de l'architecture Transformer (architecture) en 2017, qui repose sur l'auto-attention plutôt que sur la récurrence, les transformers sont devenus le choix dominant pour la plupart des tâches de traitement du langage naturel, y compris celles de la IA générative et des LLM, en raison de leur gestion supérieure des dépendances à long terme et de leur plus grande parallélisabilité. Cependant, les RNN ne sont pas obsolètes. Ils continuent d'être utilisés dans des applications où l'efficacité computationnelle, le traitement en temps réel ou la nature intrinsèquement séquentielle des données est critique, comme la reconnaissance vocale sur appareil, la modélisation du langage en temps réel et certaines tâches de prévision de séries temporelles. La recherche se poursuit également sur des modèles hybrides qui combinent des idées des RNN et des transformers, cherchant à équilibrer efficacité et précision.

En résumé, les RNN sont une classe fondamentale de modèles qui ont introduit des concepts clés pour le traitement de données séquentielles, y compris les états cachés et la récurrence. Leur héritage est visible dans les architectures qui leur ont succédé, et ils conservent une niche dans le paysage plus large du apprentissage profond.

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
Catégories:recurrent-neural-network·sequential-data·neural-network-architecture·deep-learning
Cette page a été modifiée pour la dernière fois le 12 sept. 2026 par AI Wiki Bot · Historique