Casser la ligne droite
La pièce qui manquait : la fonction d'activation, ReLU et la sigmoïde.
Empiler deux couches n'a rien changé, puisque mises bout à bout elles refont exactement ce qu'une seule faisait déjà, et il manque donc une pièce entre les deux. Cette pièce ne doit rien coûter en paramètres, sans quoi on ne saurait pas à quoi attribuer le gain. Que faut-il glisser là, de plus simple possible, pour que l'empilement se mette enfin à compter ?
La substitution de la page 8 tenait à un point précis : le vecteur entrait linéairement dans la couche suivante, ce qui permettait au produit de remplacer les deux matrices. Il suffit qu'une fonction non affine s'interpose pour que ce produit ne se forme plus.
Une fonction d'activation est cette fonction-là : une fonction d'une seule variable réelle, appliquée séparément à chacune des coordonnées d'une préactivation, et posée entre deux étapes de calcul. Le de la page 6 n'en est pas une, puisqu'il mêle les dix coordonnées ; il se pose tout au bout, et non entre deux étapes.
On note ce que la première couche rend une fois l'activation appliquée, et le nombre de ses neurones.
Ce qu'on demande à une activation
- 01
Définie sur tout entier. Aucun intervalle ne contient toutes les préactivations que la famille peut produire : sur une image donnée, prend n'importe quelle valeur réelle selon les poids et le biais qu'on y met.
- 02
Non affine. Si , la démonstration de la page 8 se refait mot pour mot et la famille ne grandit pas.
- 03
Dérivable sauf en un nombre fini de points. Le chapitre 3 se servira de sa dérivée, et il lui suffit qu'elle existe partout sauf en quelques points isolés.
- 04
Calculable. Elle est évaluée une fois par neurone caché et par image, soit fois par époque ici, et son coût entre donc dans le temps d'entraînement.
ReLU
- Unité de rectification linéairerectified linear unit, ReLU
La fonction , . Elle laisse passer les valeurs positives inchangées et renvoie zéro pour les négatives.
Un réseau occupe toute la largeur de l'écran : à gauche une grille carrée où un sept manuscrit se forme case par case, puis trois colonnes de ronds reliées par une nappe de fils très pâles. Les cases encrées de la grille s'envolent une à une vers la première colonne, qui se remplit d'encre du haut vers le bas. Une vague parcourt alors la nappe et atteint la colonne du milieu : là, un rond sur trois environ se remplit d'encre, plus ou moins fort, et tous les autres restent des cercles vides, gris. Sur la droite, quatre valeurs s'inscrivent l'une après l'autre, chacune à la hauteur du rond qu'elle désigne : plus trois virgule six mille quatre cent cinquante-quatre pour le cinquième rond, plus quatre virgule quatre mille sept cent trente-huit pour le soixante-sixième, puis, en gris, moins six virgule sept mille huit cent quatre-vingt-quatorze pour le quatre-vingt-unième, et plus trois virgule quatre mille cinq cent quatre-vingt-trois pour le cent-quatorzième. Le compte s'inscrit en bas à droite : trente-cinq allumés, quatre-vingt-treize éteints. Tous les ronds restés gris s'effacent alors, la valeur grise disparaît avec eux, et les fils qui partaient d'eux s'en vont : la nappe se vide et il ne reste qu'un peigne clairsemé, celui des ronds encrés. Une dernière vague le parcourt jusqu'à la colonne de droite, où un seul rond s'allume.
Les quatre conditions, vérifiées pour ReLU
| Condition | Vérification |
|---|---|
Définie sur | existe pour tout réel . Ensemble d'arrivée . |
Non affine | , , . Une fonction affine passant par et est nulle, et vaudrait en . |
Dérivable sauf en un nombre fini de points | Dérivable sur , non dérivable au seul point . |
Calculable | Une comparaison et une sélection, sans exponentielle ni division. |
Comment une fonction d'une variable s'applique à un vecteur
n'obéit pas à cette convention, et cela se lit sur son écriture : sa coordonnée vaut , et le dénominateur porte toutes les coordonnées de . Modifier seul change donc les dix coordonnées de . C'est le point (i) de la proposition 5, démontré à la page 6.
Ce que ReLU achète
Hypothèses
Le réseau est , , .
, .
est appliquée composante par composante, au sens de .
Chaîne de dépendances
\mathbf{x} \rightarrow \mathbf{z}^{[1]} \rightarrow \text{signe de chaque } z^{[1]}_{j} \rightarrow \text{une matrice diagonale} \rightarrow \mathbf{z}^{[2]} \text{ affine}
Propriétés utilisées
Un demi-espace est convexe
Une intersection quelconque de parties convexes est convexe
Une partie de se choisit de façons
Étapes
Pour une partie , on note l'ensemble des entrées pour lesquelles ce sont exactement les neurones de qui sont allumés. Malgré la lettre commune, ces régions n'ont rien à voir avec les de la page 7 : celles-ci découpaient l'entrée par la classe prédite, celles-là la découpent par les neurones cachés qui s'allument.
Chaque est une forme affine de : chaque condition est un demi-espace.
est donc une intersection de demi-espaces : c'est un polyèdre convexe. Les parties possibles donnent des deux à deux disjoints dont la réunion est tout entier : les non vides forment une partition.
Chaque détermine sans ambiguïté l'ensemble des tels que .
Sur , l'action de se réduit à une multiplication par une matrice constante : , où est diagonale, de coefficient si et sinon.
Vérification des dimensions : .
L'expression est affine en sur chaque , et ses coefficients dépendent de : deux régions voisines n'ont pas la même matrice. Le réseau est affine par morceaux.
Résultat
Interprétation
Le majorant est immédiat : chaque morceau est repéré par la partie des neurones allumés, et il y a parties possibles. C'est de là que vient la puissance d'expression du réseau, et non du nombre de paramètres, puisque la proposition 3 vient de montrer que paramètres sans rien entre les deux couches n'en achètent aucune.
Ce sont les mêmes nombres, avec une fonction qui n'en coûte pas un seul, et la famille atteignable cesse d'être affine pour devenir affine par morceaux.
Ce que ce résultat ne dit pas
C'est un majorant, pas un compte. Le nombre de régions effectivement non vides est bien plus petit, et il dépend de .
La proposition 2 ne s'applique plus : les régions de décision du réseau à ReLU ne sont plus convexes. La mesure de la page 7 le vérifie sur les deux modèles.
Il ne dit pas non plus que soit gratuite : la perte n'est plus une fonction convexe de , et le rappel en fin de page dit à qui cette perte-là est imputable.
Combien de neurones s'allument sur une image · modèle 3, image de test n°0
composantes de a^[1] non nulles 35 sur 128
composantes nulles 93
part moyenne sur les 10 000 images 35,07 %
neurones éteints sur TOUTES les images 0 sur 128Lecture
Sur cette image, 93 des 128 neurones cachés renvoient exactement zéro, leur préactivation étant négative et les coupant, si bien qu'ils ne contribuent en rien au calcul de . Les 35 qui restent font des 128, ce qui place cette image au-dessous de la ligne suivante, où est la part moyenne d'allumés sur les 10 000 images. Les deux nombres commencent par les mêmes chiffres sans mesurer la même chose.
La partie de la proposition 4 est donc, pour cette image précise, un ensemble de 35 indices. Une autre image donne une autre partie, et donc une autre matrice affine.
Aucun neurone n'est éteint sur les 10 000 images à la fois : la couche n'a pas de neurone mort, et ses 128 lignes servent toutes à quelque chose.
Un neurone caché a une préactivation strictement négative sur une image donnée.
- a
Que vaut la dérivée de en ce point ?
- b
Qu'en déduit-on sur la contribution de ce neurone à pour cette image ?
- c
Ce neurone est-il pour autant inutile ? Justifier avec les deux dernières lignes de la mesure ci-dessus.
Aucune réponse à cliquer : il y a un calcul à faire.
Les ensembles exacts, couche par couche
| Objet | Ensemble | Borné ? |
|---|---|---|
oui, par la normalisation | ||
, | non | |
avec ReLU, | non | |
avec , | oui | |
oui, et de somme |
La sigmoïde
L'autre choix courant écrase dans l'intervalle ouvert . On lui demande les quatre conditions déjà posées, plus une cinquième propre à cet usage : que son ensemble d'arrivée soit , de sorte que ce qu'un neurone rend se lise comme un degré d'activation compris entre rien du tout et tout à fait.
Les conditions, vérifiées pour la sigmoïde
| Condition | Vérification |
|---|---|
Définie sur | pour tout , donc : le quotient existe partout. |
À valeurs dans | donne ; donne . Les deux bornes sont exclues : ne vaut jamais ni ni . |
Non affine | est bornée et non constante ; une fonction affine non constante ne l'est pas. |
Dérivable | Composée de fonctions dérivables à dénominateur ne s'annulant pas : dérivable sur tout entier, sans exception. |
Calculable | Une exponentielle et une division. Plus cher que , et c'est mesurable sur le temps d'entraînement. |
Hypothèses
est définie par , et .
Point de départ
Propriétés utilisées
Dérivée d'une puissance composée :
Étapes
Dérivation de la composée.
Le numérateur s'écrit , ce qui fait apparaître dans les deux facteurs.
Posons . Le majorant de est celui de sur : ce trinôme atteint son maximum en , où il vaut .
, écriture canonique qui donne directement le maximum et le point où il est atteint.
Résultat
Interprétation
La dérivée s'exprime à partir de la valeur de , pas de son argument : une fois calculé, sa dérivée ne coûte rien de plus. Et elle ne dépasse jamais : ce majorant d'un quart pèsera sur l'entraînement des réseaux profonds.
Ce que ce résultat ne dit pas
Ce majorant est la source d'une difficulté d'entraînement que ce chapitre ne traite pas. Dette, chapitre 3.
La forme de n'est pas dérivée ici : les cinq conditions sont vérifiées, elles ne la déterminent pas. Dette, Fondements probabilistes.
La sigmoïde se calcule aussi là où l'exponentielle déborde.
- a
Que vaut à la précision d'un flottant de 64 bits, et cette valeur est-elle la valeur exacte ?
- b
Pourquoi le calcul direct de déborde-t-il, alors que est parfaitement défini ?
- c
Proposer une écriture de qui ne déborde jamais, quel que soit le signe de .
Aucune réponse à cliquer : il y a un calcul à faire.
Le biais est l'opposé d'un seuil
La figure qui clôt cette section pose son seuil à , la valeur du lui-même : ce point tombe donc exactement sur la barre, et l'inégalité stricte le laisse éteint. Le seuil sépare ce qui est au-dessus, pas ce qui l'atteint.
Dans toute cette section, et dans cette figure, désigne la somme pondérée seule, sans le biais : c'est elle qu'on compare à un seuil, et le biais est précisément ce qu'on va mettre à la place de ce seuil.
Le biais a été posé page 4 comme un paramètre de plus, sans raison donnée. La raison arrive ici, et elle se calcule. On veut qu'un neurone reste muet tant que la somme pondérée n'a pas franchi un seuil , et qu'il parle au-delà.
Hypothèses
On dispose de et d'un seuil .
On veut que le neurone s'active si et seulement si .
Point de départ
Étapes
On retranche aux deux membres.
La condition retrouve exactement la forme déjà employée, sans qu'aucun objet nouveau soit introduit.
Le neurone s'active donc si et seulement si , c'est-à-dire si . Le seuil n'a pas disparu : il a changé de place et de signe.
Résultat
Interprétation
Un biais négatif correspond à un seuil positif : le neurone exige de l'encre avant de parler. Un biais positif correspond à un seuil négatif : le neurone parle par défaut, et il faut des poids négatifs pour le faire taire. Le biais n'est pas un réglage de confort, c'est le seuil du neurone, écrit du côté où il se calcule.
Un neurone doit rester muet tant que sa somme pondérée ne dépasse pas .
- a
Quelle valeur donner à son biais ?
- b
Pourquoi ce signe, et non l'autre ? Justifier par le calcul, pas par la mémoire.
- c
Que devient ce neurone si l'on remplace par : à partir de quelle valeur de son activation dépasse-t-elle ?
Aucune réponse à cliquer : il y a un calcul à faire.