Réseaux de neurones et deep learning
Se connecter pour s'inscrireVotre progression
Syllabus
-
-
Objectifs
-
Validations de compétences
-
Public cible
Aucun public cible spécifié pour ce module.
-
Besoins techniques
-
Prérequis
- Aucun prérequis
-
Niveau
-
Historique du module
Aucune action enregistrée
Réseaux de neurones et deep learning
-
Du perceptron au réseau profond
Un réseau de neurones est une composition de fonctions simples. Chaque couche transforme sa sortie, et l'ensemble compose une fonction plus riche.
Le perceptron
Une couche calcule une somme pondérée puis lui applique une activation non linéaire. C'est tout. L'astuce est là : sans fonction d'activation non linéaire, empiler des couches ne donnerait qu'une seule transformation linéaire, donc l'équivalent d'une seule couche.
Le rôle de l'activation
- ReLU :
max(0, x)— simple, efficace, la valeur par défaut en vision. - Sigmoïde : borne entre 0 et 1, sortie naturelle pour une probabilité, mais les gradients disparaissent aux extrémités.
- Softmax : transforme un vecteur en distribution de probabilité, utilisé en classification multiclass.
Propagation avant et arrière
- propagation avant : on traverse les couches de l'entrée vers la sortie et on calcule la prédiction ;
- calcul de la perte : on compare la prédiction à la vérité, par exemple avec l'entropie croisée ;
- propagation arrière : on remonte les couches et on calcule le gradient de la perte par rapport à chaque poids ;
- mise à jour : les poids sont ajustés dans la direction qui réduit la perte.
Le gradient est la pente locale de la perte : il indique dans quelle direction augmenter ou réduire un poids. La descente de gradient suit cette pente, par petits pas, jusqu'à un minimum.
Pourquoi c'est long, et comment on y remédie
En profondeur, le gradient peut s'annuler en remontant les couches (gradient qui disparaît) ou devenir gigantesque (gradient qui explose). Quatre réponses :
- normalisation (BatchNorm, LayerNorm) : garde les activations à une échelle stable ;
- fonctions d'activation qui saturent moins (ReLU) ;
- couches de normalisation et architecture à résiduelles, qui laissent un chemin direct pour le gradient ;
- contrôle de la taille de lot et du taux d'apprentissage.
- ReLU :
-
Régularisation et architecture
Un réseau profond a beaucoup plus de paramètres que de données. Sans contrainte, il apprend le bruit.
Les quatre outils
- Régularisation L2 : on penalise les poids importants, ce qui répartit l'information sur plusieurs variables au lieu de la concentrer sur une.
- Régularisation L1 : elle pousse certains poids à zéro et sélectionne donc les variables inutiles.
- Arrêt précoce : on s'arrête quand la perte de validation cesse de diminuer, alors que la perte d'entraînement continue.
- abandon (dropout) : pendant l'entraînement, on met au hasard une fraction des neurones à zéro, ce qui empêche le réseau de trop compter sur un chemin unique.
Convolution et vision
Une convolution applique un petit filtre glissant sur l'image et détecte un motif local, quelles que soit sa position. Empiler des couches compose des motifs simples (bords) en motifs complexes (textures, parties, objets). Deux propriétés expliquent son succès : la réutilisation des poids — un même filtre sert partout, donc bien moins de paramètres — et l'invariance par translation.
Apprentissage par transfert
Entraîner un grand réseau de zéro exige beaucoup de données. On part plutôt d'un modèle préentraîné sur un grand jeu (ImageNet, un corpus de textes) et on l'adapte :
- gel : on n'entraîne que les dernières couches ; solution la plus économique ;
- déblocage partiel : on débloque les dernières couches ; plus de gain, un peu plus de calcul ;
- ajustement fin : tout le réseau est réentraîné ; réservé aux gros volumes de données.
Quand on n'a que quelques centaines d'exemples, cette démarche est la différence entre un modèle qui fonctionne et un modèle qui surapprend.