{"id":427,"date":"2026-10-07T10:12:12","date_gmt":"2026-10-07T08:12:12","guid":{"rendered":"https:\/\/www.ranksignal.fr\/blog\/?p=427"},"modified":"2026-10-14T17:07:03","modified_gmt":"2026-10-14T15:07:03","slug":"la-methode-lasso","status":"publish","type":"post","link":"https:\/\/www.ranksignal.fr\/blog\/maths\/la-methode-lasso\/","title":{"rendered":"Le Lasso : la r\u00e9gression qui apprend \u00e0 ignorer des variables"},"content":{"rendered":"<p><\/p>\n<p>Quelqu&rsquo;un te tend un tableau de trente colonnes pour pr\u00e9dire une seule valeur, en jurant que tout compte. Tu soup\u00e7onnes qu&rsquo;une bonne moiti\u00e9 n&rsquo;est que du bruit, sans savoir laquelle. Le Lasso r\u00e8gle ce genre de doute en int\u00e9grant le tri dans le calcul m\u00eame de la r\u00e9gression : \u00e0 la fin de cette lecture, tu sauras ce qu&rsquo;il fait, pourquoi certaines variables disparaissent et ce qu&rsquo;il ne sait pas faire.<\/p>\n<p><strong>Sommaire<\/strong><\/p>\n<ul>\n<li><a href=\"#l-essentiel-en-30-secondes\">L&rsquo;essentiel en 30 secondes<\/a><\/li>\n<li><a href=\"#une-regression-lineaire-a-qui-l-on-fait-payer-chaque-coefficient\">Une r\u00e9gression lin\u00e9aire \u00e0 qui l&rsquo;on fait payer chaque coefficient<\/a><\/li>\n<li><a href=\"#deux-ecritures-du-meme-modele-un-tarif-ou-un-budget\">Deux \u00e9critures du m\u00eame mod\u00e8le : un tarif ou un budget<\/a><\/li>\n<li><a href=\"#pourquoi-un-losange-fabrique-des-zeros\">Pourquoi un losange fabrique des z\u00e9ros<\/a><\/li>\n<li><a href=\"#le-lasso-face-au-tri-exhaustif-des-variables\">Le Lasso face au tri exhaustif des variables<\/a><\/li>\n<li><a href=\"#regler-un-curseur-pose-par-validation-croisee\">R\u00e9gler \u03bb : un curseur pos\u00e9 par validation crois\u00e9e<\/a><\/li>\n<li><a href=\"#au-dela-de-la-regression-lineaire-un-lasso-sur-des-essais-cliniques\">Au-del\u00e0 de la r\u00e9gression lin\u00e9aire : un Lasso sur des essais cliniques<\/a><\/li>\n<li><a href=\"#un-modele-sobre-pas-un-modele-souple\">Un mod\u00e8le sobre, pas un mod\u00e8le souple<\/a><\/li>\n<\/ul>\n<h2 id=\"l-essentiel-en-30-secondes\">L&rsquo;essentiel en 30 secondes<\/h2>\n<ul>\n<li>Le Lasso est une <strong><a href=\"\/blog\/machine-learning\/qu-est-ce-qu-une-regression-lineaire\/\" title=\"r\u00e9gression lin\u00e9aire\">r\u00e9gression lin\u00e9aire<\/a> p\u00e9nalis\u00e9e<\/strong> : on ajoute \u00e0 l&rsquo;erreur un co\u00fbt proportionnel \u00e0 la somme des valeurs absolues des coefficients.<\/li>\n<li>D\u00e8s que le r\u00e9glage \u03bb est assez grand, certains coefficients tombent \u00e0 <strong>exactement z\u00e9ro<\/strong> : le mod\u00e8le trie lui-m\u00eame ses variables.<\/li>\n<li>Le m\u00eame probl\u00e8me s&rsquo;\u00e9crit <strong>sous un budget \u00e0 ne pas d\u00e9passer<\/strong> ; la forme en losange de ce budget explique les z\u00e9ros.<\/li>\n<li>\u03bb se choisit par <strong>validation crois\u00e9e<\/strong>, en comparant l&rsquo;erreur de test de chaque valeur essay\u00e9e.<\/li>\n<li>Le Lasso reste un mod\u00e8le lin\u00e9aire : <strong>il trie, il ne courbe pas<\/strong>.<\/li>\n<\/ul>\n<h2 id=\"une-regression-lineaire-a-qui-l-on-fait-payer-chaque-coefficient\">Une r\u00e9gression lin\u00e9aire \u00e0 qui l&rsquo;on fait payer chaque coefficient<\/h2>\n<p>Une r\u00e9gression lin\u00e9aire choisit les coefficients <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-c7b9ff31f3b4a1701cf1073c59582745_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#98;&#101;&#116;&#97;&#95;&#106;\" title=\"Rendered by QuickLaTeX.com\" height=\"19\" width=\"16\" style=\"vertical-align: -6px;\"\/> qui rendent la somme des carr\u00e9s des \u00e9carts entre r\u00e9ponses observ\u00e9es et pr\u00e9dites, le <a href=\"\/blog\/maths\/le-rss-residual-sum-of-squares\/\" title=\"RSS\">RSS<\/a>, la plus petite possible. Le <strong>Lasso<\/strong> garde ce crit\u00e8re et lui ajoute un prix : \u03bb fois la somme des valeurs absolues des coefficients.<\/p>\n<p><p class=\"ql-center-displayed-equation\" style=\"line-height: 53px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-20dd4911bb3fd12f93acc16cf3812916_l3.png\" height=\"53\" width=\"127\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#91; &#92;&#109;&#97;&#116;&#104;&#114;&#109;&#123;&#82;&#83;&#83;&#125;&#32;&#43;&#32;&#92;&#108;&#97;&#109;&#98;&#100;&#97;&#32;&#92;&#115;&#117;&#109;&#95;&#123;&#106;&#61;&#49;&#125;&#94;&#112;&#32;&#124;&#92;&#98;&#101;&#116;&#97;&#95;&#106;&#124;&#46;&#92;&#93;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p><\/p>\n<p>Le RSS mesure \u00e0 quel point le mod\u00e8le colle aux donn\u00e9es. La somme des <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-58051d5522ffa0d5a782d0c98a336980_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#124;&#92;&#98;&#101;&#116;&#97;&#95;&#106;&#124;\" title=\"Rendered by QuickLaTeX.com\" height=\"20\" width=\"23\" style=\"vertical-align: -6px;\"\/> mesure ce que le mod\u00e8le \u00ab d\u00e9pense \u00bb en coefficients, et <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-21d0afe89f5d1545ccda3d2bd0d8660a_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#108;&#97;&#109;&#98;&#100;&#97;&#32;&#92;&#103;&#101;&#113;&#32;&#48;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"43\" style=\"vertical-align: -3px;\"\/> est le tarif, un param\u00e8tre de r\u00e9glage que tu fixes toi-m\u00eame. Ce type de p\u00e9nalit\u00e9, sur les valeurs absolues, se nomme <strong>p\u00e9nalit\u00e9 \u21131<\/strong> ; le cousin <a href=\"\/blog\/maths\/la-methode-ridge\/\" title=\"ridge\">ridge<\/a> p\u00e9nalise au contraire la somme des carr\u00e9s (p\u00e9nalit\u00e9 \u21132).<\/p>\n<p>Deux forces s&rsquo;opposent donc. Le RSS pousse \u00e0 garder toutes les variables pour mieux coller aux donn\u00e9es, la p\u00e9nalit\u00e9 pousse chaque coefficient vers z\u00e9ro. Quand \u03bb devient assez grand, la p\u00e9nalit\u00e9 l&#8217;emporte sur certains coefficients et les <strong>force \u00e0 \u00eatre exactement nuls<\/strong> : les variables correspondantes disparaissent du mod\u00e8le, qui devient parcimonieux (<em>sparse<\/em> en anglais) et bien plus facile \u00e0 lire.<\/p>\n<blockquote>\n<p><strong>\ud83d\udca1 Intuition<\/strong> Vois \u03bb comme un tarif au coefficient. Une variable qui n&rsquo;apporte pas assez d&rsquo;ajustement pour couvrir son prix n&rsquo;a plus sa place dans le mod\u00e8le : elle passe \u00e0 z\u00e9ro.<\/p>\n<\/blockquote>\n<h2 id=\"deux-ecritures-du-meme-modele-un-tarif-ou-un-budget\">Deux \u00e9critures du m\u00eame mod\u00e8le : un tarif ou un budget<\/h2>\n<p>On peut poser le probl\u00e8me autrement, sans prix mais avec un plafond. Minimiser le seul RSS sous la contrainte que la somme des valeurs absolues des coefficients ne d\u00e9passe pas une valeur <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-ae1901659f469e6be883797bfd30f4f8_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#115;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"8\" style=\"vertical-align: 0px;\"\/> revient au m\u00eame probl\u00e8me que la version p\u00e9nalis\u00e9e.<\/p>\n<p><p class=\"ql-center-displayed-equation\" style=\"line-height: 53px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-a224020de7a02b07838eaa4977d6866a_l3.png\" height=\"53\" width=\"337\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#91; &#92;&#109;&#105;&#110;&#95;&#123;&#92;&#98;&#101;&#116;&#97;&#125;&#92;&#32;&#92;&#109;&#97;&#116;&#104;&#114;&#109;&#123;&#82;&#83;&#83;&#125;&#32;&#92;&#113;&#117;&#97;&#100;&#32;&#92;&#116;&#101;&#120;&#116;&#123;&#115;&#111;&#117;&#115;&#32;&#108;&#97;&#32;&#99;&#111;&#110;&#116;&#114;&#97;&#105;&#110;&#116;&#101;&#125;&#32;&#92;&#113;&#117;&#97;&#100;&#32;&#92;&#115;&#117;&#109;&#95;&#123;&#106;&#61;&#49;&#125;&#94;&#112;&#32;&#124;&#92;&#98;&#101;&#116;&#97;&#95;&#106;&#124;&#32;&#92;&#108;&#101;&#113;&#32;&#115;&#46;&#92;&#93;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p><\/p>\n<p>Ici, <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-ae1901659f469e6be883797bfd30f4f8_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#115;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"8\" style=\"vertical-align: 0px;\"\/> est un <strong>budget total<\/strong> \u00e0 r\u00e9partir entre tous les coefficients : en accorder davantage \u00e0 une variable, c&rsquo;est en retirer aux autres. R\u00e9gler <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-ae1901659f469e6be883797bfd30f4f8_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#115;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"8\" style=\"vertical-align: 0px;\"\/> ou r\u00e9gler \u03bb, c&rsquo;est choisir jusqu&rsquo;o\u00f9 le mod\u00e8le a le droit de d\u00e9penser.<\/p>\n<p>Le ridge admet la m\u00eame double \u00e9criture, avec un plafond sur la somme des carr\u00e9s au lieu de la somme des valeurs absolues. La forme de ce plafond va tout changer, comme tu vas le voir.<\/p>\n<h2 id=\"pourquoi-un-losange-fabrique-des-zeros\">Pourquoi un losange fabrique des z\u00e9ros<\/h2>\n<p>Prends un mod\u00e8le \u00e0 deux coefficients, <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-002f618dd2d52e6ce129e66c06d48c36_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#98;&#101;&#116;&#97;&#95;&#49;\" title=\"Rendered by QuickLaTeX.com\" height=\"17\" width=\"16\" style=\"vertical-align: -4px;\"\/> et <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-153669ba4d14f13c0d9e64613b4b9efc_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#98;&#101;&#116;&#97;&#95;&#50;\" title=\"Rendered by QuickLaTeX.com\" height=\"17\" width=\"17\" style=\"vertical-align: -4px;\"\/>, et dessine dans leur plan la zone que le budget autorise. Pour le Lasso, la contrainte <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-d917e6560412bf0b6e8d806a6bcbc073_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#124;&#92;&#98;&#101;&#116;&#97;&#95;&#49;&#124;&#32;&#43;&#32;&#124;&#92;&#98;&#101;&#116;&#97;&#95;&#50;&#124;&#32;&#92;&#108;&#101;&#113;&#32;&#115;\" title=\"Rendered by QuickLaTeX.com\" height=\"19\" width=\"106\" style=\"vertical-align: -5px;\"\/> trace un <strong>losange dont les coins tombent sur les axes<\/strong> ; pour le ridge, la somme des carr\u00e9s trace un disque.<\/p>\n<p>Superpose maintenant les courbes de niveau du RSS : ce sont des ellipses centr\u00e9es sur la solution des moindres carr\u00e9s, celle qu&rsquo;on obtiendrait sans aucune contrainte. La solution du probl\u00e8me sous budget est l&rsquo;endroit o\u00f9 ces ellipses touchent la zone autoris\u00e9e.<\/p>\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6adef47177742&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6adef47177742\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1308\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_regions_contrainte_ridge_lasso-scaled.png\" alt=\"Deux panneaux dans le plan (\u03b21, \u03b22) : \u00e0 gauche, une zone de contrainte en disque pour le ridge ; \u00e0 droite, une zone en losange pour le Lasso, chacune travers\u00e9e par des ellipses de niveau de l'erreur ; les coins du losange sont pos\u00e9s sur les axes\" class=\"wp-image-424\" srcset=\"https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_regions_contrainte_ridge_lasso-scaled.png 2560w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_regions_contrainte_ridge_lasso-300x153.png 300w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_regions_contrainte_ridge_lasso-1024x523.png 1024w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_regions_contrainte_ridge_lasso-768x393.png 768w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_regions_contrainte_ridge_lasso-1536x785.png 1536w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_regions_contrainte_ridge_lasso-2048x1047.png 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Regarde o\u00f9 les ellipses viennent au contact. Sur le disque, rien ne privil\u00e9gie un point de la fronti\u00e8re, donc aucun coefficient n&rsquo;a de raison de tomber pile \u00e0 z\u00e9ro. Sur le losange, le contact le plus probable se fait <strong>sur un coin<\/strong>, et un coin pos\u00e9 sur un axe, c&rsquo;est un coefficient nul.<\/figcaption><\/figure>\n\n\n<p>Avec beaucoup de variables, le m\u00eame m\u00e9canisme joue sur des coins o\u00f9 un ou plusieurs coefficients valent z\u00e9ro \u00e0 la fois.<\/p>\n<blockquote>\n<p><strong>\ud83d\udccc \u00c0 retenir<\/strong> Le z\u00e9ro du Lasso n&rsquo;est pas un arrondi ni un seuil pos\u00e9 \u00e0 la main : il vient de la g\u00e9om\u00e9trie d&rsquo;une contrainte aux coins pointus.<\/p>\n<\/blockquote>\n<h2 id=\"le-lasso-face-au-tri-exhaustif-des-variables\">Le Lasso face au tri exhaustif des variables<\/h2>\n<p>\u00c9carter les variables inutiles, d&rsquo;autres m\u00e9thodes le font d\u00e9j\u00e0, par une route tr\u00e8s diff\u00e9rente. La s\u00e9lection du meilleur sous-ensemble ajuste tous les mod\u00e8les possibles pour chaque taille, retient le meilleur de chaque taille, puis compare les finalistes par leur erreur de test estim\u00e9e. C&rsquo;est la plus simple \u00e0 comprendre, mais elle exige <strong>plus d&rsquo;un milliard de mod\u00e8les<\/strong> d\u00e8s 30 variables.<\/p>\n<p>Le Lasso ne trie pas avant d&rsquo;ajuster. Il ajuste un mod\u00e8le avec les <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-3bf85f1087e9fbed3a319341134ac1a2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#112;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"10\" style=\"vertical-align: -4px;\"\/> variables, mais contraint leurs coefficients, et c&rsquo;est cette contrainte qui en met certains \u00e0 z\u00e9ro. Il r\u00e9alise ainsi, comme la s\u00e9lection de sous-ensembles, une vraie s\u00e9lection de variables.<\/p>\n<table>\n<thead>\n<tr>\n<th>M\u00e9thode<\/th>\n<th>Ce qu&rsquo;elle fait aux variables<\/th>\n<th>Ce qu&rsquo;il reste dans le mod\u00e8le<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Meilleur sous-ensemble<\/td>\n<td>Choisit directement un groupe de variables<\/td>\n<td>Le groupe retenu<\/td>\n<\/tr>\n<tr>\n<td>Lasso<\/td>\n<td>Contraint les coefficients par la somme des valeurs absolues<\/td>\n<td>Les variables \u00e0 coefficient non nul<\/td>\n<\/tr>\n<tr>\n<td>Ridge<\/td>\n<td>R\u00e9tr\u00e9cit tous les coefficients<\/td>\n<td>Toutes les variables, aucune annul\u00e9e<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"regler-un-curseur-pose-par-validation-croisee\">R\u00e9gler \u03bb : un curseur pos\u00e9 par validation crois\u00e9e<\/h2>\n<p>Tout Lasso se r\u00e8gle avec un seul curseur, \u03bb. On balaie une grille de valeurs, on mesure pour chacune l&rsquo;erreur de test par validation crois\u00e9e, et la gagnante est celle dont l&rsquo;erreur est la plus basse.<\/p>\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6adef47177c21&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6adef47177c21\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1229\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_chemin_coefficients_ridge_lasso-scaled.png\" alt=\"Deux graphiques c\u00f4te \u00e0 c\u00f4te montrant l'\u00e9volution de trois coefficients quand \u03bb augmente : \u00e0 gauche, les coefficients ridge diminuent sans jamais atteindre z\u00e9ro ; \u00e0 droite, les coefficients Lasso atteignent z\u00e9ro chacun pour une valeur diff\u00e9rente de \u03bb, puis restent nuls\" class=\"wp-image-307\" srcset=\"https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_chemin_coefficients_ridge_lasso-scaled.png 2560w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_chemin_coefficients_ridge_lasso-300x144.png 300w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_chemin_coefficients_ridge_lasso-1024x492.png 1024w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_chemin_coefficients_ridge_lasso-768x369.png 768w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_chemin_coefficients_ridge_lasso-1536x737.png 1536w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch05_chemin_coefficients_ridge_lasso-2048x983.png 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Ne regarde que le panneau de droite. Chaque coefficient Lasso quitte le mod\u00e8le \u00e0 sa propre valeur de \u03bb, puis y reste absent : choisir un point sur l&rsquo;axe horizontal, c&rsquo;est donc choisir en m\u00eame temps <strong>quelles variables survivent<\/strong>.<\/figcaption><\/figure>\n\n\n<p>Reste \u00e0 estimer l&rsquo;erreur de test sans r\u00e9server de donn\u00e9es d\u00e9di\u00e9es, car l&rsquo;erreur d&rsquo;entra\u00eenement la sous-estime typiquement, parfois tr\u00e8s largement. La validation crois\u00e9e \u00e0 <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-3422b6bb5c160593658b7c39425d9880_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#107;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"9\" style=\"vertical-align: 0px;\"\/> blocs d\u00e9coupe les observations en <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-3422b6bb5c160593658b7c39425d9880_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#107;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"9\" style=\"vertical-align: 0px;\"\/> groupes de taille comparable : chaque groupe sert \u00e0 tour de r\u00f4le de validation, le mod\u00e8le \u00e9tant ajust\u00e9 sur les <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-ee62354264e7bacb9e0379203651c48d_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#107;&#32;&#45;&#32;&#49;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"39\" style=\"vertical-align: 0px;\"\/> autres, et l&rsquo;estimation finale est la moyenne des <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/ql-cache\/quicklatex.com-3422b6bb5c160593658b7c39425d9880_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#107;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"9\" style=\"vertical-align: 0px;\"\/> erreurs obtenues.<\/p>\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6adef471780db&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6adef471780db\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"2400\" height=\"1260\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch04_validation_croisee_k_fold.png\" alt=\"Sch\u00e9ma de la validation crois\u00e9e \u00e0 5 blocs : cinq lignes repr\u00e9sentent cinq it\u00e9rations, et \u00e0 chacune un bloc diff\u00e9rent, en orange, sert de validation tandis que les quatre autres, en gris, servent \u00e0 l'entra\u00eenement\" class=\"wp-image-425\" srcset=\"https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch04_validation_croisee_k_fold.png 2400w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch04_validation_croisee_k_fold-300x158.png 300w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch04_validation_croisee_k_fold-1024x538.png 1024w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch04_validation_croisee_k_fold-768x403.png 768w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch04_validation_croisee_k_fold-1536x806.png 1536w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch04_validation_croisee_k_fold-2048x1075.png 2048w\" sizes=\"auto, (max-width: 2400px) 100vw, 2400px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Suis les cinq lignes : le bloc orange change \u00e0 chaque it\u00e9ration, si bien que <strong>chaque observation joue une fois<\/strong> le r\u00f4le de donn\u00e9e de test.<\/figcaption><\/figure>\n\n\n<p>En pratique, avec scikit-learn, la classe <code>ElasticNet<\/code> g\u00e9n\u00e9ralise le ridge et le Lasso ; \u03bb s&rsquo;y appelle <code>alpha<\/code>, et son argument <code>l1_ratio<\/code> vaut 1 pour obtenir un Lasso pur.<\/p>\n<h2 id=\"au-dela-de-la-regression-lineaire-un-lasso-sur-des-essais-cliniques\">Au-del\u00e0 de la r\u00e9gression lin\u00e9aire : un Lasso sur des essais cliniques<\/h2>\n<p>La p\u00e9nalit\u00e9 \u21131 n&rsquo;est pas li\u00e9e \u00e0 la seule r\u00e9gression lin\u00e9aire : les m\u00e9thodes de r\u00e9gularisation, ridge et Lasso, s&rsquo;appliquent telles quelles au <a href=\"\/blog\/machine-learning\/le-modele-de-cox\/\" title=\"mod\u00e8le de Cox\">mod\u00e8le de Cox<\/a>, un mod\u00e8le de survie qui relie le temps \u00e9coul\u00e9 avant un \u00e9v\u00e9nement \u00e0 des caract\u00e9ristiques.<\/p>\n<p>Un cas r\u00e9el : le d\u00e9lai de publication de plusieurs centaines d&rsquo;essais cliniques, selon le nombre de centres, un r\u00e9sultat positif ou non et le budget. Un mod\u00e8le de Cox p\u00e9nalis\u00e9 par le Lasso s\u00e9lectionne alors, comme en r\u00e9gression lin\u00e9aire, un <strong>sous-ensemble restreint et interpr\u00e9table<\/strong> de pr\u00e9dicteurs, ceux qui sont les plus associ\u00e9s au d\u00e9lai.<\/p>\n<p>Le r\u00e9glage suit la m\u00eame logique : le param\u00e8tre de p\u00e9nalit\u00e9 se contr\u00f4le par validation crois\u00e9e.<\/p>\n<h2 id=\"un-modele-sobre-pas-un-modele-souple\">Un mod\u00e8le sobre, pas un mod\u00e8le souple<\/h2>\n<p>Le Lasso ne donne pas de souplesse au mod\u00e8le, <strong>il lui en retire<\/strong>. Il restreint encore la flexibilit\u00e9 du mod\u00e8le lin\u00e9aire en for\u00e7ant certains coefficients \u00e0 z\u00e9ro, ce qui le rend plus lisible : la r\u00e9ponse ne d\u00e9pend plus que d&rsquo;un sous-ensemble r\u00e9duit de variables.<\/p>\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6adef4717854f&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6adef4717854f\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"2100\" height=\"1650\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch01_tradeoff_flexibilite_interpretabilite.png\" alt=\"Nuage de m\u00e9thodes sur deux axes, flexibilit\u00e9 et interpr\u00e9tabilit\u00e9 : s\u00e9lection de sous-ensembles, Lasso et moindres carr\u00e9s en haut \u00e0 gauche, machines \u00e0 vecteurs de support et apprentissage profond en bas \u00e0 droite, arbres, bagging et boosting au milieu\" class=\"wp-image-255\" srcset=\"https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch01_tradeoff_flexibilite_interpretabilite.png 2100w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch01_tradeoff_flexibilite_interpretabilite-300x236.png 300w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch01_tradeoff_flexibilite_interpretabilite-1024x805.png 1024w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch01_tradeoff_flexibilite_interpretabilite-768x603.png 768w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch01_tradeoff_flexibilite_interpretabilite-1536x1207.png 1536w, https:\/\/www.ranksignal.fr\/wp-content\/uploads\/2026\/10\/b1_ch01_tradeoff_flexibilite_interpretabilite-2048x1609.png 2048w\" sizes=\"auto, (max-width: 2100px) 100vw, 2100px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Rep\u00e8re le coin sup\u00e9rieur gauche : le Lasso y si\u00e8ge avec la s\u00e9lection de sous-ensembles. Il perd en souplesse ce qu&rsquo;il gagne en lisibilit\u00e9, et c&rsquo;est le prix de son tri.<\/figcaption><\/figure>\n\n\n<blockquote>\n<p><strong>\ud83d\udccc \u00c0 retenir<\/strong> Le Lasso ne rend pas ton mod\u00e8le plus malin, il le rend plus sobre : il garde les variables qui valent leur co\u00fbt et laisse les autres \u00e0 z\u00e9ro.<\/p>\n<\/blockquote>","protected":false},"excerpt":{"rendered":"<p>Une p\u00e9nalit\u00e9 sur la valeur absolue des coefficients, un losange aux coins sur les axes : voil\u00e0 comment le Lasso met des variables \u00e0 z\u00e9ro tout seul.<\/p>\n","protected":false},"author":1,"featured_media":426,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-427","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-maths"],"_links":{"self":[{"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/posts\/427","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/comments?post=427"}],"version-history":[{"count":3,"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/posts\/427\/revisions"}],"predecessor-version":[{"id":774,"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/posts\/427\/revisions\/774"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/media\/426"}],"wp:attachment":[{"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/media?parent=427"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/categories?post=427"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ranksignal.fr\/blog\/wp-json\/wp\/v2\/tags?post=427"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}