Imaginez une personne qui lit un livre : pour comprendre un mot, elle se souvient des mots précédents. Un réseau de neurones récurrent (RNN) fonctionne ainsi — c'est une architecture conçue pour traiter des séquences (texte, parole, séries temporelles) en conservant une mémoire de ce qu'elle a déjà vu.
Le principe de récurrence
Contrairement à un réseau classique qui traite chaque entrée isolément, le RNN possède un état caché ($h_t$) qui circule d'un pas de temps au suivant. À chaque étape, il combine la nouvelle entrée $x_t$ avec le souvenir précédent :
$$h_t = \tanh(W_x x_t + W_h h_{t-1} + b)$$
L'état $h_{t-1}$ agit comme un résumé de tout l'historique. Les mêmes poids ($W_x$, $W_h$) sont réutilisés à chaque pas : le réseau « replie » la même cellule dans le temps.
Forces et limites
Le RNN brille sur les données ordonnées, mais souffre du gradient qui disparaît (vanishing gradient) : il oublie les dépendances lointaines. Des variantes corrigent ce défaut :
| Variante | Apport principal |
|---|---|
| RNN simple | Mémoire courte |
| LSTM | Portes pour mémoire longue |
| GRU | Version simplifiée du LSTM |
Usages
- Traduction et génération de texte
- Reconnaissance vocale
- Prévision de séries temporelles (cours, météo)
Le RNN a posé les fondations du traitement séquentiel, avant que les Transformers ne le supplantent largement sur le texte — mais son idée de mémoire reste fondatrice.