• Projets00
  • AI Academy13
  • Veille07 entrées ces 7 derniers jours
  • Outils00
Profil
Déposer un projet
ProjetsAI AcademyVeilleOutilsProfilDéposer
Le cours
35/59
Lecture11 min

Synthèse, formulaire et erreurs fréquentes

L'entraînement en un paragraphe, le formulaire, et les erreurs fréquentes.

Le coût partait à deux virgule quatre, au-dessus de ce que paierait une réponse tirée au sort. Où est-il arrivé ?

Une courbe descendante sur un axe horizontal dont les deux extrémités portent les mentions départ et époque vingt-neuf. L'axe vertical est logarithmique. Un rond brique marque le point de départ en haut à gauche et porte sa valeur, deux virgule quatre mille cent soixante-dix-huit ; un second rond brique marque l'arrivée en bas à droite et porte la sienne, zéro virgule zéro zéro zéro six. Sous l'axe se lit échelle logarithmique.
Le coût d'entraînement, du tirage au sort à l'époque 292929, la trentième. L'échelle est logarithmique, sans quoi la fin du trajet serait écrasée contre l'axe.

Le trajet

Ce qu'on écrit

Apprendre, c'est écrire non pas l'algorithme qui reconnaît un chiffre, mais celui qui règle ses 101 770101\,770101770 nombres.

Le point de départ

Au départ ces nombres sont tirés au hasard, et le réseau fait légèrement pire que le hasard, 2,422{,}422,42 contre ln⁡10=2,3026\ln 10=2{,}3026ln10=2,3026, parce qu'il a des préférences arbitraires et se trompe donc parfois avec confiance.

Le coût

On lui donne un coût, l'entropie croisée plutôt que la somme des carrés, parce que sur une sortie confiante et fausse la seconde produit une correction 450450450 fois plus faible. Moyenné sur le jeu, ce coût devient CD:R101 770→R≥0C_{\mathcal{D}}:\mathbb{R}^{101\,770}\rightarrow\mathbb{R}_{\geq 0}CD​:R101770→R≥0​, dont les entrées sont les paramètres et non les images.

Ce qu'on ne peut pas minimiser

On ne peut pas minimiser le taux d'erreur, dont la dérivée est nulle partout où elle existe, et c'est pour que le coût soit lisse, et pour aucune autre raison, que les activations d'un neurone varient continûment.

La descente, et le pas

On descend donc CDC_{\mathcal{D}}CD​ : le gradient donne la direction de plus forte croissance, son opposé celle de plus forte descente, et η\etaη décide de la longueur du pas. À η=10\eta=10η=10 la descente ne descend rien, à η=0,001\eta=0{,}001η=0,001 elle n'a pas fini en cinq époques, et η=0,5\eta=0{,}5η=0,5 est le meilleur des sept réglages mesurés.

Les lots

On n'évalue pas le coût sur les 60 00060\,00060000 images pour faire un pas : un lot de 646464 pointe à 40,640{,}640,6 degrés du bon gradient, mais il vise juste en moyenne, et cela suffit.

Ce que le gradient encode

Le vecteur obtenu est très inégal d'une composante à l'autre, la plus grande valant 404404404 fois la médiane, si bien que le même η\etaη déplace beaucoup certains paramètres et presque pas les autres. Sa longueur, elle, rétrécit d'un facteur 105105105 au fil des époques, et les pas se raccourcissent donc tout seuls.

Et il n'y a pas une bonne réponse

Enfin 128!128!128! jeux de paramètres donnent exactement le même coût, et trois graines suffisent à obtenir trois solutions quasiment orthogonales, à 0,98140{,}98140,9814, 0,98230{,}98230,9823 et 0,98160{,}98160,9816 de précision.

Formulaire

ObjetFormulePage

Le problème

trouver θ∈arg⁡min⁡θ∈RpCD(θ)\boldsymbol{\theta}\in\arg\min_{\boldsymbol{\theta}\in\mathbb{R}^{p}}C_{\mathcal{D}}(\boldsymbol{\theta})θ∈argminθ∈Rp​CD​(θ)

3

Perte quadratique

ℓquad(a,c)=∑k(ak−yk)2\ell_{\text{quad}}(\mathbf{a},c)=\sum_{k}(a_{k}-y_{k})^{2}ℓquad​(a,c)=∑k​(ak​−yk​)2

5

Entropie croisée

ℓ(a,c)=−ln⁡ac+1\ell(\mathbf{a},c)=-\ln a_{c+1}ℓ(a,c)=−lnac+1​

5

Sensibilité de l'entropie croisée

∣∂C/∂zc+1∣=1−ac+1|\partial C/\partial z_{c+1}|=1-a_{c+1}∣∂C/∂zc+1​∣=1−ac+1​

5

Coût sur le jeu

CD(θ)=1N∑nℓ(fθ(x(n)),c(n))C_{\mathcal{D}}(\boldsymbol{\theta})=\frac{1}{N}\sum_{n}\ell\big(f_{\boldsymbol{\theta}}(\mathbf{x}^{(n)}),c^{(n)}\big)CD​(θ)=N1​∑n​ℓ(fθ​(x(n)),c(n))

6

Taux d'erreur

E(θ)=1N∑n1{c^≠c(n)}E(\boldsymbol{\theta})=\frac{1}{N}\sum_{n}\mathbb{1}\{\widehat{c}\neq c^{(n)}\}E(θ)=N1​∑n​1{c=c(n)}, à valeurs dans {k/N}\{k/N\}{k/N}

7

Fonction convexe

C((1−t)θ1+tθ2)≤(1−t)C(θ1)+tC(θ2)C((1-t)\boldsymbol{\theta}_{1}+t\boldsymbol{\theta}_{2})\leq(1-t)C(\boldsymbol{\theta}_{1})+tC(\boldsymbol{\theta}_{2})C((1−t)θ1​+tθ2​)≤(1−t)C(θ1​)+tC(θ2​)

7

Décroissance à l'ordre 1

C(θt+1)−C(θt)=−η C′(θt)2+o(η)C(\theta_{t+1})-C(\theta_{t})=-\eta\,C'(\theta_{t})^{2}+o(\eta)C(θt+1​)−C(θt​)=−ηC′(θt​)2+o(η)

7

Dérivée partielle

∂C∂θi(θ)=lim⁡s→0C(θ+sei)−C(θ)s\frac{\partial C}{\partial\theta_{i}}(\boldsymbol{\theta})=\lim_{s\to 0}\frac{C(\boldsymbol{\theta}+s\mathbf{e}_{i})-C(\boldsymbol{\theta})}{s}∂θi​∂C​(θ)=lims→0​sC(θ+sei​)−C(θ)​

8

Gradient

gradθ C=(∂C/∂θ1,…,∂C/∂θp)T\mathrm{grad}_{\boldsymbol{\theta}}\,C=\big(\partial C/\partial\theta_{1},\ldots,\partial C/\partial\theta_{p}\big)^{\mathsf{T}}gradθ​C=(∂C/∂θ1​,…,∂C/∂θp​)T

8

Dérivée directionnelle

DuC(θ)=lim⁡t→0C(θ+tu)−C(θ)tD_{\mathbf{u}}C(\boldsymbol{\theta})=\lim_{t\to 0}\frac{C(\boldsymbol{\theta}+t\mathbf{u})-C(\boldsymbol{\theta})}{t}Du​C(θ)=limt→0​tC(θ+tu)−C(θ)​

8

Proposition 3, admise

DuC=⟨gradθ C,u⟩≤∥gradθ C∥D_{\mathbf{u}}C=\langle\mathrm{grad}_{\boldsymbol{\theta}}\,C,\mathbf{u}\rangle\leq\|\mathrm{grad}_{\boldsymbol{\theta}}\,C\|Du​C=⟨gradθ​C,u⟩≤∥gradθ​C∥ pour ∥u∥=1\|\mathbf{u}\|=1∥u∥=1

8

Mise à jour

θt+1=θt−η gradθ CD(θt)\boldsymbol{\theta}_{t+1}=\boldsymbol{\theta}_{t}-\eta\,\mathrm{grad}_{\boldsymbol{\theta}}\,C_{\mathcal{D}}(\boldsymbol{\theta}_{t})θt+1​=θt​−ηgradθ​CD​(θt​)

8

Différence finie centrée

∂C∂θi≈C(θ+εei)−C(θ−εei)2ε\frac{\partial C}{\partial\theta_{i}}\approx\frac{C(\boldsymbol{\theta}+\varepsilon\mathbf{e}_{i})-C(\boldsymbol{\theta}-\varepsilon\mathbf{e}_{i})}{2\varepsilon}∂θi​∂C​≈2εC(θ+εei​)−C(θ−εei​)​

8

Coût sur un lot

CB(θ)=1B∑n∈Bℓ(fθ(x(n)),c(n))C_{\mathcal{B}}(\boldsymbol{\theta})=\frac{1}{B}\sum_{n\in\mathcal{B}}\ell\big(f_{\boldsymbol{\theta}}(\mathbf{x}^{(n)}),c^{(n)}\big)CB​(θ)=B1​∑n∈B​ℓ(fθ​(x(n)),c(n))

9

Cosinus

cos⁡(u,v)=⟨u,v⟩/(∥u∥ ∥v∥)\cos(\mathbf{u},\mathbf{v})=\langle\mathbf{u},\mathbf{v}\rangle/(\|\mathbf{u}\|\,\|\mathbf{v}\|)cos(u,v)=⟨u,v⟩/(∥u∥∥v∥)

9

Proposition 4

E[gradθ CB]=gradθ CD\mathbb{E}[\mathrm{grad}_{\boldsymbol{\theta}}\,C_{\mathcal{B}}]=\mathrm{grad}_{\boldsymbol{\theta}}\,C_{\mathcal{D}}E[gradθ​CB​]=gradθ​CD​

9

Proposition 5

B(1/cos⁡2−1)=κB\big(1/\cos^{2}-1\big)=\kappaB(1/cos2−1)=κ, indépendant de BBB

9

Proposition 6

W[1]′=PπW[1]W^{[1]\prime}=P_{\pi}W^{[1]}W[1]′=Pπ​W[1], W[2]′=W[2]PπTW^{[2]\prime}=W^{[2]}P_{\pi}^{\mathsf{T}}W[2]′=W[2]PπT​ ⇒\Rightarrow⇒ même coût

11

Tous les objets du chapitre

La colonne de droite donne la page où l'objet est défini, c'est-à-dire la page qui dit ce qu'il est. La page 1 en nomme plusieurs avant cela, dans ses objectifs et ses tableaux de dettes, mais aucun n'y est employé dans un calcul : c'est le propre d'une page de cadre que d'annoncer ce qu'elle ne fait pas encore.

Fonctions, avec départ et arrivée

FonctionDépartArrivéeDéfinie page

fθf_{\boldsymbol{\theta}}fθ​

R784\mathbb{R}^{784}R784

Δ9∘\Delta^{\circ}_{9}Δ9∘​

2, du chapitre 2

ℓ\ellℓ

ΔK−1∘×[ ⁣[0,K−1] ⁣]\Delta^{\circ}_{K-1}\times[\![0,K-1]\!]ΔK−1∘​×[[0,K−1]]

R≥0\mathbb{R}_{\geq 0}R≥0​

5

ℓquad\ell_{\text{quad}}ℓquad​

ΔK−1∘×[ ⁣[0,K−1] ⁣]\Delta^{\circ}_{K-1}\times[\![0,K-1]\!]ΔK−1∘​×[[0,K−1]]

R≥0\mathbb{R}_{\geq 0}R≥0​

5

CDC_{\mathcal{D}}CD​

Rp\mathbb{R}^{p}Rp

R≥0\mathbb{R}_{\geq 0}R≥0​

6

CBC_{\mathcal{B}}CB​

Rp\mathbb{R}^{p}Rp

R≥0\mathbb{R}_{\geq 0}R≥0​

9

EEE, taux d'erreur

Rp\mathbb{R}^{p}Rp

{k/N:k∈[ ⁣[0,N] ⁣]}\{k/N:k\in[\![0,N]\!]\}{k/N:k∈[[0,N]]}

7

gradθ CD\mathrm{grad}_{\boldsymbol{\theta}}\,C_{\mathcal{D}}gradθ​CD​

Rp\mathbb{R}^{p}Rp

Rp\mathbb{R}^{p}Rp

8

DuCD_{\mathbf{u}}CDu​C

Rp\mathbb{R}^{p}Rp

R\mathbb{R}R

8

cos⁡(⋅,⋅)\cos(\cdot,\cdot)cos(⋅,⋅)

(Rp∖{0})2(\mathbb{R}^{p}\setminus\{\mathbf{0}\})^{2}(Rp∖{0})2

[−1,1][-1,1][−1,1]

9

E[⋅]\mathbb{E}[\cdot]E[⋅]

vecteurs aléatoires de Rp\mathbb{R}^{p}Rp

Rp\mathbb{R}^{p}Rp

9

Var(⋅)\mathrm{Var}(\cdot)Var(⋅)

vecteurs aléatoires de Rp\mathbb{R}^{p}Rp

R≥0\mathbb{R}_{\geq 0}R≥0​

9

P(⋅)\mathbb{P}(\cdot)P(⋅)

événements

[0,1][0,1][0,1]

9

arg⁡min⁡\arg\minargmin

fonctions Θ→R\Theta\rightarrow\mathbb{R}Θ→R

parties de Θ\ThetaΘ

3

Symboles, ensembles et dimensions

SymboleSignificationEnsembleDimensionNature

θ\boldsymbol{\theta}θ

Tous les paramètres, rangés

Rp\mathbb{R}^{p}Rp

p×1p\times 1p×1

Paramètre appris

θt\boldsymbol{\theta}_{t}θt​

Sa valeur à l'itération ttt

Rp\mathbb{R}^{p}Rp

p×1p\times 1p×1

Calculé

θi\theta_{i}θi​

Sa iii-ième composante

R\mathbb{R}R

1×11\times 11×1

Paramètre appris

ppp

Nombre de paramètres

N∗\mathbb{N}^{*}N∗

1×11\times 11×1

Constante : 101 770101\,770101770

ttt

Indice d'itération

N\mathbb{N}N

–

Indice

iii

Indice de composante

[ ⁣[1,p] ⁣][\![1,p]\!][[1,p]]

–

Indice

nnn

Indice d'exemple

[ ⁣[1,N] ⁣][\![1,N]\!][[1,N]]

–

Indice

NNN

Taille du jeu d'entraînement

N∗\mathbb{N}^{*}N∗

1×11\times 11×1

Constante : 60 00060\,00060000

Dtrain\mathcal{D}_{\text{train}}Dtrain​, Dtest\mathcal{D}_{\text{test}}Dtest​

Les deux jeux

⊆X×Y\subseteq\mathcal{X}\times\mathcal{Y}⊆X×Y

–

Paramètre de la définition, jamais variable

B\mathcal{B}B

Un mini-lot

⊆[ ⁣[1,N] ⁣]\subseteq[\![1,N]\!]⊆[[1,N]], #B=B\#\mathcal{B}=B#B=B

–

Tiré au hasard

BBB

Taille du lot

N∗\mathbb{N}^{*}N∗

1×11\times 11×1

Réglage : 646464

η\etaη

Taux d'apprentissage

R>0\mathbb{R}_{>0}R>0​

1×11\times 11×1

Réglage : 0,50{,}50,5

g\mathbf{g}g, gB\mathbf{g}_{\mathcal{B}}gB​

Gradient complet, gradient d'un lot

Rp\mathbb{R}^{p}Rp

p×1p\times 1p×1

Calculés

gig_{i}gi​

Composante iii du gradient

R\mathbb{R}R

1×11\times 11×1

Calculée

gn\mathbf{g}_{n}gn​

Gradient de la perte du seul exemple nnn

Rp\mathbb{R}^{p}Rp

p×1p\times 1p×1

Calculé

σ2\sigma^{2}σ2

Variance des gn\mathbf{g}_{n}gn​ autour de g\mathbf{g}g

R≥0\mathbb{R}_{\geq 0}R≥0​

1×11\times 11×1

Mesurée

κ\kappaκ

σ2/∥g∥2\sigma^{2}/\|\mathbf{g}\|^{2}σ2/∥g∥2, sans dimension

R≥0\mathbb{R}_{\geq 0}R≥0​

1×11\times 11×1

Mesuré : entre 42,042{,}042,0 et 50,550{,}550,5

ε\varepsilonε

Pas de la différence finie

R>0\mathbb{R}_{>0}R>0​

1×11\times 11×1

Réglage : 10−510^{-5}10−5

u\mathbf{u}u

Direction unitaire

{u∈Rp:∥u∥=1}\{\mathbf{u}\in\mathbb{R}^{p}:\|\mathbf{u}\|=1\}{u∈Rp:∥u∥=1}

p×1p\times 1p×1

Choisie

ei\mathbf{e}_{i}ei​

iii-ième vecteur de la base canonique

Rp\mathbb{R}^{p}Rp

p×1p\times 1p×1

Constante

hhh

Largeur de la couche cachée

N∗\mathbb{N}^{*}N∗

1×11\times 11×1

Réglage : 128128128

PπP_{\pi}Pπ​

Matrice de permutation des neurones

Mh(R)\mathcal{M}_{h}(\mathbb{R})Mh​(R)

h×hh\times hh×h

Construite

C1(U)\mathcal{C}^{1}(U)C1(U)

Fonctions dérivables sur UUU, de dérivée continue

ensembles de fonctions

–

Ensembles

θ⋆\boldsymbol{\theta}^{\star}θ⋆

Un minimiseur

arg⁡min⁡CD\arg\min C_{\mathcal{D}}argminCD​

p×1p\times 1p×1

Cherché

Les ensembles R\mathbb{R}R, R≥0\mathbb{R}_{\geq 0}R≥0​, R>0\mathbb{R}_{>0}R>0​, N\mathbb{N}N, N∗\mathbb{N}^{*}N∗, [ ⁣[1,m] ⁣][\![1,m]\!][[1,m]], Mm,n(R)\mathcal{M}_{m,n}(\mathbb{R})Mm,n​(R), Mn(R)\mathcal{M}_{n}(\mathbb{R})Mn​(R), InI_{n}In​, ΔK−1∘\Delta^{\circ}_{K-1}ΔK−1∘​, 1{⋅}\mathbb{1}\{\cdot\}1{⋅}, 1m\mathbf{1}_{m}1m​, ⟨⋅,⋅⟩\langle\cdot,\cdot\rangle⟨⋅,⋅⟩, ∥⋅∥\|\cdot\|∥⋅∥ et les fonctions vec\mathrm{vec}vec, onehot\mathrm{onehot}onehot, c^\widehat{c}c sont ceux du chapitre 2, rappelés sans être redéfinis.

L'algorithme complet

TexteLa descente de gradient par mini-lots
1ENTREE   D_train    N couples (x, c), fixes2         eta        dans R_{>0}3         B          taille de lot, dans N*4         T          nombre d'epoques5SORTIE   theta      un vecteur de R^p6 71.  theta <- tirage au hasard dans R^p82.  pour t de 1 a T :93.        ordre <- une permutation de [1, N]104.        pour chaque tranche B_k de B indices consecutifs de ordre :115.              g <- grad_theta C_{B_k}(theta)      un vecteur de R^p126.              theta <- theta - eta * g            p soustractions137.  rendre theta14 15COUT   ligne 5, par differences finies    2p propagations avant16       ligne 5, par l'algorithme du ch. 4  1 propagation avant
Le vecteur gradient relevé à cinq époques, à sa norme mesurée : il raccourcit d'une époque à l'autre sans jamais s'annuler.

Un trait vertical se pose à gauche de l'écran : c'est l'origine commune de cinq flèches horizontales, empilées les unes sous les autres. La première pousse vers la droite et traverse presque toute la largeur du cadre ; à sa gauche s'inscrit « époque zéro », à sa droite sa longueur mesurée, zéro virgule zéro huit sept huit sept huit — c'est la norme du gradient au début de l'entraînement. La deuxième flèche pousse en dessous et s'arrête nettement plus tôt, à zéro virgule zéro cinq huit cinq trois trois, pour l'époque quatre. La troisième, celle de l'époque neuf, pousse à son tour et dépasse la deuxième : elle vaut zéro virgule zéro six cinq sept deux zéro, donc le gradient a repris de l'ampleur au lieu de continuer à décroître. Les deux dernières sont d'un autre ordre : celle de l'époque dix-neuf n'est plus qu'un trait court, zéro virgule zéro zéro deux cinq trois cinq, et celle de l'époque vingt-neuf est à peine visible à côté de l'origine, zéro virgule zéro zéro zéro huit trois trois. Une accolade de brique court enfin le long de la première flèche et porte un seul nombre, cent cinq : c'est par là que la norme du gradient a été divisée entre la première et la dernière époque mesurée.

0:00 / 0:10

Erreurs fréquentes

L'erreurCe qui est vrai

Confondre ℓ\ellℓ et CDC_{\mathcal{D}}CD​

ℓ\ellℓ prend une sortie et une étiquette, CDC_{\mathcal{D}}CD​ prend des paramètres. Ils ne vivent pas dans le même espace, et on ne minimise que le second

Écrire C(θ,D)C(\boldsymbol{\theta},\mathcal{D})C(θ,D)

D\mathcal{D}D est fixé et n'est jamais dérivé : c'est un paramètre de la définition, que l'indice en bas note

Confondre θt\boldsymbol{\theta}_{t}θt​ et θi\theta_{i}θi​

ttt est une itération, iii une composante. Dans ce chapitre les deux lettres sont réservées, sans exception

Croire qu'on minimise le taux d'erreur

Son gradient est nul partout où il existe : on minimise CDC_{\mathcal{D}}CD​ en espérant que EEE suive, et rien ne le garantit

Croire que le signe moins est une convention

C'est le seul signe qui rende le terme dominant −η C′(θt)2-\eta\,C'(\theta_{t})^{2}−ηC′(θt​)2 négatif dans les deux cas de figure

Croire que la proposition 2 donne un seuil sur η\etaη

Elle dit « pour η\etaη assez petit » sans quantifier. Le seuil se cherche par balayage, et son calcul est ailleurs

Croire qu'un η\etaη trop grand fait juste converger plus lentement

η=10\eta=10η=10 et η=0,001\eta=0{,}001η=0,001 échouent pour des raisons opposées : le premier ne descend rien, le second n'a pas fini

Croire qu'un mini-lot donne le bon gradient

Il donne un gradient à 40,640{,}640,6 degrés du bon, à B=64B=64B=64. Il est seulement sans biais : juste en moyenne, jamais sur un tirage

Croire que doubler BBB divise l'erreur par deux

L'écart décroît comme 1/B1/B1/B et l'angle comme 1/B1/\sqrt{B}1/B​ : quadrupler BBB divise l'angle par deux

Croire que le gradient est une pente, donc un nombre

C'est un vecteur de Rp\mathbb{R}^{p}Rp, de même dimension que θ\boldsymbol{\theta}θ. C'est sa norme qui est un nombre, et elle mesure la raideur

Croire qu'un même η\etaη déplace tous les paramètres d'autant

Le pas effectif est η ∣gi∣\eta\,|g_{i}|η∣gi​∣, et ∣gi∣|g_{i}|∣gi​∣ varie d'un facteur 404404404 entre la plus grande composante et la médiane

Chercher « le » minimum

arg⁡min⁡\arg\minargmin contient au moins 128!128!128! points, et trois graines donnent trois solutions quasiment orthogonales, toutes bonnes

Croire que la descente peut sortir d'un creux

Arrivée en un point critique, elle est immobile pour toujours : la mise à jour y devient l'identité. C'est là que l'image de la bille trompe

Croire que les différences finies sont fausses

Elles sont correctes, puisqu'elles ont produit toutes les vérifications de ce chapitre, et inutilisables pour entraîner : 203 540203\,540203540 propagations avant par gradient

Les quatorze vérifications de ce chapitre

La numérotation est continue sur tout le parcours : les numéros 888 à 202020 sont au chapitre 2, et ceux-ci vont de 212121 à 343434.

N°PageSectionCe qu'elle demande

21

3

Le problème, écrit

Les ensembles de fθf_{\boldsymbol{\theta}}fθ​ et de CDC_{\mathcal{D}}CD​, et pourquoi ils diffèrent

22

4

Comment fait-on pire que le hasard

Comment un réseau non entraîné dépasse ln⁡10\ln 10ln10

23

5

Deux candidates

Classer quatre sorties par coût, avec chacune des deux pertes

24

6

Le jeu n'est pas une variable

Le statut de D\mathcal{D}D, justifié par ce qu'on dérive

25

7

Proposition 1

Les 60 00160\,00160001 valeurs du taux d'erreur, et le gradient nul qui s'en déduit

26

7

Proposition 2

La suite θt+1=λθt\theta_{t+1}=\lambda\theta_{t}θt+1​=λθt​ pour η=0,25\eta=0{,}25η=0,25 et η=1,1\eta=1{,}1η=1,1

27

8

Le gradient

Sa dimension pour deux architectures, et si elle dépend de NNN

28

8

Le taux d'apprentissage

Si les échecs à η=10\eta=10η=10 et η=0,001\eta=0{,}001η=0,001 sont de même nature

29

9

Proposition 5

L'angle correspondant à cos⁡=0,7587\cos=0{,}7587cos=0,7587, et pourquoi ça marche

30

9

Proposition 5

Le cosinus attendu pour B=256B=256B=256, par interpolation

31

10

La distribution

Ce que le rapport 404404404 dit d'un même pas appliqué à tous les poids

32

11

Proposition 6

Le compte des minimiseurs pour h=16h=16h=16 puis h=128h=128h=128

33

11

Trois graines

Le cosinus déduit d'une distance relative de 1,39911{,}39911,3991

34

11

La ligne de partage

Quelles quantités deux implémentations indépendantes doivent trouver identiques

La suite du parcours

Deux barres horizontales. Celle du haut, en brique, traverse toute la largeur de la figure sous la mention différences finies, et porte à droite le nombre deux cent trois mille cinq cent quarante. Celle du bas, à l'encre, est un trait à peine visible sous la mention au chapitre 4, et porte à droite le nombre un. Dessous se lit rapport, suivi du même nombre que la première barre.
Le nombre de propagations avant que demande un seul gradient, par les deux procédés.

Tout ce chapitre repose sur la ligne 555 de l'algorithme, et c'est par différences finies qu'il l'a vérifiée : 2p=203 5402p=203\,5402p=203540 propagations avant par gradient, une heure et demie par pas sur ce poste, et environ cinq années pour un entraînement de 28 14028\,14028140 mises à jour, quand le même entraînement mené autrement prend une minute.

C'est précisément cet écart qui rend la suite nécessaire. Il existe un algorithme qui obtient les 101 770101\,770101770 composantes en une propagation avant et une passe en sens inverse, exactement et non approximativement, et il porte un nom : la rétropropagation. Ce chapitre l'a utilisé sans le nommer, puisque c'est lui qui a entraîné tous les réseaux dont les mesures sortent, et les différences finies n'ont servi qu'à le contrôler. Le chapitre 4 dit ce qu'il fait, avant tout calcul ; le chapitre 5 le calcule.

D'où vient l'ordre de ce chapitre

L'ordre des notions suit celui du deuxième chapitre de la série de Grant Sanderson sur les réseaux de neurones, publiée sous le nom 3Blue1Brown. Le texte, les définitions, les six propositions, les onze mesures et les animations sont propres à ce cours. Cinq écarts délibérés y ont été pris : l'entropie croisée retenue au lieu du coût quadratique et tranchée par une mesure, le gradient écrit gradθ\mathrm{grad}_{\boldsymbol{\theta}}gradθ​ et non avec un nabla, les différences finies données puis chiffrées comme inutilisables, onze mesures là où la source n'en fait aucune, et une page entière consacrée aux mini-lots que la source ne traite pas.

Leçon suivante
PrécédenteIl n'y a pas une bonne réponseSuivanteLe cadre du cours