Rétropropagation
Graphe de calcul, passe arrière, mini-autograd
Dans ce chapitre, vous apprendrez à
- Décomposer un calcul en graphe et propager les gradients à l'envers
- Construire un mini moteur de dérivation automatique
- Vérifier qu'un gradient est juste
Outils : NumPy
10 exercices
Chaque exercice est corrigé automatiquement, dans le navigateur. Les énoncés complets sont accessibles avec un compte.
À quoi ça sert dans la vraie vie
Un réseau a des millions de réglages, et pour apprendre il doit savoir dans quel sens tourner chacun d'eux. La rétropropagation répond pour tous à la fois, et c'est elle qui rend l'apprentissage profond possible. -…
Capteurs en cascade
Vous calibrez une chaîne de mesure : un signal traverse une longue suite d'étages de traitement, appliqués l'un après l'autre. Chaque étage est de l'un de deux types : -
["lin", a, b]: il transforme la valeurven…Signal dédoublé
Suite de votre chaîne de mesure. Pour gagner en finesse, le banc de calibration a été remonté : juste après l'entrée, le signal est désormais dupliqué et envoyé dans deux branches de traitement montées en…
Espion du gradient
Vous avez un réseau à 2 couches avec ReLU. Il produit une erreur sur des données. Vous voulez savoir : si je modifie un poids d'un tout petit peu, de combien l'erreur change-t-elle ? C'est la question fondamentale…
Passe arrière
Le problème précédent demandait passes avant pour paramètres. Pour un réseau avec 1000 poids, c'est 2000 évaluations. Pour un million de poids, c'est inutilisable. Défi : trouvez un moyen de calculer TOUS…
Entraînement complet
Vous avez maintenant un moyen rapide de calculer les gradients. Reste à les utiliser pour que le réseau apprenne tout seul. Les données forment deux classes disposées en cercles concentriques, impossible à séparer…
Cours : vos propres objets Python, en cinq gestes
Dans les exercices qui suivent, vous allez fabriquer des nombres d'un genre nouveau, qui retiennent comment ils ont été calculés. Pour cela, Python vous laisse créer vos propres types d'objets : une classe décrit le…
Tenseur qui se souvient
Quand vous faites
z = x * y + wen numpy, le résultatzne sait pas d'où il vient. Si vous voulez calculer , il faut tout refaire à la main. Le problème : et si le calcul était*…Rembobineur de gradients
À l'exercice précédent, votre classe
Vara appris à se souvenir : chaque résultat retient l'opération qui l'a produit et lesVardont il est issu. Le fil complet du calcul est mémorisé. Vous voulez maintenant…Réseau autograd
Vous avez un moteur qui calcule les gradients automatiquement. Mettez-le à l'épreuve : peut-il entraîner un neurone à classifier des données, sans que vous écriviez une seule dérivée ? Le neurone calcule…