Blame

36084c lugonthier 2026-07-02 14:39:19
Add new content and images for Linear Models, Regularization, SVMs, and Decision Trees - Added images for linear regression, logistic regression, and perceptron. - Introduced a new section on Regularization and High-Dimensional Inference with detailed explanations and images. - Added content on Support Vector Machines, including definitions, loss functions, and kernel methods. - Created a new section on Decision Trees and Ensemble Methods, covering CART, bagging, random forests, and boosting. - Included relevant images to illustrate concepts in Decision Trees and Ensemble Methods.
1
# 9. Régularisation et dropout
2
3
Un réseau profond possède une capacité suffisante pour ajuster presque n'importe quel jeu d'entraînement, y compris son bruit. La régularisation regroupe les techniques qui échangent un peu de précision sur l'entraînement contre une meilleure généralisation. Ce module couvre la décroissance des poids ($L_2$), son pendant $L_1$, le dropout avec le rééchelonnement de l'inverted dropout, ainsi que les régularisateurs plus légers que sont l'arrêt précoce et l'augmentation de données.
4
5
**Objectifs**
6
- Rappeler ce qu'est le surapprentissage et pourquoi les réseaux à forte capacité y sont sujets.
7
- Ajouter une pénalité $L_2$ au coût et en lire l'effet sur le gradient (décroissance des poids).
8
- Opposer $L_2$ et $L_1$ et leurs pressions différentes sur les poids.
9
- Appliquer l'inverted dropout comme un masque de Bernoulli avec rééchelonnement en $1/p$.
10
- Expliquer la vision « ensemble » du dropout et pourquoi le rééchelonnement laisse les activations non biaisées.
11
- Placer l'arrêt précoce et l'augmentation de données dans la même boîte à outils de généralisation.
12
13
## 9.1 Rappel sur le surapprentissage
14
15
Un modèle surapprend lorsqu'il fait tendre son coût d'entraînement $J$ vers zéro en mémorisant les exemples d'entraînement, y compris leur bruit, si bien qu'il généralise mal à des données non vues. L'écart entre la performance sur l'entraînement et celle sur le test est le signe révélateur. Les réseaux profonds y sont particulièrement exposés car leur nombre de paramètres $\sum_l n_l\, n_{l-1}$ dépasse généralement le nombre d'exemples d'entraînement, ils ont donc la capacité de mémoriser.
16
17
*Remarque :* le compromis biais-variance sous-jacent a été introduit dans le cours de Machine Learning, voir [Concepts généraux](/fr/Machine%20Learning/02%20General%20concepts). La régularisation ramène un modèle à forte variance vers le point idéal.
18
19
Le remède consiste à contraindre la capacité effective pour que le réseau préfère des fonctions plus simples. Chaque technique ci-dessous est une telle contrainte.
20
21
## 9.2 Régularisation L2 (décroissance des poids)
22
23
### 9.2.1 La pénalité
24
25
La régularisation $L_2$ ajoute au coût une pénalité proportionnelle à la magnitude au carré de chaque matrice de poids. Avec $\lambda \ge 0$ l'intensité de régularisation, le coût régularisé est :
26
27
$$\boxed{ J_{\text{reg}} = J + \frac{\lambda}{2}\sum_{l=1}^{L}\lVert W^{[l]} \rVert_F^2 }$$
28
29
où $\lVert W^{[l]} \rVert_F^2 = \sum_{i,j}\big(W^{[l]}_{ij}\big)^2$ est la norme de Frobenius au carré. Les biais $b^{[l]}$ sont normalement exclus de la pénalité, car ils ajoutent une capacité négligeable et les pénaliser tend à provoquer du sous-apprentissage.
30
31
### 9.2.2 Effet sur le gradient
32
33
C'est la dérivation de la pénalité qui donne à la technique son second nom. Le terme supplémentaire contribue à hauteur de $\lambda W^{[l]}$ au gradient par rapport à $W^{[l]}$ :
34
35
$$\boxed{ \frac{\partial J_{\text{reg}}}{\partial W^{[l]}} = \frac{\partial J}{\partial W^{[l]}} + \lambda\, W^{[l]} }$$
36
37
En injectant ceci dans une étape de descente de gradient avec taux d'apprentissage $\alpha$, on rétrécit le poids avant d'appliquer la mise à jour guidée par les données :
38
39
$$\boxed{ W^{[l]} \leftarrow (1 - \alpha\lambda)\, W^{[l]} - \alpha\,\frac{\partial J}{\partial W^{[l]}} }$$
40
41
*Remarque :* le facteur $(1 - \alpha\lambda) < 1$ multiplie chaque poids à chaque étape, ce qui est littéralement une décroissance vers zéro. C'est pourquoi la régularisation $L_2$ est appelée décroissance des poids. Des poids plus petits signifient une fonction plus lisse et de plus faible variance.
42
43
### 9.2.3 Comparaison avec L1
44
45
Remplacer la norme au carré par la norme en valeur absolue donne la régularisation $L_1$, qui pénalise à hauteur de $\lambda\sum_l \lVert W^{[l]} \rVert_1 = \lambda\sum_{l,i,j}\lvert W^{[l]}_{ij}\rvert$. Sa contribution au gradient est $\lambda\,\operatorname{sign}(W^{[l]})$, une attraction constante vers zéro indépendante de la magnitude.
46
47
| Pénalité | Ajout au coût | Terme de gradient | Pression sur les poids |
48
| --- | --- | --- | --- |
49
| $L_2$ | $\tfrac{\lambda}{2}\lVert W \rVert_F^2$ | $\lambda W$ | rétrécit tous les poids proportionnellement, rarement exactement nuls |
50
| $L_1$ | $\lambda\lVert W \rVert_1$ | $\lambda\,\operatorname{sign}(W)$ | pousse de nombreux poids exactement à zéro (parcimonie) |
51
52
*Remarque :* $L_1$ produit des matrices de poids parcimonieuses et fait donc aussi office de sélection de variables. $L_2$ est le choix par défaut en apprentissage profond car elle est lisse partout et s'associe proprement à la descente de gradient.
53
54
## 9.3 Dropout
55
56
### 9.3.1 L'idée
57
58
Le dropout régularise en injectant du bruit dans les activations. À chaque passe avant d'entraînement, chaque unité est conservée avec probabilité $p$ et mise à zéro avec probabilité $1 - p$, de façon indépendante. Le réseau ne peut donc s'appuyer sur aucune unité isolée, il répartit alors la représentation sur de nombreuses unités et cesse de les co-adapter.
59
60
### 9.3.2 Inverted dropout
61
62
Soit $m$ un masque de Bernoulli$(p)$ de même forme que l'activation $a^{[l]}$, tiré à neuf à chaque étape. L'inverted dropout applique le masque puis divise immédiatement par $p$ :
63
64
$$\boxed{ \tilde{a}^{[l]} = \frac{m \odot a^{[l]}}{p}, \qquad m_i \sim \text{Bernoulli}(p) }$$
65
66
L'activation masquée et rééchelonnée $\tilde{a}^{[l]}$ circule alors vers la couche $l+1$ à la place de $a^{[l]}$. Au moment de l'inférence, le dropout est désactivé et se comporte comme l'identité, $\tilde{a}^{[l]} = a^{[l]}$, sans masque ni rééchelonnement.
67
68
*Remarque :* conserver le rééchelonnement en $1/p$ au moment de l'entraînement (d'où « inverted ») est ce qui permet à l'inférence de rester une simple passe avant. La forme ancienne, non inversée, multipliait au contraire les poids par $p$ au moment du test, ce qui est facile à oublier.
69
70
### 9.3.3 Pourquoi le rééchelonnement
71
72
Comme $\mathbb{E}[m_i] = p$, l'espérance d'une unité conservée et rééchelonnée est égale à l'activation d'origine :
73
74
$$\boxed{ \mathbb{E}\!\left[\tilde{a}^{[l]}_i\right] = \frac{p\cdot a^{[l]}_i + (1-p)\cdot 0}{p} = a^{[l]}_i }$$
75
76
L'entrée attendue de la couche suivante est donc inchangée, et le réseau voit le même signal moyen que le dropout soit activé ou non. C'est précisément pourquoi aucune correction n'est nécessaire à l'inférence.
77
78
### 9.3.4 La vision « ensemble »
79
80
Un réseau comportant $k$ unités susceptibles d'être supprimées définit $2^k$ sous-réseaux amincis possibles, un par masque. Chaque étape d'entraînement échantillonne un sous-réseau et effectue une étape de gradient dessus, et tous les sous-réseaux partagent leurs poids. Au moment du test, le réseau complet avec ses activations rééchelonnées approxime la prédiction moyenne de cet ensemble exponentiellement grand, ce qui explique pourquoi le dropout se comporte comme une moyenne de modèles à bas coût.
81
82
![Réseau complet à côté d'un sous-réseau aminci avec deux unités supprimées](/fr/Deep%20Learning/09%20Regularization%20and%20dropout/a/dropout-network.svg)
83
84
*Le dropout entraîne à chaque étape un sous-réseau aminci différent en supprimant des unités au hasard, puis les moyenne à l'inférence.*
85
86
*Remarque :* les probabilités de conservation typiques sont $p$ autour de $0{,}8$ pour les couches d'entrée et $0{,}5$ pour les couches cachées. Un $p$ plus petit signifie une régularisation plus forte.
87
88
## 9.4 Autres régularisateurs
89
90
### 9.4.1 Arrêt précoce
91
92
On suit le coût de validation pendant l'entraînement et on s'arrête à l'époque où il commence à remonter, alors même que le coût d'entraînement continue de baisser. S'arrêter tôt maintient les poids près de leurs faibles valeurs initiales, ce qui agit comme une pénalité $L_2$ implicite sans ajouter de terme au coût.
93
94
![Perte d'entraînement qui baisse tandis que la perte de validation forme un U, avec un marqueur d'arrêt précoce à son minimum](/fr/Deep%20Learning/09%20Regularization%20and%20dropout/a/overfitting-curves.png)
95
96
*La perte d'entraînement continue de baisser tandis que la perte de validation repart à la hausse, l'écart est le surapprentissage et son minimum est l'endroit où l'arrêt précoce interrompt l'entraînement.*
97
98
### 9.4.2 Augmentation de données
99
100
On élargit le jeu d'entraînement avec des transformations des entrées qui préservent l'étiquette (recadrages aléatoires, retournements, petites rotations, variation de couleur pour les images, bruit pour l'audio). Une variété plus effective dans les données réduit directement la variance, c'est de la régularisation appliquée au jeu de données plutôt qu'aux poids.
101
102
### 9.4.3 Récapitulatif
103
104
| Technique | Où elle agit | Effet |
105
| --- | --- | --- |
106
| $L_2$ (décroissance des poids) | coût via $\lambda W$ | rétrécit les poids, fonction plus lisse |
107
| $L_1$ | coût via $\lambda\,\operatorname{sign}(W)$ | poids parcimonieux, sélection de variables |
108
| Dropout | activations à l'entraînement | ensemble de sous-réseaux amincis |
109
| Arrêt précoce | boucle d'entraînement | maintient les poids près de l'initialisation |
110
| Augmentation de données | données d'entraînement | plus de variété, variance plus faible |
111
112
*Remarque :* ces techniques se composent. Un réseau convolutif utilise couramment ensemble la décroissance des poids, le dropout et une forte augmentation de données.
113
114
*Le surapprentissage étant maîtrisé, le module suivant construit une architecture dont le partage des poids est lui-même une forme de régularisation : le réseau convolutif.*
115
116
---
117
Suivant : [Réseaux convolutifs](/fr/Deep%20Learning/10%20Convolutional%20networks) · [Vue d'ensemble du cours](/fr/Deep%20Learning)