Chapitre 2: R Eseaux de Neuronnes Convolutifs CNN: Deep Learning
Chapitre 2: R Eseaux de Neuronnes Convolutifs CNN: Deep Learning
EST Essaouira
IDSD2
2025-2026
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
1 Introduction
2 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
3 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
4 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
5 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
6 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
7 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
8 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Image processing
9 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Exemples Concrets
Reconnaissance d’animaux : Chat vs
Chien vs Oiseau
Identification de plantes : Espèces
végétales Output : ”Chat” (95%)
Tri de photos : Paysage vs Portrait vs Défis
Nourriture
Variations d’éclairage, angle,
Classe Probabilité arrière-plan (Qualité d’image)
Chat 0.95 Classes similaires (ex : races de
Chien 0.03 chiens)
Oiseau 0.02 Généralisation sur nouvelles
classes
10 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Définition
Localiser et identifier plusieurs objets dans une image en dessinant
des boı̂tes englobantes (bounding boxes).
Exemples Concrets
Sécurité : Détection de personnes dans un
bâtiment
Transport : Véhicules et piétons dans la
rue
Agriculture : Détection de mauvaises
herbes
Défis
Échelle variable des objets
Occlusions (objets cachés) Détection d’objets
11 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Applications
Sécurité : Déverrouillage
smartphone
Contrôle d’accès : Bâtiments,
aéroports
Photo : Tagging automatique Points faciaux
(Facebook)
Personne Score
Mohammad 0.95
Défis Techniques et Éthiques
Yahya 0.12
Variations : éclairage, pose, âge Naela 0.08
Biais ethniques et démographiques 13 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
14 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
1 Introduction
15 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Convolution
16 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
17 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
18 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Pour le calcul des coefficients sur les bords, on rajoute des zéros
virtuels à gauche et à droite de la liste d’entrée.
19 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
20 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Un neurone de convolution
21 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
22 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
23 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
24 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
25 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
26 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
27 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
28 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
29 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
30 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
31 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
32 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
33 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Stride
34 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Stride = 1 Stride = 2
(0,0) (0,1) (0,2) (0,3) (0,4) (0,0) (0,1) (0,2) (0,3) (0,4)
(1,0) (1,1) (1,2) (1,3) (1,4) (1,0) (1,1) (1,2) (1,3) (1,4)
(2,0) (2,1) (2,2) (2,3) (2,4) (2,0) (2,1) (2,2) (2,3) (2,4)
(3,0) (3,1) (3,2) (3,3) (3,4) (3,0) (3,1) (3,2) (3,3) (3,4)
(4,0) (4,1) (4,2) (4,3) (4,4) (4,0) (4,1) (4,2) (4,3) (4,4)
Remarque
Avec stride=2, on ne calcule que 4 positions au lieu de 9 → réduction de 55%
des calculs !
36 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
11 + 12 + · · · + 22 + 23 13 + 14 + · · · + 24 + 25
9 9
153 171
= = 17 = = 19
9 9
Feature Map Résultante - Stride=2
7 9
17 19
38 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Pooling
39 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Pooling
40 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Max Pooling
Troisième fenêtre (2,0) à (3,1) Quatrième fenêtre (2,2) à (3,3)
1 3 2 1 1 3 2 1
4 2 7 3 4 2 7 3
2 1 5 2 2 1 5 2
3 6 1 4 3 6 1 4
Max = 6 Max = 5
Valeurs : 2, 1, 3, 6 → Maximum = 6 Valeurs : 5, 2, 1, 4 → Maximum = 5
Remarque
Entrée 4×4 = 16 valeurs → Sortie 2×2 = 4 valeurs
Réduction de 75% de la dimension
Préservation des activations les plus fortes (4, 7, 6, 5)
41 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Average Pooling
Average Pooling
Troisième fenêtre (2,0) à (3,1) Quatrième fenêtre (2,2) à (3,3)
1 3 2 1 1 3 2 1
4 2 7 3 4 2 7 3
2 1 5 2 2 1 5 2
3 6 1 4 3 6 1 4
2+1+3+6 5+2+1+4
Moyenne = = 3.0 Moyenne = = 3.0
4 4
Feature Map Résultante - Average Pooling
2.5 3.25
Sortie =
3.0 3.0
44 / 73
PLAN Introduction Les opérations de Convolution Réseaux de Convolution
neurones convolutifs
Stride Pooling
Global Pooling
Global Max Pooling
Avantages du Global Pooling
1 3 2 1
4 Réduction drastique des paramètres
2 7 3
Entrée =
Évite l’overfitting
2 1 5 2
3 6 1 4 Invariance spatiale complète
Accepte entrées de taille variable
Max Global = 7
Global Average Pooling Utilisation Typique
47 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
1 Introduction
48 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Réseaux de neurones
convolutifs
49 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Bloc de convolution
Entrée −→ (Conv, Activ, Pool) −→ Flattening −→ FC
Flattening
Transformer un tenseur 3D en un vecteur 1D
50 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
51 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
f (x) = max(0, x)
52 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
4-Pooling :
Réduction de dimension.
MaxPooling
AveragePooling
5-Flatten et Dense :
Flatten : transforme la matrice en vecteur
Dense : classification finale
6-Dernière couche :
Softmax (multi-classes)
Sigmoid (binaire)
53 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Exemple d’CNN
54 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Couche de convolution
55 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Fonction d’activation
56 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Pooling
57 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
58 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
59 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Architecture :
Architecture fondatrice : convolution → pooling → convolution → pooling →
FC
Entraı̂nement par rétropropagation
Couche C1 : 6 filtres 5×5 → 6 feature maps 28×28
Couche S1 : Pooling 2×2 → 6 feature maps 14×14
Couche C2 : 16 filtres 5×5 → 16 feature maps 10×10
Couche S2 : Pooling 2×2 → 16 feature maps 5×5
Couche C3 : 120 filtres 5×5 → 120 vecteurs
Couche F1 : 84 neurones fully-connected
60 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Entraı̂nement d’ un CNN
1 Forward propagation
2 Calcul de la perte
3 Backpropagation
4 Mise à jour des poids
61 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Back Propagation
62 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Exemple Simplifié
Image : Chat (classe 3/10)
Prédiction : [0.1, 0.2, 0.05, 0.6, 0.02, ...]
Perte (Cross-Entropy) : − log(0.6) ≈ 0.51
Objectif : Augmenter la probabilité de 0.6 à 1.0
Étapes de Rétropropagation
∂L
1 Calculer ∂ ŷ
= (prédiction - cible)
∂L
2 Propager vers les couches denses : ∂Wdense
∂L
3 Propager vers les couches de convolution : ∂Wfiltres
∂L
4 Mettre à jour les poids : W = W − η ∂W
63 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Exemple Numérique
0.1 0.2 0.3
Filtre initial : 0.4 0.5 0.6, Gradient calculé :
0.7 0.8 0.9
0.01 0.02 0.01
0.02 0.03 0.02
0.01 0.02 0.01
Taux d’apprentissage η = 0.01
Nouveau filtre : initial − η× gradient
64 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
65 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
66 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Complexité du modèle −→
Compromis biais-variance : Un bon modèle minimise
simultanément l’erreur sur les données d’entraı̂nement et
de test.
67 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Exemple de Sous-Apprentissage
Scénario
Classification de chiffres manuscrits (MNIST) avec un modèle trop
simple :
Données : 60 000 images de chiffres (0–9)
Architecture choisie : CNN avec 1 seule couche conv. (4 filtres
3×3)
Résultat : Performance médiocre dès le départ
Résultats observés
Avant Après
Flatten + Dense
Sortie 10 cl.
70 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Indicateurs
Accuracy entraı̂nement ≈ 100 %, test ≪ entraı̂nement
L’erreur d’entraı̂nement continue de baisser, l’erreur de validation stagne
ou remonte
Les poids du réseau prennent des valeurs très grandes
Causes Fréquentes
Modèle trop complexe par rapport à la taille du dataset
Dataset trop petit ou peu varié
71 / 73
PLAN Introduction Les opérations de Convolution Réseaux de neurones convolutifs
Sous-apprentissage Sur-apprentissage
Entraı̂n. Entraı̂n.
2 Valid. 2 Valid.
Divergence
(sur-appr.)
Perte
Perte
1 1
Les deux courbes
restent élevées
0 0
0 10 20 30 40 50 0 10 20 30 40
Époques Époques