Residual Connection
iaDéfinition
La Residual Connection (connexion résiduelle, ou skip connection) est une technique d'architecture de réseau de neurones introduite par He et al. dans les ReseNets (2015) et adoptée universellement dans les Transformers. Son principe est simple : la sortie d'un sous-module (attention ou FFN) est additionnée à son entrée avant de passer à la couche suivante : x' = x + SubModule(x). Cette opération apparemment simple résout un problème fondamental du deep learning : le vanishing gradient. Dans les réseaux profonds (plus de ~10 couches), le gradient backpropagé se multiplie par la dérivée de chaque couche, ce qui le fait converger vers zéro (ou exploser). La connexion résiduelle crée un "autoroute gradient" : ∂L/∂x = ∂L/∂x' × (1 + ∂SubModule/∂x), garantissant que le gradient peut toujours traverser le réseau même si les couches intermédiaires s'annulent. Dans les LLMs modernes avec 32, 64 ou même 128 couches (GPT-4 serait à ~120 couches), les residual connections sont absolument indispensables à l'entraînabilité. Couplées avec Pre-LayerNorm/Pre-RMSNorm, elles permettent d'entraîner des modèles de cette profondeur de manière stable. D'un point de vue théorique, les connexions résiduelles permettent d'interpréter un Transformer comme un ensemble d'algorithmes itératifs de raffinement : à chaque couche, le résidu représente la "mise à jour" appliquée à la représentation courante. Cette perspective est centrale dans l'interprétabilité mécaniste des LLMs (residual stream framework de Anthropic/Elhage et al.).
Le Residual Stream Framework
Elhage et al. (2021) "A Mathematical Framework for Transformer Circuits" décrivent les Transformers comme opérant sur un "residual stream" : un espace vectoriel commun que chaque couche lit et écrit. Cette vision est devenue fondamentale pour l'interprétabilité :
- Chaque tête d'attention lit des sous-espaces du residual stream via Q, K, V
- Chaque tête écrit sa contribution via la projection O
- Le FFN lit et écrit également dans le même espace
Connexion avec la profondeur des modèles
| Modèle | Couches | d_model |
|---|---|---|
| LLaMA 3 8B | 32 | 4096 |
| LLaMA 3 70B | 80 | 8192 |
| DeepSeek V3 (MoE) | 61 | 7168 |
| GPT-4 (estimé) | ~120 | ~12288 |
Diagnostic d'instabilité
# Vérifier la norme des gradients résidus pendant l'entraînement
for name, param in model.named_parameters():
if param.grad is not None and 'norm' in name:
print(f"{name}: grad_norm={param.grad.norm().item():.4f}")
# Si grad_norm → 0 : vanishing gradient malgré residuals → LR trop faible
# Si grad_norm → ∞ : gradient explosion → activer gradient clipping
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h