Skip to content

Réseaux de neurones et apprentissage profond

Préface

Les réseaux de neurones sont le moteur de la révolution de l'IA. De la compréhension du langage de ChatGPT à la reconnaissance d'images de la conduite autonome, ce sont les réseaux de neurones qui travaillent en coulisses. Ce n'est pas de la magie, mais un cadre mathématique élégant — qui « apprend » la relation de correspondance entre l'entrée et la sortie à travers de grandes quantités de données. Comprendre ses principes fondamentaux vous aidera à mieux utiliser et déboguer les outils d'IA.

Qu'allez-vous apprendre dans cet article ?

Après avoir étudié ce chapitre, vous obtiendrez :

  • Concepts fondamentaux : comprendre les principes de base des neurones, des couches, de la propagation avant et de la rétropropagation
  • Types de réseaux : connaître les caractéristiques et les scénarios d'application des architectures principales comme CNN, RNN, Transformer
  • Processus d'entraînement : comprendre comment le modèle « apprend » à partir des données
  • Techniques clés : maîtriser des concepts pratiques comme le surapprentissage, le taux d'apprentissage, la régularisation
  • Évolution historique : comprendre le parcours du perceptron aux grands modèles de langage
ChapitreContenuConcepts clés
Chapitre 1Du neurone au réseauPerceptron, fonction d'activation, propagation avant
Chapitre 2Comment le réseau apprendFonction de perte, descente de gradient, rétropropagation
Chapitre 3Architectures de réseaux principalesCNN, RNN, Transformer
Chapitre 4L'art de l'entraînementSurapprentissage, régularisation, optimisation des hyperparamètres
Chapitre 5Historique et frontièresDu perceptron à GPT

1. Du neurone au réseau

Le neurone individuel

La plus petite unité d'un réseau de neurones est le neurone (Neuron). Il simule le fonctionnement d'un neurone biologique : il reçoit plusieurs signaux d'entrée, les somme de manière pondérée, et produit une sortie via une fonction d'activation.

Entrée x1 ──→ ×w1 ──┐
Entrée x2 ──→ ×w2 ──┼──→ Σ(somme pondérée) + b(biais) ──→ f(fonction d'activation) ──→ Sortie
Entrée x3 ──→ ×w3 ──┘

Expression mathématique : y = f(w₁x₁ + w₂x₂ + w₃x₃ + b)

How a Neuron Works
Adjust inputs and weights to see how the neuron output changes
Input × Weight
0.5
×
0.8
=0.40
-0.3
×
1.2
=-0.36
0.7
×
-0.5
=-0.35
Weighted sum + bias (0.1)
-0.21
Activation: Sigmoid
0.4477
0.1

Fonction d'activation : pourquoi la non-linéarité est-elle nécessaire ?

Sans fonction d'activation, quel que soit le nombre de couches de neurones empilées, le résultat final est équivalent à une transformation linéaire (multiplication matricielle). La fonction d'activation introduit la non-linéarité, permettant au réseau d'apprendre des motifs complexes.

Fonction d'activationFormuleCaractéristiquesScénario d'utilisation
ReLUmax(0, x)Simple, efficace, entraînement rapideChoix par défaut pour les couches cachées
Sigmoid1/(1+e⁻ˣ)Sortie 0~1Couche de sortie pour classification binaire
Tanh(eˣ-e⁻ˣ)/(eˣ+e⁻ˣ)Sortie -1~1Couramment utilisé dans les RNN
Softmaxeˣᵢ/ΣeˣⱼSortie distribution de probabilitéCouche de sortie pour classification multi-classe

Du neurone au réseau

Organiser plusieurs neurones en couches, et connecter plusieurs couches en série, constitue un réseau de neurones :

Couche d'entrée    Couche cachée 1   Couche cachée 2   Couche de sortie
(caractéristiques) (extraction bas niveau) (extraction haut niveau) (prédiction)

 x1 ──→  [○ ○ ○ ○] ──→ [○ ○ ○] ──→  [○ ○]
 x2 ──→  [○ ○ ○ ○] ──→ [○ ○ ○] ──→  chat/chien
 x3 ──→  [○ ○ ○ ○] ──→ [○ ○ ○]
ConceptDescription
Couche d'entréeReçoit les données brutes (pixels d'image, vecteurs de texte, etc.)
Couche cachéeCouche de traitement intermédiaire, plus il y a de couches, plus le réseau est « profond » (le « profond » de l'apprentissage profond)
Couche de sortieProduit la prédiction finale (probabilité de classification, valeur de régression, etc.)
Propagation avantProcessus de circulation des données de la couche d'entrée vers la couche de sortie

Pourquoi parle-t-on d'apprentissage « profond » ?

L'apprentissage automatique traditionnel n'a généralement que 1 à 2 couches. Quand le nombre de couches cachées atteint des dizaines, voire des centaines, on parle d'apprentissage « profond ». Les réseaux plus profonds peuvent apprendre des caractéristiques plus abstraites : la première couche apprend les contours, la deuxième les textures, la troisième les parties, et les couches plus profondes apprennent « c'est un chat ».


2. Comment le réseau apprend

L'« apprentissage » d'un réseau de neurones est essentiellement un problème d'optimisation : trouver un ensemble de poids (w) et de biais (b) tel que les prédictions du réseau soient aussi proches que possible des réponses réelles.

Les trois étapes de l'entraînement

1. Propagation avant : entrer les données, obtenir la prédiction
2. Calcul de la perte : mesurer l'écart entre la prédiction et la valeur réelle avec la fonction de perte
3. Rétropropagation : calculer le gradient de chaque poids en fonction de la perte, mettre à jour les poids

Répéter les étapes ci-dessus jusqu'à ce que la perte soit suffisamment petite

Fonction de perte : mesurer « à quel point on s'est trompé »

La fonction de perte (Loss Function) quantifie l'écart entre la valeur prédite et la valeur réelle. L'objectif de l'entraînement est de minimiser la perte.

Fonction de perteFormule résuméeScénario applicable
MSE (Erreur quadratique moyenne)Moyenne des carrés des écarts entre prédiction et valeur réelleProblèmes de régression
Cross-Entropy (Entropie croisée)-Σ y·log(ŷ)Problèmes de classification
Binary Cross-EntropyVersion binaire de l'entropie croiséeProblèmes de classification binaire

Descente de gradient : trouver le point le plus bas

Imaginez que vous êtes au sommet d'une montagne, les yeux bandés, et que vous devez atteindre le point le plus bas. Tout ce que vous pouvez faire est de tâter la pente sous vos pieds, puis faire un pas dans la direction descendante. C'est la descente de gradient.

Valeur de perte

  │    ╱╲
  │   ╱  ╲      ← Position actuelle
  │  ╱    ╲    ↙ Descente dans la direction du gradient
  │ ╱      ╲╱   ← Minimum local
  │╱            ╲╱  ← Minimum global
  └──────────────→ Valeur des poids
ConceptDescription
GradientDérivée partielle de la fonction de perte par rapport à chaque poids, indiquant « dans quelle direction ajuster pour réduire la perte »
Taux d'apprentissageQuelle distance parcourir à chaque pas. Trop grand, on dépasse le point le plus bas ; trop petit, la convergence est trop lente
Taille de batchCombien d'échantillons utiliser pour calculer le gradient à chaque fois. Le lot complet est trop lent, l'échantillon unique est trop instable, le mini-batch est un compromis

Rétropropagation : le triomphe de la règle de chaîne

La rétropropagation (Backpropagation) est un algorithme efficace pour calculer les gradients. Elle utilise la règle de chaîne du calcul différentiel pour calculer, couche par couche en partant de la sortie, la contribution de chaque poids à la perte.

Propagation avant : Entrée → Couche cachée 1 → Couche cachée 2 → Sortie → Perte
Rétropropagation : Perte → Sortie → Couche cachée 2 → Couche cachée 1 → Mise à jour de tous les poids

Compréhension intuitive de la rétropropagation

Imaginez le réseau de neurones comme une chaîne de montage. Le produit (prédiction) a un défaut (perte élevée), vous devez remonter la chaîne depuis la dernière étape, examiner la contribution de chaque étape (chaque couche de poids) au problème final, puis ajuster proportionnellement. Grande contribution = grand ajustement, petite contribution = petit ajustement.


3. Architectures de réseaux principales

Différents types de données nécessitent différentes architectures de réseau. Choisir la bonne architecture permet de multiplier l'efficacité.

Common Neural Network Layer Types
Click a layer to inspect its role and parameters
Dense layer
Each neuron connects to every neuron in the previous layer. This is the most basic layer type and learns combinations of input features.
units (number of neurons)activation
Output layers for classification or regression, and simple feature extraction
Dense(128, activation="relu")

3.1 CNN (Réseau de neurones convolutifs)

Le CNN est le roi du traitement d'images. Idée centrale : faire glisser de petits noyaux de convolution sur l'image pour extraire des caractéristiques locales.

Image d'entrée → [Convolution→Activation→Pooling] × N → Couche fully connected → Sortie
  28×28            Extraction contours/textures/formes           Résultat de classification
CaractéristiqueDescription
Connexion localeChaque neurone ne regarde qu'une petite région, pas l'image entière
Partage de paramètresLe même noyau de convolution est réutilisé sur toute l'image, réduisant considérablement les paramètres
Invariance par translationLe chat est reconnu qu'il soit à gauche ou à droite de l'image
Caractéristiques hiérarchiquesLes couches superficielles apprennent les contours, les couches profondes la sémantique

Modèles représentatifs : LeNet, AlexNet, VGG, ResNet, EfficientNet

3.2 RNN (Réseau de neurones récurrents)

Le RNN est conçu pour les données séquentielles. Son état caché est transmis au pas de temps suivant, donnant au réseau une capacité de « mémoire ».

Pas de temps t1    Pas de temps t2    Pas de temps t3
  "Je"   ──→     "aime"    ──→     "les chats"
   ↓               ↓               ↓
  [h1]   ──→     [h2]     ──→     [h3] ──→ Sortie
   ↑               ↑               ↑
  L'état caché est transmis entre les pas de temps (mémoire)
VarianteProblème résoluMécanisme central
RNN originalModélisation de séquence de baseConnexion récurrente simple
LSTMDisparition du gradient dans les longues séquencesPorte d'oubli, porte d'entrée, porte de sortie
GRULSTM a trop de paramètresSimplifié en porte de réinitialisation et porte de mise à jour
RNN bidirectionnelNe peut voir que le passéTraite simultanément dans les deux sens

Le mécanisme de portes du LSTM

L'ingéniosité du LSTM réside dans ses trois « portes » : la porte d'oubli décide quels anciens souvenirs jeter, la porte d'entrée décide quelles nouvelles informations stocker, la porte de sortie décide quel contenu produire. C'est comme quand vous lisez un livre, vous retenez sélectivement les intrigues importantes et oubliez les détails sans importance.

3.3 Transformer : l'attention est tout

En 2017, Google a publié l'article « Attention Is All You Need » proposant le Transformer, qui a complètement changé le domaine de l'IA. Il remplace la structure récurrente par le mécanisme d'auto-attention et constitue la base des grands modèles comme GPT, BERT, Claude.

Séquence d'entrée → Embedding + Encodage positionnel → [Attention multi-têtes → Feed-Forward] × N → Sortie

                          Chaque mot peut « voir » tous les autres mots
AvantageDescription
Calcul parallèleContrairement au RNN qui doit traiter pas à pas, le Transformer peut traiter toute la séquence en parallèle
Dépendance longue distanceÉtablit une connexion directe entre deux positions quelconques, sans limitation de distance
ExtensibilitéPlus le modèle est grand, plus il y a de données, meilleurs sont les résultats (Scaling Law)

Intuition de l'auto-attention : en lisant la phrase « Le chat s'est assis sur le tapis parce qu'il était fatigué », « il » doit se référer au « chat » pour comprendre le sens. L'auto-attention permet au modèle d'apprendre cette association — en calculant un « score de pertinence » pour chaque paire de mots dans la séquence.

Common Neural Network Architectures
Click to inspect each architecture, its characteristics, and applications
Feedforward neural network(FNN)
1958
The most basic neural network structure. Data flows one way from the input layer through hidden layers to the output layer, with no recurrence. Neurons in each layer connect to all neurons in the next layer.
Network structure
Input layer Hidden layers ×N Output layer
Typical applications
ClassificationRegressionFunction approximation
Key idea:Map inputs to outputs through multiple nonlinear transformations. More layers can represent more complex functions.

4. L'art de l'entraînement

Avoir une bonne architecture ne suffit pas, il y a de nombreux « pièges » à éviter pendant l'entraînement.

4.1 Surapprentissage vs Sous-apprentissage

ProblèmeManifestationCauseSolution
SurapprentissageBonnes performances sur l'ensemble d'entraînement, mauvaises sur l'ensemble de testModèle trop complexe, « apprend par cœur » au lieu de comprendre les régularitésRégularisation, Dropout, augmentation de données, arrêt précoce
Sous-apprentissageMauvaises performances sur les deux ensemblesModèle trop simple, ne peut pas apprendre les régularitésAugmenter la capacité du modèle, entraîner plus longtemps, meilleures caractéristiques
Erreur

  │ ╲  Erreur d'entraînement    Erreur de test  ╱
  │  ╲                                          ╱
  │   ╲─────────────────╱
  │     Sous-apprentissage ← Point optimal → Surapprentissage
  └──────────────────────────→ Complexité du modèle

4.2 Hyperparamètres clés

Les hyperparamètres sont des paramètres définis manuellement avant l'entraînement (pas appris par le modèle) :

HyperparamètreRôlePlage couranteConseil d'optimisation
Taux d'apprentissageAmplitude de mise à jour à chaque pas1e-5 ~ 1e-1L'hyperparamètre le plus important, commencer généralement à 1e-3
Taille de batchNombre d'échantillons par entraînement16 ~ 512Plus c'est grand, plus l'entraînement est stable, mais nécessite plus de mémoire
Nombre d'époques (Epoch)Nombre de parcours complets du jeu de données10 ~ 100+À utiliser avec l'arrêt précoce, s'arrêter quand la validation ne s'améliore plus
OptimiseurStratégie de mise à jour du gradientAdam, SGDAdam est le choix par défaut, SGD+momentum convient au réglage fin

4.3 Techniques de régularisation

Moyens courants pour prévenir le surapprentissage :

TechniquePrincipeUtilisation
DropoutDésactiver aléatoirement des neurones pendant l'entraînementGénéralement p=0,1~0,5
Décroissance des poidsAjouter une pénalité sur la taille des poids dans la fonction de perteRégularisation L2, λ=1e-4
Augmentation de donnéesAppliquer des transformations aléatoires aux données d'entraînement (retournement, recadrage, rotation)Indispensable pour les tâches d'image
Arrêt précoceArrêter l'entraînement quand la perte de validation ne diminue pluspatience=5~10
Batch NormalizationNormaliser la distribution d'entrée de chaque coucheAccélère la convergence, a un léger effet de régularisation

Règles empiriques pour l'entraînement

  1. Faire d'abord tourner tout le pipeline sur un petit jeu de données pour confirmer l'absence de bugs dans le code
  2. Commencer par le fine-tuning à partir d'un modèle pré-entraîné existant, plutôt que de s'entraîner de zéro
  3. Le taux d'apprentissage est l'hyperparamètre qui mérite le plus de temps d'optimisation
  4. Si la perte d'entraînement ne diminue pas, vérifier d'abord les données et le code, avant de remettre en cause le modèle

5. Historique et frontières

Le développement des réseaux de neurones a connu plusieurs « hivers » et « renaissances », chaque percée étant due à des innovations techniques clés.

AnnéeJalonPercée clé
1958PerceptronPremier modèle de réseau de neurones, ne pouvait traiter que des problèmes linéaires
1986Algorithme de rétropropagationA rendu possible l'entraînement de réseaux multicouches
1998LeNet (CNN)Le réseau convolutif a connu un grand succès en reconnaissance de chiffres manuscrits
2012AlexNetLe CNN profond a écrasé les méthodes traditionnelles sur ImageNet, explosion de l'apprentissage profond
2014GAN (Generative Adversarial Network)Deux réseaux s'entraînent de manière antagoniste, pouvant générer des images réalistes
2017Transformer« Attention Is All You Need », le mécanisme d'attention remplace le RNN
2018BERTParadigme pré-entraînement + fine-tuning, percée complète en NLP
2020GPT-3175 milliards de paramètres, démontre les capacités émergentes des grands modèles
2022ChatGPTTechnique d'alignement RLHF, l'IA entre dans la conscience du grand public
2023+Grands modèles multimodauxGPT-4V, Claude, etc., comprennent simultanément le texte et l'image

Tendances actuelles

DirectionDescription
Grands modèles (LLM)Paramètres de centaines de millions à des milliers de milliards, émergence de capacités de raisonnement et de programmation
MultimodalUn même modèle traite le texte, l'image, l'audio, la vidéo
Fine-tuning efficaceDes techniques comme LoRA, QLoRA permettent aux développeurs ordinaires de fine-tuner les grands modèles
Agent IAPermettre aux grands modèles d'utiliser des outils, de planifier des tâches, d'accomplir des objectifs complexes de manière autonome
Distillation de petits modèlesUtiliser les connaissances des grands modèles pour entraîner de petits modèles, déployables sur les appareils edge

Leçon pour les développeurs

Vous n'avez pas besoin d'entraîner des réseaux de neurones à partir de zéro. Le développement IA moderne consiste davantage à appeler des API (comme OpenAI, Claude API) ou à fine-tuner des modèles pré-entraînés (comme avec Hugging Face). Mais comprendre les principes sous-jacents vous aide à mieux choisir les modèles, concevoir les prompts et diagnostiquer les problèmes.


Résumé

Concept fondamentalEn une phrase
NeuroneSomme pondérée + fonction d'activation, la plus petite unité de calcul du réseau
Propagation avantLes données circulent de la couche d'entrée vers la couche de sortie, produisant une prédiction
RétropropagationÀ partir de la perte, calcule les gradients couche par couche, met à jour les poids
CNNLes noyaux de convolution extraient les caractéristiques locales, premier choix pour le traitement d'images
RNN/LSTMConnexion récurrente maintenant la mémoire, traitement de données séquentielles
TransformerAuto-attention avec traitement parallèle, architecture de base des grands modèles
SurapprentissageLe modèle « apprend par cœur », prévenir avec régularisation, Dropout, etc.
Apprentissage par transfertS'appuyer sur les épaules des géants, utiliser des modèles pré-entraînés pour le fine-tuning

Lectures complémentaires