Skip to content

Régularisation en Régression Linéaire

Introduction

Dans le Chapitre 4, nous avons étudié l'estimateur des moindres carrés ordinaires (OLS) pour la régression linéaire. Bien que l'OLS possède d'excellentes propriétés théoriques (BLUE, sans biais), il présente des limitations pratiques importantes :

  1. Surapprentissage : Lorsque le nombre de variables p est grand par rapport au nombre d'observations m, l'OLS peut ajuster parfaitement les données d'entraînement mais mal généraliser
  2. Instabilité : Quand les variables sont corrélées (multicolinéarité), les coefficients estimés deviennent instables
  3. Variance élevée : Pour p proche de m, la variance des estimateurs explose

La régularisation est une famille de techniques qui ajoutent une pénalité au critère des moindres carrés pour contrôler la complexité du modèle et améliorer ses performances de généralisation.

Problème général de régularisation

Au lieu de minimiser simplement la somme des carrés des résidus, nous minimisons :

θ^reg=argminθ[xAθ22+λΩ(θ)]

où :

  • xAθ22 est le terme d'attache aux données (fidélité)
  • Ω(θ) est le terme de régularisation (pénalité)
  • λ0 est le paramètre de régularisation qui contrôle le compromis

Interprétation : La régularisation favorise les solutions qui :

  • Ajustent bien les données (premier terme)
  • Respectent certaines contraintes de simplicité (second terme)

Compromis biais-variance

Décomposition

L'erreur de prédiction d'un modèle se décompose en trois termes :

E[(yy^)2]=Biais2+Variance+Bruit irréductible

où :

  • Biais : Écart systématique entre les prédictions moyennes et les vraies valeurs
  • Variance : Sensibilité du modèle aux variations dans les données d'entraînement
  • Bruit irréductible : Variance du bruit σ2

Compromis

  • Modèle simple (forte régularisation) : Biais élevé, variance faible
  • Modèle complexe (faible régularisation) : Biais faible, variance élevée
  • Objectif : Trouver le bon équilibre pour minimiser l'erreur totale
Compromis biais-variance

Figure 1: Compromis biais-variance en fonction de la complexité du modèle

Intuition

La régularisation augmente légèrement le biais mais réduit fortement la variance, ce qui améliore les performances de généralisation.

Régularisation L2 (Ridge)

Définition

La régression ridge ajoute une pénalité sur la norme L2 des coefficients :

θ^ridge=argminθ[xAθ22+λθ22]

avec θ22=j=1pθj2.

Effet : Pénalise les coefficients de grande amplitude, favorisant des solutions avec des coefficients plus petits et plus stables.

Solution analytique

La régression ridge admet une solution explicite :

θ^ridge=(ATA+λI)1ATx

Remarques :

  • Pour λ=0 : on retrouve l'OLS (ATA)1ATx
  • Pour λ>0 : la matrice ATA+λI est toujours inversible (même si ATA ne l'est pas)
  • Le terme λI stabilise l'inversion en ajoutant une valeur sur la diagonale

Interprétation bayésienne

Comme vu au Chapitre 3, la régression ridge correspond à un estimateur MAP avec une loi a priori gaussienne :

θN(0,τ2I)

avec λ=σ2/τ2. La régularisation L2 traduit donc une croyance a priori que les coefficients sont centrés autour de zéro.

Propriétés

  1. Réduction de la variance : Ridge diminue la variance des estimateurs au prix d'un léger biais
  2. Stabilité : Les coefficients sont plus stables face à de petites perturbations des données
  3. Pas de sélection de variables : Ridge ne met jamais de coefficients exactement à zéro
  4. Coefficients groupés : Les variables corrélées tendent à avoir des coefficients similaires

Chemin de régularisation

L'évolution des coefficients θ^j(λ) en fonction de λ est appelée chemin de régularisation (regularization path). Pour ridge :

  • λ=0 : coefficients OLS (potentiellement grands)
  • λ : tous les coefficients tendent vers zéro
  • Trajectoires continues et monotones
Chemin Ridge

Figure 2: Trajectoire des coefficients ridge en fonction de log(λ)

Régularisation L1 (LASSO)

Définition

Le LASSO (Least Absolute Shrinkage and Selection Operator) utilise une pénalité L1 :

θ^LASSO=argminθ[xAθ22+λθ1]

avec θ1=j=1p|θj|.

Effet : Met certains coefficients exactement à zéro, réalisant ainsi une sélection automatique de variables.

Pas de solution analytique

Contrairement à ridge, le LASSO n'a pas de solution explicite en raison de la non-différentiabilité de |θj| en θj=0. On utilise des algorithmes d'optimisation :

  • Coordinate descent : optimise séquentiellement chaque coefficient
  • LARS (Least Angle Regression) : construit le chemin de régularisation efficacement
  • Proximal gradient : méthodes d'optimisation convexe avec opérateur proximal

Interprétation bayésienne

Le LASSO correspond à un estimateur MAP avec une loi a priori de Laplace (double exponentielle) :

p(θj)exp(|θj|τ)

Cette loi a des queues plus lourdes que la gaussienne, favorisant des coefficients nuls ou grands (sparse).

Propriétés

  1. Sélection de variables : Met automatiquement certains coefficients à zéro
  2. Parcimonie : Produit des modèles parcimonieux (sparse) avec peu de variables actives
  3. Instabilité de sélection : En présence de variables corrélées, LASSO peut arbitrairement en choisir une
  4. Limitation p>m : LASSO sélectionne au maximum m variables (pas plus que d'observations)

Chemin de régularisation

Pour LASSO :

  • λ=0 : solution OLS (si p<m)
  • λ croissant : coefficients mis progressivement à zéro
  • Trajectoires linéaires par morceaux avec des points de rupture où des variables entrent/sortent
Chemin LASSO

Figure 3: Trajectoire des coefficients LASSO - notez les mises à zéro abruptes

Soft-thresholding

L'opérateur de mise à jour pour coordinate descent est le soft-thresholding :

θ^j=sign(θ~j)max(|θ~j|λ,0)

θ~j est la solution OLS partielle. Cet opérateur "pousse" les coefficients vers zéro.

Régularisation L0

Définition

La régularisation L0 pénalise le nombre de coefficients non nuls :

θ^L0=argminθ[xAθ22+λθ0]

avec θ0=#{j:θj0} (nombre de composantes non nulles).

Objectif : Trouver le sous-ensemble optimal de variables qui minimise l'erreur.

Problème NP-difficile

La régularisation L0 est un problème combinatoire NP-difficile :

  • Il faut tester toutes les combinaisons de variables (il y en a 2p)
  • Infaisable pour p grand (typiquement p>30)

Algorithmes approchés

1. Recherche exhaustive

Pour p petit, on peut énumérer tous les sous-ensembles de taille k :

(pk)=p!k!(pk)!

et choisir celui qui minimise l'erreur (critère AIC, BIC, validation croisée).

2. Forward selection (sélection séquentielle avant)

Algorithme glouton :

  1. Commencer avec un modèle vide
  2. À chaque étape, ajouter la variable qui améliore le plus le critère
  3. Arrêter selon un critère (AIC, BIC, validation)

Complexité : O(p2) pour sélectionner k variables

3. Backward elimination (élimination séquentielle arrière)

Algorithme glouton :

  1. Commencer avec toutes les variables
  2. À chaque étape, retirer la variable qui dégrade le moins le critère
  3. Arrêter selon un critère

4. Stepwise selection

Combinaison de forward et backward : à chaque étape, on peut ajouter ou retirer une variable.

Critères de sélection

Pour choisir le nombre de variables, on utilise des critères qui pénalisent la complexité :

AIC (Akaike Information Criterion)

AIC=mlog(RSSm)+2k

où RSS est la somme des carrés des résidus et k est le nombre de paramètres.

BIC (Bayesian Information Criterion)

BIC=mlog(RSSm)+klog(m)

Différence : BIC pénalise plus fortement la complexité que AIC (log(m)>2 pour m>8).

Relaxation convexe : du L0 au L1

La norme L0 est non convexe (discontinue). LASSO est la relaxation convexe la plus proche :

θ0θ1

Pour λ suffisamment grand, LASSO peut trouver la solution L0 optimale.

Normes Lp

Figure 4: Boules unités pour les normes L0, L1, L2

Elastic Net

Définition

Elastic Net combine les pénalités L1 et L2 :

θ^EN=argminθ[xAθ22+λ1θ1+λ2θ22]

Souvent reparamétrisé avec un paramètre de mélange α[0,1] :

θ^EN=argminθ[xAθ22+λ(αθ1+(1α)θ22)]

avec :

  • α=1 : LASSO pur
  • α=0 : Ridge pur
  • 0<α<1 : combinaison

Motivation

Elastic Net hérite des avantages des deux méthodes :

  • Sélection de variables (grâce à L1)
  • Stabilité et groupement (grâce à L2)

Particulièrement utile quand :

  • pm : LASSO est limité à m variables, Elastic Net non
  • Variables corrélées : LASSO en choisit arbitrairement une, Elastic Net les groupe

Propriété de groupement

Quand deux variables j et k sont fortement corrélées, Elastic Net tend à leur donner des coefficients similaires :

|θ^jθ^k|C(1α)

Cette propriété est absente de LASSO.

Validation croisée et choix de λ

Problème

Comment choisir le paramètre de régularisation λ ?

Objectif : Minimiser l'erreur de généralisation (pas l'erreur d'entraînement).

Validation croisée k-fold

Procédure :

  1. Diviser les données en K plis (folds) de taille égale
  2. Pour chaque valeur de λ candidate :
    • Pour chaque pli k=1,,K :
      • Entraîner le modèle sur K1 plis
      • Prédire sur le pli k restant
      • Calculer l'erreur ek(λ)
    • Calculer l'erreur moyenne : CV(λ)=1Kk=1Kek(λ)
  3. Choisir λ^=argminλCV(λ)

Valeurs typiques : K=5 ou K=10

Règle du "one standard error"

Plutôt que de choisir le λ qui minimise exactement l'erreur CV, on peut choisir le plus grand λ tel que :

CV(λ)minλCV(λ)+SE

où SE est l'erreur standard de l'erreur CV.

Avantage : Modèle plus parcimonieux (moins de variables) avec une erreur similaire.

Erreur de validation croisée

Figure 5: Erreur CV en fonction de log(λ) avec intervalles de confiance

Comparaison des méthodes

MéthodeSélectionGroupementSolutionConvexepm
OLSNonOuiAnalytiqueOuiNon
Ridge (L2)NonOuiAnalytiqueOuiOui
LASSO (L1)OuiNonNumériqueOuiLimité
Elastic NetOuiOuiNumériqueOuiOui
L0Oui-NP-durNonOui

Guide pratique

Utiliser Ridge quand :

  • Toutes les variables sont potentiellement pertinentes
  • On veut stabiliser les coefficients (multicolinéarité)
  • On a besoin d'une solution analytique rapide

Utiliser LASSO quand :

  • On veut sélectionner automatiquement des variables
  • On suspecte que seules quelques variables sont importantes
  • On veut un modèle interprétable (parcimonieux)

Utiliser Elastic Net quand :

  • On veut sélectionner des variables ET gérer la corrélation
  • pm (plus de variables que d'observations)
  • On a des groupes de variables corrélées

Utiliser L0 (greedy) quand :

  • p est petit (p<30)
  • On veut exactement k variables
  • On peut se permettre le coût computationnel

Implémentation pratique

Normalisation des variables

Crucial : Avant d'appliquer ridge ou LASSO, normaliser les variables :

AkjAkjA¯jσj

Raison : La pénalité doit être invariante à l'échelle des variables. Sans normalisation, une variable mesurée en km serait pénalisée différemment que la même mesurée en m.

Grille de λ

Tester une grille logarithmique :

λk=λmax(λminλmax)(k1)/(K1),k=1,,K

avec typiquement K=100 valeurs entre λmin et λmax.

Pour LASSO : λmax=maxj|AjTx| (tous les coefficients sont nuls).

Warm start

Pour calculer le chemin de régularisation, utiliser le warm start :

  • Initialiser avec la solution pour λk1 lors de l'optimisation pour λk
  • Accélère considérablement le calcul (10-100×)

Exemple numérique

Données synthétiques

Générons des données avec :

  • m=100 observations
  • p=50 variables
  • Seulement 10 variables vraiment actives
  • Corrélation entre certaines variables
Comparaison des méthodes

Figure 6: Comparaison Ridge, LASSO, Elastic Net sur données synthétiques

Résultats :

  • Ridge : tous les coefficients non nuls mais petits
  • LASSO : 12 coefficients non nuls (sélection correcte + 2 faux positifs)
  • Elastic Net : 11 coefficients non nuls, meilleur compromis