Vous êtes sur la page 1sur 57

Entraînement d’un réseau neuronal

Réseaux de Neurones Convolutifs (CNNs)

Deep Learning
Explorer les frontières du Machine Learning

Pr. Mounia MIKRAM

Ecole des Sciences de l’Information

2023-2024

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Introduction à l’Apprentissage Supervisé


Pourquoi l’Apprentissage Supervisé?
Fondation de nombreux systèmes d’IA: permet aux modèles de
généraliser à partir d’exemples annotés.
Objectif: Automatisation de tâches de décision ou de prédiction
précédemment effectuées par des humains.
Applications de l’Apprentissage Supervisé:
Classification:
Exemple: Détection de spams dans les emails.
Le modèle apprend à catégoriser les emails en "Spam" ou "Non-Spam"
basé sur des exemples étiquetés.
Régression:
Exemple: Estimation du prix des maisons.
Le modèle prédit une valeur continue (prix) en fonction des
caractéristiques des maisons (taille, localisation, etc.).
Importance pour les Réseaux Neuronaux:
Les réseaux neuronaux sont des approximateurs universels de
fonctions; l’apprentissage supervisé les aide à trouver la "meilleure"
fonction pour une tâche donnée.
Exemple clé: Reconnaissance d’images - apprendre à identifier des
objets dans des images en se basant sur des ensembles d’images
annotées (chats, chiens, etc.).
Préparez-vous à:
Voir comment ces concepts s’appliquent dans l’entraînement des
réseaux neuronaux.
Découvrir les étapes spécifiques et les défis de l’entraînement de ces
modèles complexes.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Propagation Avant (Forward Propagation)

Processus de transformation des entrées en sorties en utilisant


les poids actuels du réseau.
Illustration mathématique de la propagation des signaux à
travers les couches.
Importance de la non-linéarité introduite par les fonctions
d’activation.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Transformation des Entrées en Sorties


Chaque entrée (ou feature) est associée à un poids, reflétant son
importance relative dans le modèle.
Pour un neurone donné, le signal d’entrée est transformé par une
somme pondérée :

z = w1 x1 + w2 x2 + ... + wn xn + b

où wi est le poids associé à l’entrée xi , et b est le biais.


Les matrices de poids représentent ces coefficients pour l’ensemble du
réseau, avec une matrice par couche.
La taille de la matrice de poids entre deux couches est déterminée par
le nombre de neurones dans chaque couche.
Exemple de matrice de poids pour une couche :
 
w11 w12 · · · w1m
w21 w22 · · · w2m 
W = .
... ... 
 
 .. ..
. 
wn1 wn2 · · · wnm

où n est le nombre de neurones dans la couche précédente, et m est le


nombre de neurones dans la couche actuelle.
Pour visualiser l’architecture, on peut utiliser un diagramme où les
cercles représentent les neurones et les lignes représentent les poids.
Lors de la visualisation, les flèches peuvent indiquer la direction de la
circulation des données à travers le réseau, montrant comment les
entrées sont transformées en sorties à chaque étape.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Transformation des Entrées en Sorties


Les entrées sont multipliées par des poids correspondants pour chaque
connexion neuronale.
Les valeurs des entrées et des poids pour notre réseau exemple sont:
Entrées: x1 = 1.0, x2 = 0.5
Poids: w11 = w21 = 0.5, w12 = w22 = 0.3, w1 = 0.8, w2 = 0.7
Biais: b1 = 0.1, b2 = −0.1
Le signal d’entrée pour chaque neurone est calculé comme une somme
pondérée avec un biais.
Par exemple, le signal entrant au neurone h1 est:

zh1 = (x1 · w11 ) + (x2 · w21 ) + b1

Calcul:
zh1 = (1.0 · 0.5) + (0.5 · 0.5) + 0.1 = 0.75
Après la somme pondérée, les signaux sont passés à travers une
fonction d’activation (non montrée ici) avant d’être envoyés au
neurone suivant.
La sortie finale du réseau (yb ) est également calculée par une somme
pondérée des sorties des neurones cachés, après activation, et des
poids de la couche de sortie.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Rétropropagation (Backpropagation)

Méthodologie pour calculer le gradient de la fonction de coût


par rapport à chaque poids.
Implication de la rétropropagation dans la mise à jour des
poids.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Calcul du Gradient dans la Rétropropagation

Le gradient quantifie la variation de la fonction de coût J(θ)


par rapport à un changement dans les poids θ.
Pour chaque poids θi , le gradient correspond à la dérivée
∂J
partielle de J(θ) par rapport à θi , noté ∂θ i
.
Le calcul se fait en considérant l’effet de θi sur chaque couche
à partir de la sortie jusqu’à la couche d’entrée, en utilisant la
règle de la chaîne.
Cette approche permet de comprendre dans quelle direction et
de quelle quantité ajuster θi pour réduire l’erreur de prédiction.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Descente de Gradient

Présentation de la descente de gradient comme algorithme


d’optimisation fondamental pour l’entraînement de réseaux
neuronaux.
Discussion des étapes de la descente de gradient - calcul du
gradient, mise à jour des poids.
Variations de l’algorithme de descente de gradient et leurs
implications pratiques.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Introduction à la Descente de Gradient

La descente de gradient est un algorithme d’optimisation


utilisé pour minimiser la fonction de coût J(w ) en ajustant les
paramètres du modèle w .
Le taux d’apprentissage α détermine la taille des pas dans la
mise à jour des poids et est crucial pour l’efficacité de
l’apprentissage.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Étapes de la Descente de Gradient


Calcul du Gradient:
Le gradient représente la pente de la fonction de coût J(w )
par rapport aux poids w .
∂J
Pour chaque poids wi , on calcule la dérivée partielle ∂w i
.
Ces dérivées forment un vecteur gradient qui pointe dans la
direction de la plus forte augmentation de J(w ).
Mise à Jour des Poids:
Les poids sont ajustés dans la direction opposée au gradient
pour minimiser J(w ).
La mise à jour est effectuée selon w := w − α∇J(w ), où α est
le taux d’apprentissage.
La taille de l’étape dépend du taux d’apprentissage et de la
magnitude du gradient.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Vocabulaire de l’Apprentissage des Réseaux de Neurones


Batch: Un ensemble d’exemples de formation utilisés dans
une seule itération de mise à jour des poids.
Batch complet: Utilise l’ensemble de données complet pour
une mise à jour.
Mini-batch: Utilise un sous-ensemble des données pour
accélérer l’apprentissage.
Stochastic: Un seul exemple est utilisé par mise à jour.
Itération: Une seule mise à jour des poids du réseau de
neurones.
Époque: Une passe complète à travers l’ensemble de données
d’entraînement. Constituée de nombreuses itérations.
Taux d’apprentissage (Learning Rate): Le pas de mise à
jour des poids pendant la descente de gradient. Influence la
vitesse de convergence.
Convergence: Le processus d’atteindre
Pr. Mounia MIKRAM Deep Learning
un minimum local ou
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Descente de Gradient Batch

Définition: Utilisation de l’ensemble de données complet pour


chaque mise à jour de poids.
Avantages:
Calcul du gradient précis.
Convergence stable vers le minimum global pour les fonctions
de coût convexes.
Inconvénients:
Calculs intensifs pour de grands ensembles de données.
Mises à jour des poids moins fréquentes, entraînement plus
long.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Descente de Gradient Stochastique (SGD)

Définition: Mise à jour des poids pour chaque exemple


d’entraînement individuellement.
Avantages:
Mises à jour fréquentes des poids, ce qui peut accélérer
l’apprentissage.
Peut aider à échapper aux minima locaux dans des fonctions
de coût non convexes.
Inconvénients:
Variabilité élevée des mises à jour, ce qui peut conduire à une
convergence erratique.
Potentiellement moins précis par rapport à l’utilisation de
l’ensemble complet de données.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Descente de Gradient Mini-Batch

Définition: Utilisation d’un sous-ensemble d’exemples pour


chaque mise à jour de poids.
Avantages:
Équilibre entre la précision de la mise à jour et la vitesse
d’apprentissage.
Réduit la variance des mises à jour par rapport à SGD, tout en
permettant une convergence plus rapide que Batch.
Inconvénients:
Requiert la sélection de la taille de mini-batch optimale.
Peut être sensible au choix du taux d’apprentissage.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Comparaison des Variantes de Descente de Gradient


Caractéristique Batch Gradient Descent Stochastic Gradient De- Mini-batch Gradient De-
scent (SGD) scent
Fonction de coût J Souvent définie
Pm comme Mean Squared Error (MSE):
1 (i) (i) 2
J(θ) = 2m i=1 (ŷ − y ) , où m est le nombre
total d’exemples, ŷ (i) est la prédiction du modèle pour
l’exemple i, et y (i) est la valeur réelle.
Mise à jour des poids θ := θ − η∇θ J(θ) pour tout θ := θ − η∇θ J(θ, x (i) , y (i) ) θ := θ −
le jeu de données. pour chaque exemple η∇θ J(θ, Xmini-bat , Ymini-bat )
(x (i) , y (i) ). pour chaque mini-lot.
Vitesse de convergence Lent Rapide Modérée
Utilisation de la mémoire Élevée Faible Modérée
Stabilité de convergence Stable Fluctuant Relativement stable
Parallélisation Faible Faible Bonne
Optimal pour Petits jeux de données Grands jeux de données Très grands jeux de données
Choix de taille de lot N/A (tout le jeu de données) N/A (un seul exemple) Variable
Exigence de mémoire Élevée Faible Variable
Facilité de convergence Prévisible Imprévisible Relativement prévisible
Sensibilité au choix du taux d’apprentissage Moins sensible Très sensible Sensible

Table: Comparaison entre Batch Gradient Descent, Stochastic Gradient Descent


(SGD), et Mini-batch Gradient Descent avec considération de la fonction de coût
J.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Processus Global d’Apprentissage


Vue d’ensemble du fonctionnement interne
Initialisation des Poids: Choix stratégique pour une convergence
efficace.
Initialisation Xavier, He, etc.
Propagation Avant: Transformation des entrées en sorties à travers
les couches.
Utilisation de fonctions d’activation pour introduire de la non-linéarité.
Calcul de la Fonction de Coût: Mesure de l’erreur entre les
prédictions et les valeurs réelles.
Entropie croisée, erreur quadratique moyenne, etc.
Backpropagation: Ajustement des poids en fonction de l’erreur
calculée.
Calcul des gradients et mise à jour des poids.
Optimisation: Choix de l’algorithme pour minimiser la fonction de
coût.
SGD, Momentum, Adam, etc.
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Pourquoi l’Initialisation des Poids est Cruciale ?


Importance et Techniques

Points Clés
Éviter la saturation des neurones au début de l’apprentissage.
Assurer une convergence rapide et efficace.

Techniques d’Initialisation
Initialisation Xavier: Pour les activations sigmoid/tanh.
Initialisation He: Pour les activations ReLU.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

La Propagation Avant: Le Cheminement des Données


De l’Entrée à la Sortie

Points Clés
Comment les données d’entrée sont transformées à chaque
couche.
L’importance de l’activation non linéaire.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Fonction de Coût
Définition et importance de la fonction de coût: La fonction de coût,
également connue sous le nom de fonction de perte, mesure à quel point
le modèle prédit bien les sorties pour un ensemble donné d’entrées. Elle
est centrale dans l’entraînement des modèles d’apprentissage machine,
servant à mettre à jour les paramètres du modèle pour minimiser la perte.
Introduction à quelques fonctions de coût courantes:
Erreur quadratique moyenne (Mean Squared Error, MSE): Utilisée
principalement dans les problèmes de régression, elle mesure la
moyenne des carrés des erreurs entre les prédictions du modèle et les
valeurs réelles.
Entropie croisée (Cross-Entropy): Communément utilisée dans les
tâches de classification, cette fonction de coût mesure la
dissimilarité entre la distribution prédite par le modèle et la
distribution réelle des étiquettes.
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Fonctions de Coût : Équations


Erreur quadratique moyenne (MSE):
m
1 X (i)
J(θ) = (ŷ − y (i) )2
2m
i=1

où:
m est le nombre d’échantillons
ŷ (i) est la prédiction du modèle pour l’échantillon i
y (i) est la valeur réelle pour l’échantillon i
θ sont les paramètres du modèle
Entropie croisée (Cross-Entropy):
m
1 X h (i) i
J(θ) = − y log(ŷ (i) ) + (1 − y (i) ) log(1 − ŷ (i) )
m
i=1

où:
m est le nombre d’échantillons
ŷ (i) est la probabilité prédite par le modèle que l’échantillon i appartient à la
classe positive
y (i) est la valeur réelle pour l’échantillon i (0 ou 1 pour la classification binaire)
θ sont les paramètres du modèle

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Backpropagation: L’Art d’Ajuster les Poids


Calcul du gradient de la fonction de coût J par rapport à
chaque poids w .
Utilisation de la règle de la chaîne pour la propagation des
erreurs à travers les couches.

Exemple de calcul du gradient


∂J ∂J ∂a(l+1) ∂z (l+1)
(l)
= · ·
∂wij ∂a(l+1) ∂z (l+1) ∂w (l)
ij

où a(l+1) est l’activation de la couche suivante, z (l+1) est le produit


(l)
somme pondéré, et wij est le poids connectant le neurone i dans
la couche l au neurone j dans la couche suivante.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Rétropropagation (Backpropagation)
Définition et Importance:
Définition: Une méthode pour calculer efficacement le gradient de la
fonction de coût par rapport à chaque poids en utilisant la règle de la
chaîne de calcul dérivé.
Importance: Permet une mise à jour efficace des poids lors de
l’apprentissage, en calculant les dérivées partielles de la fonction de
coût par rapport à chaque poids, à partir de la couche de sortie vers
les couches cachées.
Principe de Fonctionnement:
Propagation avant: Les entrées sont passées à travers le réseau pour
calculer les sorties et l’erreur (fonction de coût).
Propagation arrière: Utilisez l’erreur calculée et appliquez la règle de
la chaîne pour trouver les gradients par rapport à chaque poids, en
travaillant rétroactivement à partir de la couche de sortie.
Mise à Jour des Poids:
Une fois les gradients calculés, les poids sont mis à jour en utilisant la
règle de mise à jour de la descente de gradient.
Équation:
∂J
wnouveau = wancien − α
∂wancien
où α est le taux d’apprentissage et J est la fonction de coût.
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Structure du Réseau de Neurones

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Propagation Vers l’Avant et Calcul de l’Erreur


En utilisant les poids initiaux et les entrées données, la somme
pondérée et la sortie du neurone sont calculées comme suit :

Somme pondérée = (X1 ×W1 )+(X2 ×W2 )+b = (0.1×0.5)+(0.3×0.2)+1.83 = 1.94

1 1
Sortie = = ≈ 0.8744
1 + e −Somme pondérée 1 + e −1.94
La sortie désirée étant y , l’erreur est calculée en utilisant la
fonction d’erreur quadratique :
1 1
Erreur = (y − Sortie)2 = (0.03 − 0.8744)2 ≈ 0.3565
2 2
Cette erreur représente la différence entre la sortie prédite par le
réseau et la sortie réelle désirée. Elle sera utilisée pour guider la
mise à jour des poids et des biais lors de la rétropropagation.
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Calcul des Gradients pour la Mise à Jour des Poids


Le gradient de l’erreur par rapport à la sortie est donné par:
∂Erreur
= −(y − Sortie)
∂Sortie
Le gradient de la sortie par rapport à la somme pondérée (pour une
fonction d’activation sigmoïde) est:
∂Sortie
= Sortie · (1 − Sortie)
∂Somme pondérée
Le gradient de la somme pondérée par rapport aux poids est:
∂Somme pondérée ∂Somme pondérée
= 0.1, = 0.3
∂W1 ∂W2

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Calcul des Gradients pour la Mise à Jour des Poids (suite)

En utilisant la règle de la chaîne, les gradients de l’erreur par


rapport aux poids sont:

∂Erreur ∂Erreur ∂Sortie ∂Somme pondérée


= · ·
∂W1 ∂Sortie ∂Somme pondérée ∂W1

∂Erreur ∂Erreur ∂Sortie ∂Somme pondérée


= · ·
∂W2 ∂Sortie ∂Somme pondérée ∂W2

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Calcul du Gradient pour la Mise à Jour du Biais

Le gradient de la somme pondérée par rapport au biais est


simplement:
∂Somme pondérée
=1
∂b
En utilisant la règle de la chaîne, le gradient de l’erreur par rapport
au biais est:
∂Erreur ∂Erreur ∂Sortie ∂Somme pondérée
= · ·
∂b ∂Sortie ∂Somme pondérée ∂b

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Application Numérique des Gradients


Les valeurs numériques des gradients sont calculées comme suit:
∂Erreur
= −(0.03 − 0.874) = 0.844
∂Sortie
∂Sortie
= 0.874 × (1 − 0.874) = 0.110
∂Somme pondérée
∂Erreur
= 0.844 × 0.110 × 0.1 ≈ 0.0093
∂W1
∂Erreur
= 0.844 × 0.110 × 0.3 ≈ 0.0278
∂W2
∂Erreur
= 0.844 × 0.110 × 1 ≈ 0.0928
∂b
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Mise à Jour des Poids et du Biais

Les poids et le biais sont mis à jour en soustrayant une fraction des
gradients correspondants, multipliée par le taux d’apprentissage η:
∂Erreur
W1 = W1 − η ·
∂W1
∂Erreur
W2 = W2 − η ·
∂W2
∂Erreur
b =b−η·
∂b

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Mise à Jour des Poids et du Biais

Avec un taux d’apprentissage η = 0.01, les poids et le biais sont


mis à jour comme suit:

W1 = 0.5 − 0.01 × 0.0093 ≈ 0.4999

W2 = 0.2 − 0.01 × 0.0278 ≈ 0.1997


b = 1.83 − 0.01 × 0.0928 ≈ 1.8291

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Résumé des Étapes

Propagation vers l’avant pour obtenir la sortie.


Calcul de l’erreur.
Calcul des gradients pour les poids et le biais.
Mise à jour des poids et du biais en fonction des gradients et
du taux d’apprentissage.

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Réseau de Neurones avec Couche Cachée

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Résumé des Étapes et des Résultats Obtenus


Le processus d’apprentissage du réseau de neurones se décompose
en plusieurs étapes clés :
1 Propagation vers l’avant à travers la couche cachée jusqu’à la
sortie.
2 Calcul de l’erreur de sortie par rapport à la sortie désirée.
3 Rétropropagation de l’erreur pour calculer les gradients pour
chaque poids et biais.
4 Mise à jour des poids et biais en utilisant le taux
d’apprentissage pour minimiser l’erreur.
Les résultats numériques après une itération d’apprentissage sont :
Les valeurs mises à jour pour les poids et les biais (par
exemple, W5′ , W6′ , b3′ , etc.).
La valeur de l’erreur de sortie après la mise à jour des poids.
Une comparaison de la sortie avant et après la mise à jour
pour évaluer l’amélioration.
Il est important de noter que le processus peut nécessiter plusieurs
itérations pour converger vers une erreur minimale. L’apprentissage
est souvent réalisé en lots de données d’entraînement plutôt
qu’avec un seul exemple pour une généralisation plus robuste.
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

TD et TP

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Conclusion sur l’Algorithme de Backpropagation


Nous venons de voir comment fonctionne l’algorithme de backpropagation,
une pierre angulaire de l’apprentissage profond. Voici les points clés à
retenir :
Propagation avant : Les entrées sont transmises à travers le réseau
de neurones, couche par couche, jusqu’à la sortie.
Calcul de l’erreur : Une fois que nous obtenons la sortie, nous
calculons l’erreur en utilisant une fonction de coût.
Rétropropagation : Nous calculons les gradients de l’erreur par
rapport à chaque poids et biais en utilisant la règle de la chaîne de
calcul différentiel.
Mise à jour des paramètres : Nous utilisons les gradients calculés
pour mettre à jour les poids et les biais, généralement en utilisant une
méthode comme la descente de gradient stochastique (SGD).

Grâce à cet algorithme, les réseaux de neurones peuvent apprendre de


manière autonome, s’améliorant progressivement à travers l’expérience et
approchant ainsi toujours plus de la fonction cible souhaitée.
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Surapprentissage (Overfitting)

Définition du surapprentissage
Identification du surapprentissage
Courbes d’apprentissage
Validation croisée
Conséquences du surapprentissage sur les performances du
modèle

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Définition du Surapprentissage
Définition formelle
Le surapprentissage se produit lorsqu’un modèle apprend trop bien les
particularités du jeu de données d’entraînement, au détriment de sa
capacité à généraliser à partir de nouvelles données.
Causes du surapprentissage
Complexité du modèle : Un modèle avec un grand nombre de
paramètres est plus susceptible de surapprendre car il peut
"mémoriser" le jeu de données d’entraînement plutôt que d’apprendre
les véritables sous-jacents.
Bruit dans les données : Si le jeu de données d’entraînement
contient du bruit (erreurs, valeurs aberrantes, etc.), le modèle peut
apprendre ces erreurs comme s’il s’agissait de patterns valides.
Importance d’éviter le surapprentissage
Éviter le surapprentissage est crucial pour construire un modèle qui est
utile dans le monde réel, car il sera capable de bien fonctionner même
avec des données qu’il n’a jamais vues auparavant.
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Identification du Surapprentissage - Courbes d’Apprentissage


Définition des courbes d’apprentissage
Les courbes d’apprentissage illustrent la performance d’un modèle sur
les jeux de données d’entraînement et de validation pendant la phase
d’apprentissage. Elles sont généralement tracées en affichant l’erreur
ou la précision en fonction du nombre d’itérations ou d’époques
d’entraînement, offrant une vision du processus d’optimisation au fil du
temps. Ces courbes permettent d’évaluer et de diagnostiquer des
problèmes tels que le surapprentissage (overfitting) ou le
sous-apprentissage (underfitting), facilitant ainsi l’ajustement et
l’optimisation du modèle.
Utilisation pour identifier le surapprentissage
Ces courbes permettent d’identifier le surapprentissage. Si un modèle
est en surapprentissage, on observera une divergence entre les
performances sur l’ensemble d’entraînement (amélioration continue) et
sur l’ensemble de validation (dégradation après un certain point).

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Identification du Surapprentissage - Validation Croisée


Définition de la validation croisée
Technique statistique pour évaluer les performances d’un modèle
Partage l’ensemble des données en ’k’ sous-ensembles, utilise ’k-1’ pour
l’entraînement et 1 pour le test
Rôle de la validation croisée dans l’identification du
surapprentissage
Permet une évaluation plus robuste des performances du modèle
Aide à identifier les cas où le modèle apprend "par cœur" les données
d’entraînement
Exemple d’utilisation
K-Fold Cross-Validation : divise les données en ’k’ parties égales, et
réalise ’k’ entraînements/tests, chacun avec un sous-ensemble différent
comme ensemble de test
Stratified K-Fold Cross-Validation : maintient la distribution des classes
dans chaque pli (utile pour les ensembles de données déséquilibrés)

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Conséquences du Surapprentissage
Performance dégradée sur de nouvelles données
Le modèle est trop optimisé pour les données d’entraînement, il ne
généralise pas bien aux nouvelles données
Augmentation du taux d’erreur sur les données non vues
Complexité inutile du modèle
Le modèle peut apprendre des caractéristiques bruitées qui ne sont pas
utiles pour la tâche générale
Utilisation excessive de ressources (temps d’entraînement, mémoire)
due à un modèle surdimensionné
Difficulté d’interprétation du modèle
Un modèle surcomplexifié peut être difficile à comprendre et à expliquer
Réduit la confiance dans les prédictions du modèle, car il est difficile de
comprendre comment il prend ses décisions

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Techniques de régularisation - Introduction


Définition et importance de la régularisation
Introduction à la régularisation comme méthode pour prévenir le
surapprentissage
Aide à créer un modèle plus général, en évitant que le modèle
n’apprenne "par cœur" les données d’entraînement
Nécessité de la régularisation
Préservation de la capacité de généralisation du modèle
Favorise un apprentissage stable et évite des fluctuations importantes
dans les poids du modèle
Vue d’ensemble des techniques de régularisation
Régularisation L1 et L2
Dropout
Early stopping
Data augmentation

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Régularisation L1 et L2
Définition des régularisations L1 et L2
P
L1 (Lasso) : Ajout du terme λ P |wi | à la fonction de coût
L2 (Ridge) : Ajout du terme λ wi2 à la fonction de coût
Différences entre L1 et L2
L1 peut conduire à un modèle sparse, encourageant un sous-ensemble
plus petit de caractéristiques
L2 tend à réduire tous les poids uniformément et n’entraîne
généralement pas un modèle sparse
Utilisation dans un réseau de neurones
Appliqué lors de la mise à jour des poids pendant l’entraînement
Utilisation de bibliothèques comme TensorFlow et PyTorch pour
l’intégration facile dans les réseaux de neurones
Avantages et inconvénients
L1 : Permet la sélection de caractéristiques mais peut créer des
modèles instables
L2 : Ne conduit pas à des modèles sparses mais est plus stable
Pr. Mounia MIKRAM Deep Learning
Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Dropout
Définition et principe
Technique de régularisation pour prévenir le surapprentissage
Durant l’entraînement, certains neurones sont "éteints" aléatoirement
à chaque itération, avec une probabilité pré-définie (ex : 0.5)
Utilisation dans un réseau de neurones
Implémenté dans divers frameworks tels que TensorFlow, Keras, etc.
Peut être appliqué à une ou plusieurs couches du réseau
Avantages et inconvénients
Avantages :
Réduit le risque de surapprentissage
Rend le réseau plus robuste
Inconvénients :
Peut augmenter le temps d’entraînement
Complexité accrue lors de la fine-tuning

Pr. Mounia MIKRAM Deep Learning


Introduction à l’Apprentissage Supervisé
Propagation Avant et Rétropropagation
Entraînement d’un réseau neuronal Descente de Gradient et Mise à Jour des Poids
Réseaux de Neurones Convolutifs (CNNs) Processus d’Apprentissage dans les Réseaux de Neurones
Fonction de Coût
Algorithme de rétropropagation (backpropagation)
Surapprentissage (overfitting) et techniques de régularisation

Early Stopping
Définition et principe
Technique d’arrêt anticipé de l’entraînement pour éviter le
surapprentissage
Surveille une métrique spécifique (généralement l’erreur de validation)
et arrête l’entraînement lorsque cette métrique cesse de s’améliorer
Mise en œuvre pendant l’entraînement
Choix d’une métrique et d’un critère d’arrêt (par exemple, arrêt si
l’erreur de validation n’a pas diminué pendant N époques consécutives)
Utilisation de techniques de sauvegarde pour conserver le meilleur
modèle avant l’arrêt
Avantages et inconvénients
Avantages :
Prévient le surapprentissage
Peut réduire le temps d’entraînement
Inconvénients :
Déterminer le bon critère d’arrêt peut être complexe
Risque de s’arrêter trop tôt et de ne pas atteindre un optimum global
Pr. Mounia MIKRAM Deep Learning
Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Introduction aux CNNs


Objectif: Introduire les CNNs et leur utilité.
Définition des CNNs
Les Réseaux de Neurones Convolutifs (CNNs) sont une catégorie de
réseaux de neurones profonds généralement utilisés dans le domaine de la
vision par ordinateur. Ils sont spécialement conçus pour traiter des données
avec une topologie de grille, comme une image qui est constituée de pixels
disposés en grille.

Domaines d’application des CNNs


Les CNNs sont largement utilisés dans divers domaines tels que :
Reconnaissance d’images et classification (identification d’objets,
reconnaissance faciale, etc.).
Analyse vidéo (suivi d’objets, reconnaissance d’actions, etc.).
Traitement du langage naturel (bien que moins fréquent que dans
l’analyse d’images).
Détection d’anomalies dans les images médicales.
Synthèse d’images et style transfer.

Pr. Mounia MIKRAM Deep Learning


Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Classification, Détection, et Segmentation

Figure: Une image illustrant la classification, la détection, et la


segmentation.

Pr. Mounia MIKRAM Deep Learning


Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Classification

Figure: Une image illustrant la classification

Pr. Mounia MIKRAM Deep Learning


Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Couches d’un CNN - Introduction


Objectif:
Présenter une vue d’ensemble des composantes principales des CNNs.

Structure hiérarchique des CNNs:


Les CNNs sont constitués de plusieurs couches qui travaillent ensemble
pour transformer et extraire les caractéristiques des données en entrée.
Chaque couche d’un CNN est conçue pour extraire des caractéristiques
différentes, créant ainsi une hiérarchie de caractéristiques abstraites.
Différents types de couches:
Couches de convolution: Ces couches appliquent un ensemble de filtres
aux données en entrée pour extraire des caractéristiques importantes.
Couches de pooling: Ces couches réduisent la dimensionnalité des
données, aidant à rendre le modèle plus rapide et à éviter le
surajustement.
Couches fully connected: Ces couches connectent chaque neurone à
chaque neurone de la couche précédente et de la couche suivante,
jouant souvent le rôle de classificateur dans le réseau.
Pr. Mounia MIKRAM Deep Learning
Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Couches de Convolution
Objectif:
Détails des couches de convolution dans un CNN.

Définition d’une couche de convolution:


Une couche qui applique une série de filtres ou kernels aux données en
entrée pour extraire des caractéristiques spécifiques.
Filtres/Kernels:
Des matrices utilisées pour extraire des caractéristiques en effectuant
une convolution avec les données en entrée.
Striding:
Définit la mesure dans laquelle le filtre/kernel se déplace à chaque
étape de l’opération de convolution.
Padding:
Ajout de pixels supplémentaires autour des données en entrée pour
contrôler les dimensions de la sortie.
Avantages:
Partage de poids: Chaque filtre est utilisé sur l’ensemble de l’entrée, ce
qui réduit le nombre de paramètres.
Sparse interactions: Grâce à l’utilisation de filtres de petite taille,
chaque sortie dépend d’un petit nombre d’entrées.

Pr. Mounia MIKRAM Deep Learning


Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Exemple de Convolution

Figure: Une image illustrant la convolution


Pr. Mounia MIKRAM Deep Learning
Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Couches de Pooling
Objectif:
Expliquer les couches de pooling et leur rôle dans un CNN.
Définition: Une couche destinée à réduire la dimensionnalité de
l’entrée, facilitant ainsi la généralisation et réduisant le risque de
surajustement.
Types de pooling:
Max pooling: Sélectionne la valeur maximale d’une région de l’entrée.
Average pooling: Calcule la moyenne des valeurs d’une région de
l’entrée.
Avantages:
Réduction de la dimensionnalité, simplifiant le modèle et réduisant le
temps de calcul.
Invariance à de petites transformations, aidant le modèle à reconnaître
des motifs même s’ils sont légèrement déformés ou déplacés.

Pr. Mounia MIKRAM Deep Learning


Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Exemple de Pooling

Pr. Mounia MIKRAM Deep Learning


Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Couches Fully Connected


Objectif:
Expliquer les couches fully connected et leur rôle dans un CNN.
Définition: Une couche où chaque neurone est connecté à tous les
neurones de la couche précédente, permettant une intégration
complète des informations extraites.
Différence avec les autres couches:
Les couches de convolution et pooling se concentrent sur l’extraction
locale de caractéristiques, tandis que les couches fully connected
intègrent ces informations pour prendre des décisions globales.
Rôle:
Prise de décisions basées sur les caractéristiques extraites par les
couches précédentes.
Généralement utilisées dans les dernières étapes du réseau pour
produire une sortie finale.

Pr. Mounia MIKRAM Deep Learning


Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Illustration: Couche Fully Connected


Couche Fully Connected
Couche d’Entrée Couche de Sortie

Chaque neurone dans la couche fully connected est connecté à tous les
neurones de la couche précédente et de la couche suivante.
Cela permet une intégration complète des informations.

Pr. Mounia MIKRAM Deep Learning


Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Exemple de la couche fully connected

Figure: Une image illustrant la


Pr. Mounia MIKRAM
couche fully connected
Deep Learning
Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

Récapitulatif

Couches de Convolution:
Identifient les
caractéristiques / motifs de
l’entrée.
Couches de Pooling:
Réduisent la dimensionnalité
et rendent le réseau invariant
aux petites transformations.
Couches Fully Connected:
Prend des décisions basées
sur les caractéristiques
extraites.
Pr. Mounia MIKRAM Deep Learning
Entraînement d’un réseau neuronal
Réseaux de Neurones Convolutifs (CNNs)

TPs

Pr. Mounia MIKRAM Deep Learning

Vous aimerez peut-être aussi