Gradient et rétropropagation

2 min

Objectif : comprendre comment une erreur finale devient une correction locale.

Le gradient rassemble les dérivées de la perte par rapport aux paramètres. Sa composante ∂L/∂w_i indique comment une petite augmentation du poids w_i ferait varier la perte.

La règle de chaîne

Si L dépend de a, qui dépend de z, qui dépend de w :

text
∂L/∂w = ∂L/∂a × ∂a/∂z × ∂z/∂w

La rétropropagation applique efficacement cette règle depuis la perte vers chaque paramètre du graphe. Elle ne constitue pas l'optimiseur : elle calcule les gradients ; l'optimiseur décide ensuite de la mise à jour.

python
optimizer.zero_grad()  # effacer les gradients précédents
logits = model(x)
loss = criterion(logits, y)
loss.backward()        # calculer les gradients
optimizer.step()       # modifier les paramètres

Aperçu — la suite de la leçon est réservée aux inscrits.

Déjà inscrit avec un code ?

Votre accès est rattaché à votre compte, pas à ce lien. Connectez-vous avec le même courriel qu'en classe : votre cours vous attend, inutile de ré-entrer le code.

Se connecterPas encore de compte ? En créer un
Cette leçon fait partie du module « Faire apprendre le réseau »

Les premiers modules du cours sont en accès libre. Pour la suite, trois possibilités : acheter ce cours une fois pour toutes, vous abonner pour tout ouvrir, ou entrer le code si vous suivez le cours en classe.

M’abonner — 19 $ US/moisRetour au plan
Vous êtes étudiant du cours ?

Le code se rattache à votre compte : connectez-vous ou créez un compte, il sera validé automatiquement au retour.

Pas encore de compte ? En créer un