Questions de Cours — Deep
Learning
Avec Réponses Complètes
PARTIE 1 — QUESTIONS
DE L'EXAMEN (avec
réponses)
Question 1. Citez et expliquez brièvement 3 fonctions d'activation courantes.
Réponse :
1. Fonction échelon (Step function / Heaviside) : renvoie 0 si l'entrée est inférieure à un seuil, et 1 si l'entrée est
supérieure ou égale à ce seuil. Elle agit comme un interrupteur binaire. Utilisée dans le perceptron simple, elle ne
permet pas d'apprentissage par gradient car elle n'est pas dérivable.
2. Fonction Sigmoïde (Logistique) : sa sortie est toujours comprise entre 0 et 1, ce qui permet de l'interpréter
comme une probabilité. Elle est non linéaire, ce qui permet de modéliser des relations complexes. Sa formule est
: σ(x) = 1 / (1 + e^−x). Elle est utilisée notamment pour la classification binaire.
3. Fonction ReLU (Rectified Linear Unit) : transforme en 0 toutes les valeurs négatives et conserve les valeurs
positives telles quelles. Elle est simple, efficace et permet d'introduire de la non-linéarité dans les couches
convolutives. Elle évite aussi en partie le problème de disparition du gradient.
Question 2. Quelles sont les couches typiques d'une architecture CNN ?
Réponse :
Un CNN (Convolutional Neural Network) est composé des couches suivantes, dans cet ordre typique :
1. Couche de convolution : applique des filtres (noyaux) sur l'image d'entrée pour extraire des caractéristiques
locales (bords, textures, formes). Produit des cartes de caractéristiques (feature maps).
2. Couche d'activation ReLU : introduit de la non-linéarité après chaque convolution en remettant à zéro les
valeurs négatives.
3. Couche de Pooling (Max Pooling / Average Pooling) : réduit les dimensions spatiales des cartes de
caractéristiques, diminue le nombre de paramètres et limite le risque de surapprentissage.
4. Couche Flatten : aplatit les cartes de caractéristiques en un vecteur 1D pour les passer aux couches
entièrement connectées.
5. Couches entièrement connectées (Dense / Fully Connected) : effectuent la classification à partir des
caractéristiques extraites.
6. Couche de sortie avec Softmax (ou Sigmoid) : produit une distribution de probabilités sur les classes.
Question 3. Quelle est la différence principale entre le Machine Learning et le Deep Learning ?
Réponse :
Critère Machine Learning (ML) Deep Learning (DL)
Méthodes permettant aux Sous-domaine du ML basé sur
Définition machines d'apprendre à partir de les réseaux de neurones
données profonds
Extraction des Automatique (apprise par le
Manuelle (faite par l'humain)
caractéristiques modèle)
Quantité de Fonctionne avec des quantités Nécessite généralement de très
données moyennes grandes quantités
Puissance de Très exigeant (souvent besoin de
Moins exigeant
calcul GPU)
Performance sur
Moins performant sur images, Très performant pour ces mêmes
données
sons, textes complexes types de données
complexes
Régression linéaire, SVM, Arbres
Exemples CNN, RNN, Transformers
de décision
La différence principale est que le Deep Learning apprend automatiquement les caractéristiques pertinentes à partir des
données brutes, tandis que le Machine Learning classique nécessite une ingénierie des caractéristiques manuelle.
Question 4. Expliquez le rôle de la fonction de coût (loss function) dans l'apprentissage automatique.
Réponse :
La fonction de coût (ou fonction de perte) mesure la différence entre les sorties prédites par le modèle et les sorties
réelles attendues. Elle joue un rôle central dans l'apprentissage :
Elle quantifie l'erreur du modèle à chaque itération.
Elle guide la mise à jour des poids : l'objectif de l'entraînement est de minimiser cette fonction.
Elle est le point de départ de l'algorithme de rétropropagation, qui calcule les dérivées partielles de l'erreur par
rapport à chaque poids.
Un exemple courant est l'erreur quadratique moyenne (MSE) : E = (1/2) × (Désiré − Prédit)²
Plus la valeur de la fonction de coût est faible, meilleure est la prédiction du modèle.
Question 5. Expliquez le fonctionnement de la rétropropagation du gradient (backpropagation) et son
importance dans l'apprentissage.
Réponse :
La rétropropagation est un algorithme d'optimisation utilisé pour entraîner les réseaux de neurones multicouches. Elle
fonctionne en deux phases :
1. Propagation avant (Forward pass) : les données d'entrée traversent le réseau couche par couche jusqu'à
produire une sortie. L'erreur est calculée en comparant la sortie prédite à la sortie réelle à l'aide de la fonction de
coût.
2. Rétropropagation (Backward pass) : l'erreur est propagée en sens inverse, de la couche de sortie vers la
couche d'entrée. À chaque couche, on calcule les dérivées partielles de l'erreur par rapport aux poids (en utilisant
la règle de la chaîne), puis les poids sont mis à jour selon la règle : w(new) = w(old) − η × ∂E/∂w où η est le taux
d'apprentissage.
Importance : la rétropropagation permet d'identifier comment chaque poids contribue à l'erreur et dans quelle direction le
modifier pour la réduire. C'est le moteur de l'apprentissage dans tous les réseaux profonds.
Question 6. Expliquez la différence entre apprentissage batch, mini-batch et stochastic gradient descent.
Réponse :
Batch Gradient Descent : l'ensemble complet des données d'entraînement est utilisé pour calculer le gradient et
mettre à jour les poids à chaque itération. Très stable, mais lent et coûteux en mémoire pour les grands jeux de
données.
Stochastic Gradient Descent (SGD) : une seule observation est passée aléatoirement à la fois. Les poids sont
mis à jour après chaque exemple. Il y a donc m itérations par époque (où m est le nombre d'observations). Plus
rapide, mais les mises à jour sont bruitées et la convergence est moins stable.
Mini-Batch Gradient Descent : un sous-ensemble (batch) de données est choisi pour calculer le gradient. C'est
un compromis entre batch et SGD : plus stable que SGD, plus rapide que batch. C'est la méthode la plus utilisée
en pratique en Deep Learning.
Question 7. Expliquez le principe du dropout et son effet sur la généralisation.
Réponse :
Le Dropout est une technique de régularisation qui permet de réduire l'overfitting (surapprentissage) lors de
l'entraînement d'un modèle.
Principe : à chaque epoch, chaque neurone est désactivé aléatoirement avec une probabilité p, ainsi que toutes ses
connexions entrantes et sortantes. Le réseau s'entraîne donc sur une version "allégée" aléatoire à chaque itération.
Effet sur la généralisation :
Empêche qu'un neurone devienne trop dépendant des autres (co-adaptation).
Force le réseau à apprendre des représentations redondantes et plus robustes.
Réduit l'erreur de généralisation : le modèle performe mieux sur les nouvelles données, pas seulement sur les
données d'entraînement.
Peut être vu comme entraîner implicitement un ensemble de sous-réseaux différents.
Question 8. Expliquez le principe des Convolutional Neural Networks (CNN) et pourquoi ils sont efficaces pour
les images.
Réponse :
Un CNN est un réseau de neurones conçu spécifiquement pour traiter des données sous forme de grilles, comme les
images.
Principe : au lieu de connecter chaque neurone à tous les pixels (comme dans un réseau dense), les CNN appliquent
des filtres (noyaux de convolution) qui glissent sur l'image. Chaque filtre détecte un type de caractéristique locale (bords,
textures, formes). Les couches successives combinent ces caractéristiques pour reconnaître des structures de plus en
plus complexes.
Pourquoi efficaces pour les images :
1. Préservation de l'information spatiale : contrairement aux réseaux denses qui aplatissent l'image en perdant la
structure 2D, les CNN traitent les pixels dans leur contexte spatial.
2. Réduction des paramètres : les poids du filtre sont partagés sur toute l'image (weight sharing), ce qui réduit
drastiquement le nombre de paramètres.
3. Invariance aux translations : grâce au pooling, un CNN peut reconnaître un objet même si sa position dans
l'image varie.
4. Apprentissage hiérarchique : les premières couches détectent des caractéristiques simples (bords), les
couches profondes des structures complexes (objets entiers), imitant ainsi le traitement visuel humain.
Question 9. Que se passe-t-il si le learning rate (pas d'apprentissage) est trop élevé ? Et trop faible ?
Réponse :
Learning rate trop élevé : les pas effectués lors de la mise à jour des poids sont trop grands. Le modèle risque
de dépasser le minimum de la fonction de coût (overshoot), rendant la convergence instable. La valeur de la loss
peut osciller ou même diverger au lieu de diminuer.
Learning rate trop faible : les pas sont trop petits. Le modèle converge très lentement et nécessite un très grand
nombre d'itérations pour atteindre un minimum acceptable. Il peut aussi rester bloqué dans un minimum local. Le
temps de calcul augmente considérablement.
Idéal : un learning rate bien calibré permet une convergence stable et efficace vers le minimum de la fonction de coût.
Des techniques comme le learning rate decay ou les optimiseurs adaptatifs (Adam, RMSProp) permettent d'ajuster
dynamiquement ce taux.
Question 10. Qu'est-ce que le Transfer Learning en Deep Learning ? Expliquez l'idée générale.
Réponse :
Le Transfer Learning est une technique qui consiste à réutiliser un modèle déjà entraîné sur un problème (tâche source)
comme point de départ pour résoudre un deuxième problème connexe (tâche cible).
Idée générale :
Plutôt que d'entraîner un réseau de neurones profond entièrement de zéro (ce qui nécessite de grandes quantités
de données étiquetées et une puissance de calcul importante), on part d'un modèle pré-entraîné sur un grand
dataset (ex. ImageNet).
Les couches initiales du modèle, qui ont appris des caractéristiques générales (bords, textures, formes), sont
conservées.
On adapte les dernières couches au problème cible en les réentraînant sur un dataset plus petit.
Avantages :
Résout les problèmes de manque de données étiquetées.
Réduit le temps et le coût d'entraînement.
Donne de bonnes performances même avec peu de ressources.
Exemple : utiliser VGG16 (entraîné sur ImageNet) pour classer des images médicales en remplaçant uniquement la
couche de sortie.
PARTIE 2 — QUESTIONS
SUPPLÉMENTAIRES
ISSUES DU COURS
Chapitre 1 : Introduction au Deep Learning
Question 11. Qu'est-ce que le Machine Learning ? Donnez une définition.
Réponse : Le Machine Learning est un champ d'étude de l'intelligence artificielle qui se fonde sur des approches
statistiques pour donner aux ordinateurs la capacité d'apprendre à partir de données, sans intervention humaine
explicite. Il utilise des méthodes d'exploration de données et des algorithmes pour construire des modèles qui prédisent
les résultats futurs.
Question 12. Qu'est-ce que le Deep Learning ? En quoi diffère-t-il du Machine Learning classique ?
Réponse : Le Deep Learning est un sous-domaine du Machine Learning qui repose sur des algorithmes inspirés du
fonctionnement des réseaux de neurones du cerveau humain. Il traite l'information de manière hiérarchique et adaptative
à travers plusieurs couches cachées. Contrairement au ML classique qui nécessite une extraction manuelle des
caractéristiques, le Deep Learning apprend automatiquement ces caractéristiques directement à partir des données
brutes.
Question 13. Quand est-il préférable d'utiliser le Deep Learning plutôt que le Machine Learning classique ?
Réponse :
Lorsque la quantité de données est très importante.
Lorsqu'il y a un manque de compréhension du domaine pour réaliser l'ingénierie des caractéristiques
manuellement.
Pour des problèmes complexes comme la classification d'images, le traitement du langage naturel, et la
reconnaissance vocale.
En revanche, pour des petits jeux de données, les algorithmes traditionnels de ML restent souvent préférables.
Question 14. Citez 4 applications concrètes du Deep Learning.
Réponse :
1. Reconnaissance et classification d'images (détection de visages, objets)
2. Traitement du langage naturel (traduction automatique, assistants vocaux)
3. Prédiction et analyse de données (finance, santé, météorologie)
4. Robotique et véhicules autonomes
5. Super-résolution et coloriage d'images (bonus)
Question 15. Citez 3 jalons historiques importants dans le développement du Deep Learning.
Réponse :
1943 : McCulloch & Pitts proposent le premier modèle mathématique du neurone artificiel.
1957 : Frank Rosenblatt crée le Perceptron, premier modèle capable d'apprendre.
1986 : Geoffrey Hinton introduit la rétropropagation (Backpropagation), permettant l'entraînement de réseaux
multicouches.
2012 : AlexNet remporte ImageNet avec une forte réduction des erreurs grâce aux GPU.
2017 : Introduction de l'architecture Transformer, révolutionnant le NLP.
Chapitre 2 : Perceptron Simple
Question 16. Qu'est-ce qu'un perceptron ? À quoi sert-il ?
Réponse : Le perceptron est l'un des modèles les plus anciens et simples des réseaux de neurones artificiels. Il s'agit
d'un classificateur binaire : il détermine si un élément appartient ou non à une classe. Dans un perceptron, les signaux
reçus sont d'abord pondérés, puis additionnés, puis transformés par une fonction d'activation pour produire un signal de
sortie unique. Il peut accomplir des tâches de classification et de régression.
Question 17. Décrivez l'analogie entre le neurone biologique et le neurone artificiel.
Réponse :
Les dendrites (réception des signaux) correspondent aux entrées (x₀, x₁, x₂…).
Le corps cellulaire (traitement) correspond au neurone artificiel qui calcule la somme pondérée.
L'axone (transmission du signal) correspond à la sortie.
Le seuil d'activation biologique correspond au seuil θ ou à la fonction d'activation.
Les connexions synaptiques correspondent aux poids w.
Question 18. Comment s'effectue l'apprentissage d'un perceptron simple ?
Réponse : L'apprentissage consiste à ajuster les poids synaptiques pour minimiser l'erreur entre la prédiction et la sortie
réelle. La règle de mise à jour est :
w_i(new) = w_i(old) + x_i × Erreur × α
Où :
Erreur = Sortie désirée − Sortie prédite
α est le taux d'apprentissage (souvent fixé à 0,1)
L'algorithme s'arrête quand le nombre maximal d'itérations est atteint ou quand l'erreur est inférieure à un seuil fixé.
Question 19. Quelles sont les limites du perceptron simple ?
Réponse : Le perceptron simple ne peut résoudre que des problèmes linéairement séparables. Par exemple, il peut
modéliser les fonctions logiques AND et OR, mais est incapable de résoudre la fonction XOR, car celle-ci n'est pas
linéairement séparable (aucune droite ne peut séparer ses classes). Cette limitation a conduit au développement des
réseaux de neurones multicouches (MLP).
Chapitre 3 : Multi-Layer Perceptron (MLP)
Question 20. Qu'est-ce qu'un Perceptron Multicouche (MLP) ? En quoi diffère-t-il du perceptron simple ?
Réponse : Le MLP (Multi-Layer Perceptron) est un réseau de neurones qui possède, en plus des couches d'entrée et de
sortie, une ou plusieurs couches cachées. Ces couches cachées permettent d'effectuer des traitements intermédiaires
sur les données pour améliorer les prédictions. Contrairement au perceptron simple qui ne peut résoudre que des
problèmes linéaires, le MLP peut modéliser des relations complexes et non linéaires. Plus le réseau a de couches, plus il
est dit "profond", d'où le terme Deep Learning.
Question 21. Qu'est-ce qu'un hyperparamètre dans un réseau de neurones ? Donnez des exemples.
Réponse : Les hyperparamètres sont des paramètres du réseau qui ne sont pas appris automatiquement par le modèle
lors de l'entraînement. Ils doivent être définis manuellement par le concepteur. Exemples :
Le nombre de couches cachées
Le nombre de neurones par couche
Le taux d'apprentissage (learning rate)
Le taux de dropout
La taille du batch
Le nombre d'époques
Question 22. Qu'est-ce que la descente de gradient et comment est-elle utilisée dans l'entraînement d'un réseau
de neurones ?
Réponse : La descente de gradient est un algorithme d'optimisation qui permet de minimiser la fonction de coût en
ajustant les poids du réseau. Elle nécessite deux informations : la direction du gradient (indiquée par la dérivée partielle
de l'erreur par rapport au poids) et le taux d'apprentissage. À chaque itération, les poids sont mis à jour dans la direction
opposée au gradient pour converger progressivement vers le minimum (local ou global) de la fonction de coût.
Chapitre 4 : Tenseurs
Question 23. Qu'est-ce qu'un tenseur ? Citez les différents ordres avec des exemples en Deep Learning.
Réponse : Un tenseur est une généralisation des matrices à n'importe quel nombre de dimensions.
Ordre 0 (Scalaire) : valeur unique. Ex : valeur de la loss, taux d'apprentissage.
Ordre 1 (Vecteur) : liste ordonnée de valeurs. Ex : représentation des entrées, embeddings de mots.
Ordre 2 (Matrice) : tableau 2D. Ex : matrices de poids, mini-batch de données.
Ordre 3 : données 3D. Ex : image RGB (hauteur × largeur × canaux), séquences temporelles.
Ordre 4 : données 4D. Ex : batch d'images (N × H × W × C) utilisé comme entrée d'un CNN.
Question 24. Comment représente-t-on un batch d'images en entrée d'un CNN sous forme de tenseur ?
Réponse : Un batch d'images est représenté par un tenseur d'ordre 4 de dimensions (N, H, W, C) où :
N = nombre d'images dans le lot (batch size)
H = hauteur des images
W = largeur des images
C = nombre de canaux (1 pour niveaux de gris, 3 pour RGB)
Exemple : un batch de 60 000 images MNIST de 28×28 pixels en niveaux de gris → tenseur (60000, 28, 28, 1).
Chapitre 5 : CNN — Détails Techniques
Question 25. Qu'est-ce qu'un filtre (ou noyau de convolution) dans un CNN ? Quel est son rôle ?
Réponse : Un filtre est une petite matrice de poids qui glisse sur l'image d'entrée en effectuant des opérations de
convolution. Il agit comme un détecteur de caractéristiques visuelles. Par exemple :
Un filtre de détection de bords (Edge) repère les variations d'intensité.
Un filtre de flou (Blur) lisse l'image et réduit le bruit.
Un filtre d'accentuation (Sharpen) renforce les contours et les détails.
Les coefficients du filtre sont les poids du réseau, initialisés aléatoirement puis mis à jour par rétropropagation.
Question 26. Qu'est-ce qu'une feature map (carte de caractéristiques) ?
Réponse : Une feature map est le résultat de l'opération de convolution entre un filtre et l'image d'entrée. Chaque pixel
de la feature map indique le degré de correspondance entre l'image et le filtre à cet endroit. Si le CNN utilise plusieurs
filtres, il produit autant de feature maps qu'il y a de filtres, créant ainsi une pile d'images filtrées représentant différentes
caractéristiques.
Question 27. Qu'est-ce que le stride dans une couche de convolution ?
Réponse : Le stride (ou pas) est le nombre de pixels dont le filtre se déplace à chaque étape lorsqu'il glisse sur l'image.
Par défaut, il vaut 1. Un stride plus grand réduit la taille de la feature map en sortie. Par exemple :
Stride (1,1) sur une image 9×9 avec un filtre 3×3 → sortie 7×7
Stride (2,2) sur la même image → sortie 4×4
Question 28. Qu'est-ce que le padding et pourquoi l'utilise-t-on ?
Réponse : Le padding consiste à ajouter des zéros autour des bords de l'image avant d'appliquer la convolution. Il est
utilisé pour deux raisons :
1. Maintenir la même taille spatiale en sortie qu'en entrée.
2. Éviter la perte d'informations importantes situées sur les bords de l'image, qui sont moins inclus dans les
opérations de convolution sans padding.
Question 29. Expliquez les deux types de pooling : Max Pooling et Average Pooling.
Réponse :
Max Pooling : conserve la valeur maximale dans chaque fenêtre glissante. Il résume la présence la plus forte
d'une caractéristique et est plus robuste aux petites variations de position.
Average Pooling : calcule la moyenne des valeurs dans chaque fenêtre. Il résume la présence moyenne d'une
caractéristique et lisse davantage la représentation.
Les deux permettent de réduire les dimensions spatiales, de diminuer le nombre de paramètres et de calculs, et d'éviter
le surapprentissage.
Question 30. Pourquoi les réseaux denses (Fully Connected) sont-ils peu adaptés au traitement d'images ?
Réponse :
1. Nombre de paramètres explosif : chaque pixel est connecté à chaque neurone, créant un nombre
astronomique de paramètres (ex. image 244×244×3 avec 50 neurones cachés → 8,9 millions de paramètres).
2. Perte de l'information spatiale : l'image est aplatie en un vecteur 1D, ce qui fait perdre les relations locales
entre pixels voisins.
3. Insensibilité aux translations : un réseau dense ne reconnaît pas le même objet si sa position dans l'image
change.
4. Risque de surapprentissage élevé à cause du grand nombre de paramètres.
Question 31. Quelle est la différence entre la fonction d'activation Sigmoid et Softmax dans un CNN ?
Réponse :
Sigmoid : produit une sortie entre 0 et 1 pour chaque neurone indépendamment. Utilisée pour la classification
binaire, où chaque sortie représente une probabilité indépendante.
Softmax : prend un vecteur de valeurs réelles et produit un vecteur de probabilités normalisées dont la somme
vaut 1. Utilisée pour la classification multiclasse. Les probabilités sont interdépendantes : augmenter la
probabilité d'une classe réduit proportionnellement celles des autres.
Question 32. Comment calcule-t-on le nombre de paramètres dans une couche de convolution ?
Réponse : Le nombre de paramètres d'une couche de convolution se calcule ainsi :
(H_filtre × W_filtre × C_entrée + 1) × Nombre_de_filtres
où +1 représente le biais par filtre.
Exemple : 8 filtres de taille 3×3 sur une image RGB (3 canaux) : (3 × 3 × 3 + 1) × 8 = 28 × 8 = 224 paramètres
Chapitre 6 : Améliorer les performances —
Régularisation
Question 33. Qu'est-ce que le surapprentissage (overfitting) ? Comment le détecte-t-on ?
Réponse : Le surapprentissage se produit quand le modèle apprend trop précisément les données d'entraînement, y
compris leur bruit, et ne généralise pas bien à de nouvelles données. On le détecte en observant que :
L'erreur sur l'ensemble d'entraînement est très faible (quasi nulle).
L'erreur sur l'ensemble de validation augmente au lieu de diminuer.
Question 34. Citez 3 techniques de régularisation pour éviter l'overfitting.
Réponse :
1. Dropout : désactivation aléatoire de neurones pendant l'entraînement.
2. Data Augmentation : créer de nouvelles données en appliquant des transformations (rotation, flip, zoom, crop,
ajustement de contraste) aux images existantes.
3. Régularisation L1/L2 : ajout d'un terme de pénalité sur les poids dans la fonction de coût pour éviter des valeurs
trop élevées.
Question 35. Qu'est-ce que la normalisation des données (data preprocessing) ? Pourquoi est-elle importante ?
Réponse : La normalisation des données consiste à mettre à l'échelle les valeurs des pixels avant de les passer au
réseau. Deux techniques principales :
Normalisation : ramène les valeurs dans l'intervalle [0, 1] → (x − min) / (max − min)
Standardisation : centre les données (moyenne = 0, écart-type = 1) → (x − μ) / σ
Importance :
Permet au modèle de converger plus rapidement.
Évite qu'un canal de couleur domine les autres.
Prévient l'instabilité numérique.
Les paramètres μ et σ doivent être calculés uniquement sur les données d'entraînement, puis appliqués aux
données de test.
Chapitre 7 : Transfer Learning et
Architectures CNN Connues
Question 36. Quelles sont les principales architectures CNN présentées dans le cours ? Comparez-les
brièvement.
Réponse :
Architecture Année Paramètres Particularités
8 couches (5 conv + 3 FC), ReLU, Dropout,
AlexNet 2012 ~60 millions
GPU
~138
VGG16/19 2014 Filtres 3×3 uniformes, très profond, >500 Mo
millions
GoogleNet Modules Inception, filtres multi-échelles en
2014 ~5 millions
(Inception-v1) parallèle, 22 couches
Question 37. Qu'est-ce que l'ImageNet challenge ? Quel est son rôle dans le développement du Deep Learning ?
Réponse : ImageNet est un dataset de plus de 15 millions d'images étiquetées avec 22 000 classes. Le challenge
associé (ILSVRC) invite des chercheurs à atteindre les taux d'erreur les plus bas sur un sous-ensemble de 1 000
classes. Il a joué un rôle fondamental dans le développement du Deep Learning en fournissant un benchmark
standardisé et en révélant la supériorité des CNN profonds (AlexNet en 2012) sur les méthodes classiques.
Question 38. Expliquez les modules Inception dans GoogleNet.
Réponse : L'idée clé de GoogleNet est d'appliquer en parallèle dans la même couche des filtres de différentes tailles :
1×1, 3×3 et 5×5, ainsi qu'un max-pooling. La couche suivante a ainsi accès à des caractéristiques extraites à plusieurs
échelles spatiales simultanément. Cela améliore la capacité du réseau à détecter des objets à différentes tailles dans
l'image, tout en conservant un nombre de paramètres raisonnable (~5 millions, soit 12 fois moins qu'AlexNet).
Chapitre 8 : RNN
Question 39. Qu'est-ce qu'un RNN (Réseau de Neurones Récurrent) ? En quoi diffère-t-il d'un MLP ?
Réponse : Un RNN est un réseau de neurones conçu pour traiter des données séquentielles (texte, parole, séries
temporelles). Contrairement au MLP qui traite chaque entrée indépendamment, le RNN possède une mémoire interne :
chaque état caché dépend à la fois de l'entrée actuelle et de l'état caché précédent. Cela permet de capturer les
dépendances temporelles et l'ordre des éléments dans une séquence.
Question 40. Quels sont les avantages et inconvénients des RNN ?
Réponse :
Avantages :
Peut traiter des entrées de longueur variable.
Capable de mémoriser les informations au fil du temps.
La taille du modèle n'augmente pas avec la taille de l'entrée.
Partage des poids entre les étapes temporelles.
Inconvénients :
Calcul lent, pas parallélisable (h(t) dépend de h(t-1)).
Difficile à entraîner sur longues séquences.
Sensible aux problèmes de vanishing gradient (disparition du gradient) et exploding gradient (explosion du
gradient).
Question 41. Quelle est la différence entre un RNN et un LSTM ?
Réponse :
Critère RNN LSTM
Mémoire longue Faible Excellente
Vanishing Gradient Important Réduit grâce aux portes (gates)
Complexité Simple Plus complexe
Performance sur longues séquences Faible Très bonne
Temps d'entraînement Rapide Plus lent
Le LSTM (Long Short-Term Memory) introduit un mécanisme de portes (forget gate, input gate, output gate) qui lui
permet de contrôler quelle information conserver, mettre à jour ou oublier, résolvant ainsi le problème de disparition du
gradient des RNN classiques.
Question 42. Citez 4 applications typiques des RNN.
Réponse :
1. Traduction automatique
2. Génération de texte
3. Reconnaissance vocale
4. Analyse de séries temporelles (finance, médecine)
5. Réponse automatique aux questions
6. Sous-titrage d'images (image captioning)
7. Classification de sentiment dans des textes
Fin du document — Total : 42 questions avec réponses complètes