Rétropropagation

Graphe de calcul, passe arrière, mini-autograd

Dans ce chapitre, vous apprendrez à

Outils : NumPy

10 exercices

Chaque exercice est corrigé automatiquement, dans le navigateur. Les énoncés complets sont accessibles avec un compte.

  1. À 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. -…

  2. 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 valeur v en…

  3. 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…

  4. 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…

  5. Passe arrière

    Le problème précédent demandait 2P2P passes avant pour PP 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…

  6. 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…

  7. 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…

  8. Tenseur qui se souvient

    Quand vous faites z = x * y + w en numpy, le résultat z ne sait pas d'où il vient. Si vous voulez calculer ∂z∂x\frac{\partial z}{\partial x}, il faut tout refaire à la main. Le problème : et si le calcul était*…

  9. Rembobineur de gradients

    À l'exercice précédent, votre classe Var a appris à se souvenir : chaque résultat retient l'opération qui l'a produit et les Var dont il est issu. Le fil complet du calcul est mémorisé. Vous voulez maintenant…

  10. 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…