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

Ce que veut dire apprendre

On n'écrit pas l'algorithme qui reconnaît un chiffre, on écrit celui qui le règle.

Une machine qui apprend exécute deux programmes, et un seul des deux est écrit par un humain. Lequel ?

Deux montages symétriques. À gauche, sous le titre celui qui reconnaît, une flèche portant la mention une image entre dans une boîte à l'encre nommée dix lignes, et une flèche en sort vers la mention dix nombres ; dessous se lit écrit au chapitre 2, puis son comportement vient de thêta. À droite, sous le titre celui qu'on écrit, une flèche portant la mention un thêta, le jeu entre dans une boîte en brique nommée cinq lignes, et une flèche en sort vers la mention un autre thêta ; dessous se lit écrit ici, puis il fabrique thêta.
Les deux boîtes ne reçoivent pas la même chose et ne rendent pas la même chose. C'est celle de droite que ce chapitre écrit.

Le mot « apprendre » ne désigne encore aucune opération mathématique, et tant qu'il n'est pas remplacé par un problème écrit en objets déjà définis, aucune procédure ne peut être évaluée.

Deux algorithmes, et un seul est écrit à la main

Ce qui distingue l'apprentissage automatique de la programmation classique tient en une phrase : on n'écrit pas l'algorithme qui reconnaît un chiffre, on écrit l'algorithme qui règle les 101 770101\,770101770 nombres dont le premier est fait. Le premier existe, c'est fθf_{\boldsymbol{\theta}}fθ​ et il tient en dix lignes de pseudo-code au chapitre 2, mais son comportement ne dépend pas de ces dix lignes : il dépend de θ\boldsymbol{\theta}θ.

Celui qui reconnaîtCelui qu'on écrit

Ce qu'il prend

Une image x∈R784\mathbf{x}\in\mathbb{R}^{784}x∈R784

Le jeu D\mathcal{D}D et un θ\boldsymbol{\theta}θ de départ

Ce qu'il rend

Une loi sur dix classes, a∈Δ9∘\mathbf{a}\in\Delta^{\circ}_{9}a∈Δ9∘​

Un autre θ\boldsymbol{\theta}θ, meilleur

Qui l'a écrit

Un humain, au chapitre 2, et il tient en dix lignes

Un humain, ici, et il tient en cinq

D'où vient son comportement

De θ\boldsymbol{\theta}θ, pas des dix lignes

Des cinq lignes, et de rien d'autre

Ce qu'il est capable de faire

Ce que θ\boldsymbol{\theta}θ lui permet

Rendre CD(θ)C_{\mathcal{D}}(\boldsymbol{\theta})CD​(θ) plus petit

Ce sur quoi on règle

Dtrain={(x(n),c(n))}n=1N,N=60 000,Dtest={(x(n),c(n))}n=110 000\mathcal{D}_{\text{train}}=\big\{(\mathbf{x}^{(n)},c^{(n)})\big\}_{n=1}^{N},\quad N=60\,000,\qquad \mathcal{D}_{\text{test}}=\big\{(\mathbf{x}^{(n)},c^{(n)})\big\}_{n=1}^{10\,000}Dtrain​={(x(n),c(n))}n=1N​,N=60000,Dtest​={(x(n),c(n))}n=110000​
(3.1)
x(n)∈[0,1]784\mathbf{x}^{(n)}\in[0,1]^{784}x(n)∈[0,1]784 et c(n)∈[ ⁣[0,9] ⁣]c^{(n)}\in[\![0,9]\!]c(n)∈[[0,9]], tous deux définis au chapitre 2. Les deux jeux sont disjoints.

Ces images viennent de MNIST, un jeu de dizaines de milliers de chiffres manuscrits étiquetés à la main, distribué librement, et devenu le point de comparaison usuel pour cette tâche. Le chapitre 2 en a compté la répartition, mesuré la part de pixels nuls et vérifié que les images étaient déjà centrées.

Régler θ\boldsymbol{\theta}θ sur Dtrain\mathcal{D}_{\text{train}}Dtrain​ ne dit rien de ce que le réseau fera sur une image qu'il n'a jamais vue, et c'est pourquoi Dtest\mathcal{D}_{\text{test}}Dtest​ existe et qu'aucune de ses images n'entre jamais dans un calcul de mise à jour. Ce chapitre s'arrête là sur cette question : il mesure sur des données jamais vues, et rien de plus. Ce qu'il faudrait faire quand l'écart entre les deux se creuse est le sujet du chapitre d'évaluation.

Le problème, écrit

Ensemble des minimiseursargmin

Pour une fonction C:Θ→RC:\Theta\rightarrow\mathbb{R}C:Θ→R, l'ensemble arg⁡min⁡θ∈ΘC(θ)={θ⋆∈Θ : C(θ⋆)≤C(θ)  ∀θ∈Θ}\arg\min_{\boldsymbol{\theta}\in\Theta} C(\boldsymbol{\theta})=\{\boldsymbol{\theta}^{\star}\in\Theta\ :\ C(\boldsymbol{\theta}^{\star})\leq C(\boldsymbol{\theta})\ \ \forall\boldsymbol{\theta}\in\Theta\}argminθ∈Θ​C(θ)={θ⋆∈Θ : C(θ⋆)≤C(θ)  ∀θ∈Θ}. C'est un ensemble, pas un élément : il peut être vide, réduit à un point, ou infini.

Trois graphes de fonctions d'une variable, côte à côte. Le premier, intitulé vide, montre une courbe qui décroît sans jamais toucher l'axe, et il est légendé exponentielle de moins t. Le deuxième, intitulé un point, montre une parabole dont le creux unique porte un rond brique, et il est légendé t au carré. Le troisième, intitulé une infinité, montre une courbe dont le fond est un segment horizontal portant trois ronds brique, et il est légendé un plateau.
Les trois fonctions sont posées par le cours, et non mesurées : elles servent à voir les trois cas que la définition autorise.

Les trois cas se rencontrent, et ce chapitre en donne un de chaque. L'ensemble est vide pour C(θ)=e−θC(\theta)=e^{-\theta}C(θ)=e−θ sur R\mathbb{R}R, qui décroît sans jamais atteindre sa borne inférieure 000 ; il est réduit à un point pour C(θ)=θ2C(\theta)=\theta^{2}C(θ)=θ2, dont l'unique minimiseur est 000 ; il est infini pour le coût du réseau à couche cachée, et la page 11 en construit 128!128!128! d'un seul coup.

trouverθ ∈ arg⁡min⁡θ∈Rp CD(θ),p=101 770\text{trouver}\quad \boldsymbol{\theta}\ \in\ \arg\min_{\boldsymbol{\theta}\in\mathbb{R}^{p}}\ C_{\mathcal{D}}(\boldsymbol{\theta}),\qquad p=101\,770trouverθ ∈ argθ∈Rpmin​ CD​(θ),p=101770
(3.2)
CDC_{\mathcal{D}}CD​ n'est pas encore définie : c'est le travail des pages 5 et 6. L'énoncé, lui, ne changera plus.

Écrit ainsi, « apprendre » ressemble moins à de la science-fiction qu'à un exercice de calcul : trouver le minimum d'une fonction. Tout ce chapitre consiste à rendre cette phrase exacte, en disant quelle fonction, en disant ce que « trouver » veut dire quand l'ensemble des minimiseurs est infini, et en disant par quel procédé on s'en approche.

Vérification rapide n° 21

Deux fonctions du chapitre vivent dans des espaces différents, et les confondre est l'erreur la plus fréquente.

  1. a

    Écrire l'ensemble de départ et l'ensemble d'arrivée de fθf_{\boldsymbol{\theta}}fθ​.

  2. b

    Écrire ceux de CDC_{\mathcal{D}}CD​.

  3. c

    Pourquoi ne sont-ils pas les mêmes ? Dire, pour chacune des deux, ce qui est fixé et ce qui varie.

Aucune réponse à cliquer : il y a un calcul à faire.

Leçon suivante
PrécédenteCe qu'on a construit, et ce qui manqueSuivanteAu départ, le réseau est mauvais