Toutes les veilles

Veille — Deep Learning

RNN, LSTM, CNN : choisir la bonne architecture.

Avant d'entraîner quoi que ce soit, une décision conditionne tout le reste : quelle famille de réseau pour quel problème ? Cette veille décortique trois architectures fondatrices du Deep Learning — récurrentes (RNN, LSTM/GRU) et convolutives (CNN) — pour savoir laquelle répond le mieux à un besoin métier donné.

Le choix d'architecture est la première décision

Sélectionner un modèle, ce n'est pas piocher le plus à la mode : c'est faire correspondre la structure du réseau à la structure de la donnée et à la contrainte métier (latence, volume de données, matériel disponible). Une règle simple oriente 90 % des cas :

  • donnée séquentielle où l'ordre compte — texte, séries temporelles, signaux capteurs → famille récurrente (RNN, LSTM, GRU) ;
  • donnée en grille où comptent les motifs locaux — images, spectrogrammes, cartes → famille convolutive (CNN).

Comprendre pourquoi chaque architecture est taillée pour son type de donnée évite de forcer un mauvais outil sur un problème — et de payer en données, en temps de calcul et en performance.

Les RNN — la mémoire séquentielle

Un réseau de neurones récurrent (Recurrent Neural Network) est construit à partir de neurones, ces nœuds de traitement qui collaborent pour résoudre une tâche. Ils s'organisent en couches : une couche d'entrée qui reçoit l'information, une couche de sortie qui livre le résultat, et entre les deux une ou plusieurs couches cachées où se déroulent l'analyse et la prévision.

La particularité du RNN tient dans sa couche cachée : elle traite la séquence pas de temps après pas de temps, et surtout elle mémorise. À chaque étape, l'état caché combine l'entrée du moment et le souvenir des entrées précédentes pour prédire la suite. Formellement, l'état caché se met à jour ainsi :

hₜ = f( W·xₜ + U·hₜ₋₁ + b ) — l'état du moment dépend de l'entrée actuelle et de l'état précédent.

C'est ce report de hₜ₋₁ dans le calcul de hₜ — la récurrence — qui donne au réseau une mémoire à court terme. Pour prédire le mot suivant d'une phrase, un RNN combine ainsi le mot courant avec les mots déjà vus, stockés dans cet état caché.

h₀ h₁ h₂ h₃ h₄ x₁ x₂ x₃ x₄ ŷ₁ ŷ₂ ŷ₃ ŷ₄ SORTIES ENTRÉES mémoire
Un RNN « déroulé » dans le temps : le même réseau est appliqué à chaque pas t. La flèche violette transporte l'état caché h — la mémoire — d'un pas au suivant.

Le point faible : une mémoire qui s'évanouit

Si la séquence est trop longue, le RNN se perd : son souvenir s'estompe à chaque nouvelle étape. Ce n'est pas qu'une intuition. À l'entraînement, l'erreur est rétro-propagée à travers le temps (Backpropagation Through Time), et le gradient est multiplié à chaque pas. S'il est inférieur à 1, il décroît exponentiellement et finit par s'annuler : c'est le problème du gradient qui s'évanouit (et son symétrique, le gradient qui explose). Conséquence : le réseau apprend très mal les dépendances longues — relier un mot à un autre situé loin en amont devient hors de portée.

LSTM & GRU — réparer la mémoire longue

Les LSTM (Long Short-Term Memory) règlent ce défaut en ajoutant un état de cellule — une sorte de tapis roulant qui traverse toute la séquence avec très peu de transformations, laissant l'information circuler intacte sur de longues distances. Trois portes (de petits réseaux à sortie entre 0 et 1, via une sigmoïde σ) décident, à chaque pas, quoi faire de cette mémoire :

  • porte d'oubli — quelle part de la mémoire effacer ;
  • porte d'entrée — quelle nouvelle information écrire ;
  • porte de sortie — quelle part de la mémoire exposer comme état caché hₜ.
CELLULE LSTM Cₜ₋₁ Cₜ × + hₜ₋₁ xₜ Oubli σ Entrée σ · tanh Sortie σ × hₜ
Cellule LSTM (schéma simplifié) : l'état de cellule C circule en haut, presque sans entrave ; les portes décident à chaque pas quoi oublier, écrire et exposer. Le GRU est une variante allégée à deux portes, moins de paramètres et souvent aussi efficace.

Grâce à cet état de cellule protégé, les LSTM (et leurs cousins GRU) apprennent des dépendances bien plus longues que les RNN simples. Ils ont longtemps été l'outil de référence pour la traduction, la reconnaissance vocale, l'analyse de séries temporelles et tout signal de capteur — avant l'arrivée des Transformers.

CNN — détecter des motifs locaux

Les réseaux convolutifs (CNN) répondent à une tout autre structure de donnée : la grille. Plutôt qu'un poids par pixel, un CNN fait glisser de petits filtres (noyaux) sur l'image. Chaque filtre apprend à repérer un motif — un bord, une texture, puis des formes de plus en plus complexes en profondeur. Deux idées clés en font la force : le partage des poids (le même filtre balaie toute l'image, d'où peu de paramètres) et l'invariance par translation (un motif est reconnu où qu'il se trouve). Les couches de pooling réduisent ensuite la résolution pour gagner en robustesse et en efficacité.

IMAGE CONV. POOL CONV. APLATIR DENSE SORTIE
Pipeline CNN typique : alternance de convolutions (extraction de motifs) et de pooling (réduction), puis aplatissement et couches denses jusqu'à la décision. La même mécanique sert aussi en 1D (Conv1D) pour des séries ou de l'audio.

Les CNN dominent la vision par ordinateur — classification, détection, segmentation — mais s'appliquent aussi très bien aux signaux 1D (séries temporelles, audio via spectrogrammes), partout où ce sont des motifs locaux, et non l'ordre global, qui portent l'information.

Et les Transformers ?

Impossible de parler architecture sans les citer. Les Transformers, fondés sur le mécanisme d'attention, ont largement supplanté les RNN/LSTM en traitement du langage : ils traitent une séquence en parallèle (et non pas à pas) et capturent les dépendances longues sans souffrir du gradient évanescent. Pour autant, RNN, LSTM et CNN restent pertinents : peu de données, contraintes d'embarqué/edge, latence serrée ou séries simples sont autant de cas où une architecture plus légère reste le choix le plus optimal.

Quel modèle pour quel besoin ?

ArchitectureDonnée idéalePoints fortsLimitesCas d'usage
RNN Séquences courtes Simple, léger, notion d'ordre Mémoire courte (gradient évanescent) Séries simples, prototypage
LSTM / GRU Séquences longues Dépendances longues, mémoire stable Plus lourd, séquentiel (peu parallélisable) Séries temporelles, capteurs, voix
CNN Grilles, signaux locaux Peu de paramètres, invariance, rapide Ignore l'ordre global d'une séquence Images, audio, vision embarquée
Transformer Séquences, gros volumes Parallèle, dépendances très longues Gourmand en données et en calcul NLP, multimodal, modèles de fondation

Ce que j'en retiens

Le meilleur modèle n'est pas le plus complexe, c'est celui qui épouse la structure du problème sous contrainte réelle. Sur mon projet de prédiction de consommation électrique, sept approches ont été comparées honnêtement : c'est finalement XGBoost, et non un réseau récurrent, qui s'est révélé le plus performant et le plus économe — preuve que connaître les architectures de Deep Learning sert aussi à savoir quand ne pas les utiliser. Choisir, c'est d'abord comprendre.

Brouillon de veille — schémas et contenu à relire, enrichir et sourcer par Pol avant publication.