~/teaching · machine learning · séance 3, jeudi 15 octobre 2026
Optimisation convexe et régularisation : descente de gradient, pas, ridge et lasso
Comment on minimise une perte convexe, et ce que rapporte une pénalité sur les coefficients.
Résumé
Ce deck est la troisième séance du cours de Machine Learning de Centrale Méditerranée (option DDEFI, 2026-2027). La séance précédente a posé ce que l'on minimise, les moindres carrés et la log-vraisemblance de la régression logistique. Celle-ci demande comment on trouve le minimum, pourquoi la méthode marche, et ce qui change quand on fait payer la taille des coefficients.
La première moitié construit la descente de gradient à partir de la convexité : pourquoi un gradient nul règle la question, quel pas garde la descente stable, pourquoi une vallée allongée se descend lentement, et pourquoi tout le monde standardise. Viennent ensuite le gradient stochastique, le moment et Adam. La seconde moitié présente ridge et lasso trois fois : comme formule, comme géométrie et comme loi a priori, puis montre comment régler la force de la pénalité sans toucher au jeu de test.
Chaque idée est calculée à la main sur des nombres assez petits pour être vérifiés au crayon : une parabole à une variable, des moindres carrés à quatre observations, un jeu jouet à deux colonnes orthogonales. À la sortie, on sait dire si un problème est convexe, diagnostiquer une descente qui diverge ou qui se traîne, expliquer ridge comme un rétrécissement direction par direction et le lasso comme un seuillage doux, et choisir la pénalité par validation croisée.
Plan du deck
- Convexité et théorème du gradient nul. La corde au-dessus de la courbe, la courbe au-dessus de ses tangentes, et pourquoi une tangente plate désigne le minimum global.
- Deux constantes de courbure, L et μ. La plus forte et la plus faible courbure du bol, et leur rapport, le nombre de conditionnement κ.
- Descente de gradient et choix du pas. La règle de mise à jour, le lemme de descente et la condition η < 2/L calculée sur une parabole.
- Vitesse de convergence et standardisation. L'écart se réduit d'un facteur (1 − 1/κ) par itération, donc le nombre d'itérations suit κ, et la mise à l'échelle y remédie.
- Gradient stochastique, moment, Adam. Un gradient par observation ou par mini-lot, la bille lourde, puis un pas propre à chaque coordonnée.
- Ridge et sa lecture en base SVD. La forme fermée avec λ sur la diagonale, puis un facteur de rétrécissement par direction singulière.
- Lasso, géométrie et lecture bayésienne. Seuillage doux et zéros exacts, les coins de la boule L1, les lois a priori de Gauss et de Laplace.
- Choisir λ et lire le chemin. Validation croisée sur le jeu d'apprentissage, règle de l'erreur-type, et chemin de régularisation.
- Atelier. Ridge codé par la SVD et vérifié contre scikit-learn, puis le chemin du lasso sur un jeu de défaut de crédit.
Convexité : pourquoi un gradient nul suffit
Une fonction convexe est un bol à fond unique, donc l'endroit où la pente s'annule est le meilleur point possible.
Une fonction est convexe, au sens de la convexité (convexity), quand le segment qui joint deux points quelconques de son graphe ne passe jamais sous le graphe. Les moindres carrés et la log-loss logistique sont convexes ; la perte d'un réseau de neurones ne l'est pas, et peut piéger une descente dans un creux local. Toute la séance se place dans le cas convexe.
On retranche , on divise par et on fait tendre vers zéro : l'inégalité de la corde devient l'inégalité de la tangente. La courbe est au-dessus de chacune de ses tangentes. C'est la forme qui sert toute la matinée.
Si le gradient est nul en , le terme linéaire disparaît et pour tout : un point stationnaire d'une fonction convexe est un minimum global. C'est pourquoi les équations normales de la séance précédente suffisaient. La hessienne des moindres carrés vaut , et : la régression linéaire est convexe.
L'exemple fil rouge du deck est le bol . Sa pente est négative à gauche de 3, nulle en 3, positive à droite, et la hauteur est minimale exactement là où la pente s'annule. Deux constantes résument ensuite la forme de n'importe quel bol : , la plus forte courbure, et , la plus faible. Pour une quadratique, ce sont les valeurs propres extrêmes de la hessienne, et leur rapport est le nombre de conditionnement (condition number) déjà croisé avec la SVD.
La descente de gradient et le pas η
On sent la pente, on fait un pas vers le bas, on recommence : la seule vraie décision est la longueur du pas, et un pas trop long aggrave les choses.
Le gradient pointe vers la montée, donc on part dans l'autre sens. Parmi toutes les directions de même longueur, l'inégalité de Cauchy-Schwarz montre que fait baisser le plus vite au premier ordre. C'est la descente de gradient (gradient descent), et la longueur du pas est le pas d'apprentissage (learning rate) .
Si la courbure ne dépasse jamais , la fonction reste sous une parabole de courbure (le lemme de descente, admis dans le deck). En y injectant le pas, on obtient une baisse garantie tant que .
Sur une quadratique, l'image est exacte. Dans la base propre de la hessienne, chaque coordonnée de l'écart au minimum est multipliée par à chaque itération. Tous les facteurs doivent être de module inférieur à 1, et la plus grande valeur propre donne la contrainte la plus serrée : . Le pas supprime la direction la plus raide en un seul coup.
| Itération k | w_k | pente 2(w_k − 3) | w_{k+1} | f(w_{k+1}) |
|---|---|---|---|---|
| 0 | 0 | −6 | 1,5 | 3,25 |
| 1 | 1,5 | −3 | 2,25 | 1,5625 |
| 2 | 2,25 | −1,5 | 2,625 | 1,1406 |
| 3 | 2,625 | −0,75 | 2,8125 | 1,0352 |
| 4 | 2,8125 | −0,375 | 2,9063 | 1,0088 |
Même bol, même départ, quatre pas (ici 1/L = 0,5 et 2/L = 1)
- η = 0,25. Facteur 0,5 : les itérés 1,5, 2,25, 2,625 approchent 3 par un seul côté.
- η = 0,5. Facteur 0 : le premier pas tombe sur 3 et y reste.
- η = 0,75. Facteur −0,5 : 4,5, 2,25, 3,375, la descente dépasse le fond et revient, mais converge encore.
- η = 1,2. Facteur −1,4, au-delà de 2/L : 7,2, −2,88, 11,23, chaque pas saute plus loin. C'est l'entraînement dont la perte finit en NaN.
Pourquoi le conditionnement fixe la vitesse
Dans une vallée longue et étroite, le pas doit rester petit pour le flanc raide, donc on avance lentement le long du fond ; remettre les variables à l'échelle arrondit la vallée.
Avec , la direction raide est réglée tout de suite et c'est la direction plate qui donne le rythme : son facteur vaut . Diviser l'écart par dix coûte donc environ itérations.
Le deck le vérifie sur des moindres carrés à quatre observations et deux colonnes corrélées. La hessienne de la perte moyenne a pour valeurs propres 1 et 4, d'où , et . À partir de la deuxième itération, chaque écart à la solution vaut exactement 0,75 fois le précédent, et itérations le divisent par dix.
La conséquence est pratique. Une colonne en euros à côté d'une colonne en années rend énorme : sur les données de défaut de crédit du cours, le deck indique un conditionnement d'environ pour les colonnes brutes de la hessienne logistique, contre environ 300 après centrage et réduction, calculé sur sa coupe d'apprentissage de 18 000 lignes. La standardisation (feature scaling) est l'accélération la moins chère qui soit. Sa moyenne et son écart-type viennent du seul jeu d'apprentissage, sinon la validation et le test fuient dans le modèle.
Remarque (Trois réflexes). Standardiser d'abord. Tracer la perte d'apprentissage à chaque itération, en échelle log : une courbe qui monte signale un pas trop grand, une droite qui descend lentement un pas trop petit. Partir d'un petit pas et le multiplier par trois tant que la perte continue de baisser.
Gradient stochastique, moment et Adam
Prendre la pente de quelques observations tirées au hasard au lieu de toutes rend chaque pas bien moins cher, au prix d'un peu de bruit.
La perte est une moyenne de pertes individuelles, donc son gradient est la moyenne de gradients individuels. La descente de gradient stochastique (stochastic gradient descent, SGD) en utilise un seul, tiré au hasard : en moyenne c'est la bonne direction, et une itération coûte fois moins. Les mini-lots (mini-batches) de observations gardent l'estimation sans biais et divisent sa variance par .
Avec un pas fixe, le bruit ne s'éteint jamais et les itérés tournent autour du minimum. Robbins et Monro (1951) ont donné les conditions d'un pas décroissant : pour pouvoir aller partout, pour que le bruit s'éteigne. Sur l'exemple à deux variables du deck, les quatre gradients individuels à l'origine diffèrent, mais leur moyenne est le gradient complet , avec une dispersion .
Deux raffinements ferment la première moitié. Le moment (momentum) (Polyak, 1964) cumule les gradients passés : dans la direction raide ils changent de signe et s'annulent, le long du fond ils s'additionnent. Adam (Kingma et Ba, 2015) ajoute un pas par coordonnée, divisé par une moyenne glissante des gradients au carré, ce qui revient à une standardisation automatique. C'est le choix par défaut pour les réseaux de neurones, mais il n'a aucune garantie de convergence dans le cas convexe ; pour une régression logistique, la descente simple ou L-BFGS suffisent.
Régression ridge : un rétrécissement direction par direction
Ridge fait payer les grands coefficients, ce qui les tire vers zéro et calme les directions que les données déterminent mal.
Des colonnes presque colinéaires rendent quasi singulière, et les coefficients des moindres carrés deviennent énormes, de signe instable. La régularisation (regularisation) ridge (Hoerl et Kennard, 1970, appelée aussi régularisation de Tikhonov) ajoute au critère. Le gradient reste linéaire, donc la solution est celle des équations normales avec sur la diagonale, inversible pour tout . On ne pénalise pas la constante : on centre et les colonnes d'abord.
Sur un jeu jouet de quatre lignes à deux colonnes orthogonales de , et . Les moindres carrés donnent ; ridge divise par au lieu de 4, donc les deux coefficients sont multipliés par : 0,8 à , 0,5 à , 0,1 à . C'est un rétrécissement (shrinkage) : ils diminuent, sans jamais atteindre zéro.
La SVD donne le mécanisme exact. Les moindres carrés divisent chaque projection par la valeur singulière , et c'est sur un minuscule que la variance explose. Ridge multiplie chaque direction par un facteur compris entre 0 et 1.
| Direction | d_j² | coordonnée MCO | facteur d_j²/(d_j² + 2) | coordonnée ridge |
|---|---|---|---|---|
| (1, 1)/√2 | 8 | 1,414 | 0,8 | 1,131 |
| (1, −1)/√2 | 2 | 0,707 | 0,5 | 0,354 |
Recomposé dans la base d'origine, cela donne contre pour les moindres carrés, comme avec la formule directe. La somme des facteurs, 1,3 ici au lieu de 2, est le nombre effectif de paramètres que le modèle utilise vraiment.
Lasso : seuillage doux, coins et lois a priori
Le lasso retire une quantité fixe à chaque coefficient et met exactement à zéro ceux qui passeraient sous zéro : il sélectionne des variables.
Le lasso (Tibshirani, 1996) remplace la norme au carré par la somme des valeurs absolues. Avec des colonnes orthonormées (, la convention de scikit-learn avec devant l'erreur quadratique), le critère se sépare en un problème par coordonnée. Chacun a un coin en zéro, traité avec le sous-gradient de , et la solution est le seuillage doux (soft thresholding) du coefficient des moindres carrés .
| λ | β̂₁ | β̂₂ | Variables gardées |
|---|---|---|---|
| 0 | 2,4 | 1,2 | 2 |
| 0,5 | 1,9 | 0,7 | 2 |
| 1 | 1,4 | 0,2 | 2 |
| 1,2 | 1,2 | 0 | 1 |
| 2,4 | 0 | 0 | 0 |
Une vérification du deck : à , le critère vaut 2,605 au point seuillé , 2,625 si l'on force trop tôt le second coefficient à zéro, et 3,605 au point des moindres carrés. Sans colonnes orthonormées, pas de forme fermée : les solveurs enchaînent un pas de gradient et un seuillage (ISTA) ou font une descente par coordonnées, comme scikit-learn.
Géométrie. Pénaliser revient à minimiser la perte dans un budget . Le budget L2 est un disque, le budget L1 un losange dont les coins sont sur les axes ; les ellipses de niveau de la perte touchent le plus souvent le losange d'abord par un coin, où certaines coordonnées sont exactement nulles.
Lecture bayésienne. Mettre une a priori (prior) sur transforme le maximum a posteriori en perte plus pénalité. Une loi gaussienne donne ridge avec ; une loi de Laplace donne le lasso. Choisir un grand , c'est déclarer que l'on attend des coefficients petits devant le bruit, et avec le lasso que beaucoup d'entre eux sont nuls.
Choisir λ par validation croisée, jamais sur le test
La force de la pénalité est un réglage choisi sur des plis mis de côté du jeu d'apprentissage ; le jeu de test ne s'ouvre qu'une fois, à la toute fin.
est un hyperparamètre (hyperparameter). Ajusté sur les données d'apprentissage, il tomberait toujours à zéro ; réglé sur le jeu de test, il ne laisserait plus rien d'honnête à rapporter. La réponse est la validation croisée (cross-validation) de la séance précédente : une grille de en échelle log qui part de , où tous les coefficients du lasso sont nuls, cinq plis du jeu d'apprentissage, et l'erreur moyenne de validation pour chaque valeur avec son erreur-type. La standardisation est recalculée dans chaque pli.
Deux choix se défendent : , le minimum de la courbe, ou la règle d'une erreur-type (Breiman et coauteurs, 1984), le plus grand dont l'erreur reste à moins d'une erreur-type du minimum. La seconde donne un modèle plus simple que les données ne savent pas distinguer du meilleur, et c'est en général celui qu'on déploie. Dans scikit-learn, la régression logistique se règle par , l'inverse de la force de la pénalité.
Le chemin de régularisation (regularisation path) trace chaque coefficient en fonction de . Pour le lasso, il est affine par morceaux : tous les coefficients partent de zéro et les variables entrent une à une quand la pénalité se relâche, les plus informatives d'abord. Le deck ajoute un test de déploiement : réestimer le lasso sur de nombreux rééchantillonnages du jeu d'apprentissage et compter combien de fois chaque variable est gardée (sélection par stabilité, Meinshausen et Bühlmann, 2010). Une liste courte et stable de variables est ce qu'un comité de crédit sait lire, expliquer et maintenir, et c'est le sujet de la séance suivante sur le seuil de décision et la livraison reproductible.
À retenir
- Pour une fonction convexe, un point où le gradient s'annule est un minimum global : corde au-dessus de la courbe, courbe au-dessus de ses tangentes.
- La descente de gradient converge pour un pas η < 2/L, où L est la plus forte courbure ; au-delà, la perte monte à chaque itération.
- Le nombre d'itérations croît avec le conditionnement κ = L/μ, d'où la standardisation des colonnes, avec des statistiques calculées sur le seul jeu d'apprentissage.
- SGD et mini-lots échangent un gradient sans biais mais bruité contre une itération bien moins chère ; le bruit baisse en 1/B, et le pas doit décroître pour se poser.
- Ridge rétrécit chaque direction singulière d'un facteur d²/(d² + λ) sans jamais annuler un coefficient ; le lasso retranche λ par seuillage doux et produit des zéros exacts.
- Ridge correspond à une loi a priori gaussienne, le lasso à une loi de Laplace : λ compare le bruit attendu à la taille attendue des coefficients.
- λ se choisit par validation croisée sur les plis d'apprentissage, souvent avec la règle d'une erreur-type ; le jeu de test reste fermé jusqu'au rapport final.
Glossaire
- convexité (convexity)
- Propriété d'une fonction dont les cordes sont au-dessus du graphe ; tout point de gradient nul y est un minimum global.
- descente de gradient (gradient descent)
- Méthode itérative qui avance à l'opposé du gradient, d'un pas proportionnel au pas d'apprentissage.
- pas d'apprentissage (learning rate)
- Longueur d'un pas par unité de pente ; il doit rester sous 2/L pour que la descente converge.
- nombre de conditionnement (condition number)
- Rapport L/μ entre la plus forte et la plus faible courbure ; il fixe le nombre d'itérations nécessaires.
- descente de gradient stochastique (stochastic gradient descent, SGD)
- Descente qui utilise une observation ou un mini-lot par itération, sans biais mais bruitée.
- moment (momentum)
- Cumul des gradients passés dans une vitesse, qui amortit les oscillations et accélère les directions plates.
- standardisation (feature scaling)
- Centrage et réduction des colonnes, avec les statistiques du jeu d'apprentissage ; fait baisser κ.
- régularisation (regularisation)
- Ajout au critère d'une pénalité sur la taille des coefficients, comme ridge (L2) ou le lasso (L1).
- rétrécissement (shrinkage)
- Fait de tirer les coefficients vers zéro pour réduire leur variance, au prix d'un peu de biais.
- seuillage doux (soft thresholding)
- L'application z ↦ sign(z)(|z| − λ)₊, solution du lasso coordonnée par coordonnée quand les colonnes sont orthonormées.
- chemin de régularisation (regularisation path)
- Les coefficients estimés tracés en fonction de λ, de tous nuls jusqu'à l'ajustement sans pénalité.
- a priori (prior)
- Loi sur les paramètres avant de voir les données ; une a priori gaussienne donne ridge, une loi de Laplace le lasso.
- validation croisée (cross-validation)
- Découpage tournant du jeu d'apprentissage en plis, pour choisir des hyperparamètres comme λ sans le jeu de test.
- hyperparamètre (hyperparameter)
- Réglage fixé avant l'apprentissage, comme λ ou C, et choisi par validation croisée.
Les autres fiches du cours
Un résumé public par deck, dans l'ordre du cours.
Précédent : Vraisemblance et régression logistiqueSuivant : Seuil de décision et ML reproductible
- IntroductionHivers de l'IA, emploi et méthode
- OutilsKaggle, GitHub, Python : les outils
- Séance 1Cadrage de projet et moindres carrés
- Séance 2Vraisemblance et régression logistique
- Séance 3Descente de gradient, ridge et lasso
- Séance 4Seuil de décision et ML reproductible
- DevoirUn modèle de référence défendable
- Séance 5Noyaux, SVM et arbres de décision
- Séance 6Forêts, boosting, comparaison honnête
- Séance 7SHAP, équité, ACP et partitionnement
- DevoirUn modèle champion documenté
- Séance 8Réseaux de neurones, dérive, prédiction conforme
- DevoirUn projet de machine learning livré
- Séance 9Soutenir un projet de machine learning
- RéférenceProjet de score de défaut de crédit
- RéférenceRendements boursiers : XGBoost et sentiment
- RéférenceLe code Python de chaque modèle
- RéférenceDeep learning, l'essentiel
- RéférenceDonnées ouvertes et projets par secteur
- RéférenceManuel de l'expert data et IA
- RéférenceData engineering, SRE et cloud
- RéférencePanorama des modèles de machine learning
À propos de ces fiches
Écrites par l'enseignant à partir des slides du deck, comme un résumé public : les idées clés, les formules et un exemple calculé. Les exercices, leurs corrigés, les contrôles et la notation restent dans le deck, pour les élèves du cours.
Révision : .