4
4
Régression
Régression linéaire
Régression polynomiale
Régression régularisée
K. Nassiri
Apprentssage supervisé : Régression vs Classification
Concept :
• Nous travaillons avec des données sous la forme d'entrées et de sorties :
Objectifs
Expliquer : Comprendre comment les entrées sont reliées aux sorties.
Prédire : Faire des prévisions sur la sortie à partir de nouvelles entrées .
telle que :
L’objectif est de trouver les paramètres qui minimisent une fonction de coût mesurant
l’écart entre prédictions 𝑖 et valeurs réelles .
Paramètres vs Hyperparamètres
A. Les paramètres ( )
Les paramètres sont des valeurs qui sont ajustées automatiquement par le modèle
pendant le processus d'apprentissage. Ils déterminent le comportement du modèle.
Les paramètres sont les réglages internes que le modèle ajuste automatiquement
pendant l'apprentissage en fonction des données qu'il "lit".
Exemple :
Dans une fonction de prédiction telle que , les paramètres incluent
Poids ( ) : Cela représente la pente de la ligne, combien elle monte ou descend.
Biais ( ) : Cela détermine où la ligne coupe l'axe vertical (l'ordonnée à
l'origine).
Rôle :
Ces paramètres définissent les connaissances acquises par le modèle lors de
l’entraînement. Plus ils sont ajustés correctement, meilleure sera la performance du
modèle.
Paramètres vs Hyperparamètres
A. Les paramètres ( ) : Exemple d’un enfant qui apprend à écrire des lettres.
Le problème (tâche) : apprendre à tracer la lettre “A” correctement.
Le « modèle » de l’enfant = sa façon d’écrire (mouvements, pression du crayon,
séquence des traits).
Comment ils sont obtenus : l’enfant pratique, observe, corrige — ces éléments
changent progressivement en réponse au feedback.
paramètres = coefficients d’un modèle (coefficients d’une régression) qui sont ajustés automatiquement pendant
l’entraînement pour réduire l’erreur.
Paramètres vs Hyperparamètres
B. Les Hyperparamètres
Les hyperparamètres, en revanche, sont des paramètres que vous devez définir vous-
même avant que le processus d'apprentissage ne commence. Ils ne sont pas ajustés par
le modèle pendant l'apprentissage.
Exemple :
Reprenons l'exemple de la ligne droite. Supposons que vous deviez décider de la façon
dont vous allez apprendre à dessiner cette ligne (en d’autres termes, comment vous
entraînez le modèle). Voici quelques hyperparamètres possibles :
• Taux d’apprentissage ( ) : Cela détermine la taille des étapes que vous faites lorsque
vous ajustez et . Un taux d'apprentissage élevé peut vous faire sauter des zones
importantes, tandis qu'un taux trop bas peut rendre le processus très lent.
• Nombre d’époques : Cela signifie combien de fois vous allez examiner tous vos points
de données pour mettre à jour et . Par exemple, si vous entraînez votre modèle sur
un ensemble de données pendant 100 époques, cela signifie que vous allez passer 100
fois par tous vos exemples.
Paramètres vs Hyperparamètres
B. Les Hyperparamètres (ce que l’adulte définit) : Exemple d’un enfant
Ce sont les règles, l’organisation ou les conditions que l’adulte (enseignant/parent) fixe
avant l’apprentissage.
Exemples concrets :
o Durée et fréquence des séances d’entraînement (5 minutes par jour vs 1 heure par
semaine).
o Le type de crayon utilisé (crayon à mine dure vs crayon gras).
o Le niveau de détail des instructions (dessiner point par point ou montrer le modèle
fini).
o S’il faut corriger l’enfant à chaque erreur ou seulement après chaque session.
Paramètres :
Ajustés par le modèle pendant l'apprentissage (ex : poids et biais d'une ligne)
Les paramètres sont cruciaux, car ce sont eux qui déterminent comment le modèle
"apprend" des données. Si les paramètres sont bien ajustés, le modèle peut faire
de bonnes prédictions.
Hyperparamètres :
Choisis par vous avant l'apprentissage (ex : taux d'apprentissage, nombre
d'époques).
Les hyperparamètres affectent la manière dont le modèle apprend. Choisir les
bons hyperparamètres peut améliorer la performance du modèle, tandis que de
mauvais choix peuvent le rendre inefficace ou même le faire échouer.
La fonction de perte ( )
La fonction de perte est essentielle pour évaluer si notre fonction de prédiction (notre
modèle) est performante. Elle nous permet de quantifier l'écart entre les prédictions du modèle
et les valeurs réelles .
où ) vecteur de caractéristiques) et .
où
est l’ordonnée à l’origine (intercept) (biais)
la pente (coefficient) , qui indique la variation de Y pour une variation unitaire de
X (la pondération de la caractéristique )
L'erreur aléatoire (le bruit que le modèle ne peut pas expliquer).
Qu’est-ce qu’un modèle de régression ?
1. Régression linéaire simple (une seule variable)
La droite d'ajustement optimale sera celle qui optimise les valeurs de (pente) et
(ordonnée à l'origine) afin que les valeurs y prédites soient aussi proches que possible des
points de données réels.
Qu’est-ce qu’un modèle de régression ?
Exemple concret : Régression linéaire simple (une seule variable)
Prédiction du prix d’un diamant
Prix Carat
Objectif de l’apprentissage
Minimiser l’erreur entre :
et
Qu’est-ce qu’un modèle de régression ?
Exemple concret : Régression linéaire simple (une seule variable)
Tout commence par un constat d'échec.
Le problème :
Si on fait la moyenne des résidus , les erreurs positives et négatives
s'annulent. Un modèle qui se trompe de +100 et de -100 aurait une erreur
moyenne de 0... ce qui est absurde !
Qu’est-ce qu’un modèle de régression ?
2. Régression linéaire Multiple (plusieurs variables)
La régression linéaire multiple permet de prédire
une variable continue (variable dépendante) à
partir de plusieurs variables explicatives
)appelées caractéristiques ou
covariables).
Le terme linéaire signifie que le modèle est
linéaire par rapport aux paramètres
(coefficients), et non nécessairement par rapport
aux variables elles-mêmes.
Modèle
Forme vectorielle
avec
o Le terme permet d’intégrer le biais .
Qu’est-ce qu’un modèle de régression ?
2. Régression linéaire Multiple (plusieurs variables)
Modèle
Forme vectorielle
avec
o Le terme permet d’intégrer le biais .
Forme matricielle (pour observations)
où :
o :vecteur des observations
o × :matrice de design (variables indépendantes)
o :vecteur des coefficients (poids) correspondant à chaque prédicteur.
o : vecteur des erreurs (bruit)
Qu’est-ce qu’un modèle de régression ?
2. Régression linéaire Multiple (plusieurs variables)
Exemple : prédiction du prix d’une maison
On souhaite prédire le prix d’une maison en fonction de plusieurs variables
explicatives :
o 1 :superficie (m²)
o 2 :nombre de chambres
o 3 :âge de la maison
Exemple de prédiction
Pour une maison avec :130 m², 4 chambres, 10 ans
Comment Vérifier :
a. Scatter Plot : Tracer un nuage de points de Y contre X pour visualiser si les points semblent suivre
une tendance linéaire.
b. Corrélation : Calculer le coefficient de corrélation (r) pour quantifier la force de la relation
linéaire. Un r proche de 1 ou -1 indique une forte relation linéaire.
Hypothèses de la régression linéaire Qu’est-ce qu’un modèle de régression ?
2. Indépendance des résidus (erreurs) :
Les résidus doivent être indépendants les uns des autres. Cela est particulièrement
important pour les données de séries temporelles où les observations peuvent être
corrélées dans le temps.
la valeur du résidu pour une observation ne donne aucune information sur la valeur du
résidu d'une autre observation.
Les erreurs ne doivent pas être corrélées entre elles (absence d'autocorrélation).
Pourquoi est-ce important ?
Si les résidus ne sont pas indépendants, cela signifie que le modèle n'a pas capturé
toute la structure informationnelle des données.
o Biais : Les coefficients du modèle deviennent biaisés, et le modèle ne prédit pas correctement
le phénomène.
o Inférence invalide : Les intervalles de confiance et les tests de significativité (p-values) sont
erronés.
Comment Vérifier :
a. Residual Plot : Tracer les résidus contre l'index temporel ou les valeurs prédites. Si les résidus
montrent un motif (par exemple, une tendance ou un cycle), cela indique une dépendance.
b. Test de Durbin-Watson : Utiliser ce test pour quantifier l'autocorrélation des résidus.
Hypothèses de la régression linéaire Qu’est-ce qu’un modèle de régression ?
3. Normalité des erreurs :
Les erreurs doivent suivre une distribution normale (en forme de cloche). Cela est important
pour les tests d'hypothèses et la construction d'intervalles de confiance pour les coefficients du
modèle.
La non-normalité révèle souvent un problème de spécification :
o Forme fonctionnelle incorrecte : Relation non-linéaire non modélisée
o Variables omises : Effets confondus non capturés
o Hétéroscédasticité : Variance des erreurs non constante
o Distribution des données : Y suit une loi non-normale (ex: asymétrie, queues épaisses)
Comment Vérifier :
a. Q-Q Plot (Graphique de probabilité normale) : Tracer un quantile-quantile plot des résidus
contre une distribution normale. Si les points suivent approximativement une ligne droite, les
résidus sont normalement distribués.
b. Test de Shapiro-Wilk : Utiliser ce test pour vérifier formellement la normalité des résidus.
Identifier la cause : Analyse des résidus (histogramme, test d'autocorrélation)
Corriger la spécification :
o Transformations (Box-Cox pour Y, log pour X)
o Ajout de termes polynomiaux/interactions
o Modèles robustes (Quantile Regression) ou GLS
o Variables instrumentales si exogénéité violée
Hypothèses de la régression linéaire Qu’est-ce qu’un modèle de régression ?
4. Variance constante (homoscédasticité) :
les erreurs doivent être uniformément réparties sur toutes les valeurs d’entrée. Si cette
répartition change (par exemple, si elle s’élargit ou se rétrécit), on parle
d’hétéroscédasticité, ce qui pose problème pour le modèle.
Comment Vérifier :
a. Residual vs Fitted Plot : Tracer les résidus contre les valeurs prédites. Si la dispersion des résidus
augmente ou diminue avec les valeurs prédites, cela indique une hétéroscédasticité.
b. Test de Breusch-Pagan : Utiliser ce test pour détecter formellement l'hétéroscédasticité.
Comment Vérifier :
a. Connaissance Théorique : Utiliser la connaissance théorique du domaine pour
argumenter l'exogénéité des variables.
b. Instruments Variables : Si l'exogénéité est suspectée, utiliser des variables
instrumentales pour estimer le modèle.
Qu’est-ce qu’un modèle de régression ?
3. Régression polynomiale
La régression polynomiale est une
extension de la régression linéaire.
Note cruciale :
Même si la relation entre et est non linéaire (courbe) : le modèle reste linéaire
par rapport aux paramètres
Qu’est-ce qu’un modèle de régression ?
3. Régression polynomiale
Exemple simple : rendement d’une réaction chimique
Imaginons que l’on étudie le rendement d’une réaction chimique en fonction de
la température .
Comportement réel :
La fonction de perte mesure l’erreur pour un seul exemple (C’est une mesure
individuelle : 𝒊 𝒊
C’est la pénalité locale
Le coût est une mesure globale. C'est la moyenne (ou la somme) de toutes les fonctions
de perte sur l'ensemble du dataset d'entraînement.C’est la pénalité globale
Elle représente l'erreur totale du modèle. C'est cette valeur que l'algorithme
d'optimisation (comme la Descente de Gradient) cherche à minimiser.
La fonction de coût Qu’est-ce qu’un modèle de régression ?
Pourquoi ? Elle est plus "robuste". Si vous avez des données aberrantes
(outliers), la MAE ne s'affole pas autant que la MSE.
Pourquoi ? Pour rendre l'erreur positive et surtout pour punir sévèrement les
grosses erreurs. Une erreur de 10 devient une pénalité de 100, alors qu'une
erreur de 2 ne vaut que 4.
La fonction de coût Qu’est-ce qu’un modèle de régression ?
3. Huber Loss
C'est un hybride. Elle se comporte comme une MSE quand l'erreur est petite, et
comme une MAE quand l'erreur est grande.
3. Huber Loss
La MSE est excellente quand l'erreur est petite, car elle est très lisse près
de zéro (facile à optimiser). Mais elle est obsédée par les grandes erreurs :
si un point est très loin, le carré rend l'erreur gigantesque et "tire" tout le
modèle vers lui.
La MAE est robuste. Elle ignore la violence des outliers. Cependant, elle
n'est pas dérivable en zéro (forme de "V"), ce qui peut rendre
l'optimisation instable quand on approche du minimum.
La fonction de coût Qu’est-ce qu’un modèle de régression ?
2 si
si
La fonction de coût Qu’est-ce qu’un modèle de régression ?
3. Huber Loss
Pourquoi ces formules ?
Zone centrale ( ) : on adopte une fonction quadratique identique à la MSE :
2
1
o Le facteur est introduit pour simplifier les calculs, notamment la dérivée, qui
2
devient simplement , ce qui facilite l’optimisation.
Valeur réelle :
Prédiction :
Erreur :
Valeur réelle :
Prédiction :
Erreur :
Remarque importante
Si l’on avait utilisé la MSE :
2
Conclusion
La Huber Loss limite fortement l’impact des grandes erreurs :
elle reste précise pour les petites erreurs
elle évite que les outliers dominent l’apprentissage
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
où :
: variables d’entrée
:prédiction
: paramètres (coefficients) du modèle
Objectif
Trouver les paramètres optimaux :
∗
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
Modèle linéaire 1 𝜃
𝑥 𝜃
𝑋= et 𝜃 =
⋮ ⋮
𝑥 𝜃
o est le nombre de variables d’entrée (features)
Fonction de coût
Passage à l’optimisation
Le problème devient :
Condition d’optimalité
On cherche :
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
Objectif
Trouver qui minimise l’erreur entre :
et
En forme matricielle
En forme développée :
Développons :
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
𝒥
En annulant ce gradient, on obtient les équations normales :
Si est inversible (ce qui signifie que les colonnes de X sont linéairement
indépendantes) :
∗ 1
Exemple concret
Exemple concret
Résolvons :
Calculons et : De la première ligne : →
.
De la seconde : →
.
En multipliant la première équation par 3 :
.
On soustrait de la seconde :
→ .
Puis .
Les équations normales :
Le modèle ajusté est donc .On vérifie que les résidus sont nuls (car
points alignés).
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2
o 𝑛 est le nombre d’observations
En forme matricielle :
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Gradient de la fonction de coût
𝒥
On calcule le gradient par rapport à , . Pour un modèle linéaire avec la MSE, le
gradient est :
Descente de gradient
L'objectif est de minimiser (θ) en ajustant iterativement les paramètres θ. À
chaque itération, les paramètres sont mis à jour dans la direction du gradient négatif
de (θ):
pour où:
o est le taux d'apprentissage (learning rate),
𝒥
o est le gradient de (θ) par rapport à .
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Calcul des gradients
On considère :
0
Fonction de coût
2
1
Objectif
Calculer :
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Calcul des gradients
Dérivation étape par étape
Étape 1 : dériver une somme
Donc :
1
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Calcul des gradients
Dérivation étape par étape
Étape 3 : simplification
0
Donc :
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Calcul des gradients
Dérivation étape par étape
pour
1
Chaque gradient mesure l’influence du paramètre sur l’erreur globale du modèle.
Chaque dérivée nous indique comment ajuster un paramètre donné pour réduire
l’erreur.
o On corrige ensuite chaque en fonction de cette contribution.
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Cas particulier : le biais 0
Comme :
0
Alors :
0
1
Lorsque les variables ont des échelles très différentes (ex. âge entre 0 et 100, salaire
entre 1000 et 100000), la descente de gradient converge plus lentement et peut
osciller. Il est conseillé de standardiser les caractéristiques :
Modèle :
Gradient
Initialisation :
0
1
Mise à jour :
0
1
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Exemple détaillé : Régression linéaire simple
Itération 2
Prédictions :
Erreurs :
Mise à jour :
0
1
0
1
1
1
1
2
2
1
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Exemple détaillé : Régression linéaire multiple
Avec :
Prédictions
1
2
3
Erreurs
1
2
3
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Exemple détaillé : Régression linéaire multiple
Itération 2 (complète)
Gradients
Mise à jour
0
1
2
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Exemple détaillé : Régression linéaire multiple
Itération 3 (résumée)
Avec 0 1 2 :
Prédictions :
1
2
3
Erreurs :
Gradients :
0
1
2
Mise à jour :
0
1
2
Optimisation : Minimisation du coût Qu’est-ce qu’un modèle de régression ?
2ieme solution (Itérative) : Descente de gradient (gradient descent )
Exemple détaillé : Régression linéaire multiple
Itération 3 (résumée)
Avec 0 1 2 :
Prédictions :
1
2
3
Erreurs :
Gradients : Mise à jour :
𝜃 ≈ 0.148 + 0.05746 = 0.2055
𝜃 ≈ 0.333 + 0.12887 = 0.4619
𝜃 ≈ 0.480 + 0.18579 = 0.6658
Après plusieurs itérations, les paramètres tendent vers une combinaison qui minimise
la MSE. Avec nos itérations, nous observons que et augmentent, et aussi. En
pratique, avec un nombre suffisant d’itérations, on atteint une solution stable.
Métriques d’évaluation Qu’est-ce qu’un modèle de régression ?
Une fois qu’un modèle de régression est entraîné, une question essentielle se pose :
Les métriques d'évaluation sont utilisées pour mesurer la performance d'un modèle de
régression.
Elles permettent de quantifier l'erreur entre les valeurs prédites par le modèle et les
valeurs réelles.
Métriques d’évaluation Qu’est-ce qu’un modèle de régression ?
Les principales métriques de régression
1. MAE – Mean Absolute Error (Erreur absolue moyenne)
MAE
C’est la moyenne des écarts absolus. Elle s’exprime dans la même unité que la
variable cible.
Points forts :
o Très interprétable : « en moyenne, le modèle se trompe de X unités ».
o Robuste aux valeurs aberrantes (outliers) car l’erreur est linéaire.
o Simple à comprendre pour des non-spécialistes.
Points faibles :
o Non différentiable en zéro (mais ce n’est pas gênant pour l’évaluation).
o Ne pénalise pas plus les grandes erreurs que les petites.
Exemple : Prédiction de prix de maisons. MAE = 10 000 € signifie qu’en moyenne,
l’erreur absolue est de 10 000 €.
Métriques d’évaluation Qu’est-ce qu’un modèle de régression ?
Les principales métriques de régression
2. MSE – Mean Squared Error (Erreur quadratique moyenne)
2
MSE
1
Moyenne des carrés des erreurs. L’unité est le carré de l’unité de la cible.
Points forts :
o Différentiable, utilisée comme fonction de coût.
o Pénalise fortement les grandes erreurs (à cause du carré), ce qui est souhaitable
quand les grosses erreurs sont inacceptables.
Points faibles :
o Peu interprétable directement (unité au carré).
o Très sensible aux outliers : une seule valeur très aberrante peut faire exploser la
MSE.
Exemple : Si la cible est en euros, la MSE est en euros², ce qui n’est pas intuitif.
Métriques d’évaluation Qu’est-ce qu’un modèle de régression ?
Les principales métriques de régression
3. RMSE – Root Mean Squared Error (Racine de l’erreur quadratique moyenne)
2
RMSE MSE
1
C’est la racine carrée de la MSE. Elle s’exprime dans la même unité que la cible, ce qui la rend très
interprétable.
Points forts :
o Combine l’avantage de la MSE (pénalisation des grandes erreurs) avec une unité naturelle.
o Très populaire en pratique.
Points faibles :
o Toujours sensible aux outliers (comme la MSE).
o Peut être dominée par une seule observation aberrante.
Comparaison MAE vs RMSE :
o Si les erreurs sont petites et symétriques, MAE ≈ RMSE.
o Si le RMSE est nettement plus grand que la MAE, cela indique la présence de quelques erreurs
très grandes.
Métriques d’évaluation Qu’est-ce qu’un modèle de régression ?
Les principales métriques de régression
4. R² – Coefficient de détermination
2
2 1
2
1
2
: prédictions parfaites.
2
: le modèle ne fait pas mieux que la moyenne.
2
: le modèle est pire que la moyenne (mauvais signe).
Métriques d’évaluation Qu’est-ce qu’un modèle de régression ?
Les principales métriques de régression
4. R² – Coefficient de détermination
Points forts :
o Indépendant de l’échelle : permet de comparer des modèles sur des cibles
différentes.
o Souvent utilisé pour communiquer la qualité d’ajustement (en pourcentage).
Points faibles :
o Ne donne pas l’ampleur de l’erreur (un R² de 0,9 peut cacher des erreurs
importantes si la variance de est faible).
o Augmente artificiellement avec l’ajout de variables inutiles (non pénalisé).
→ Utiliser le R² ajusté quand le nombre de variables est grand
Formule du ajusté
o : nombre d’observations
o : nombre de variables explicatives
o :coefficient classique
Mise en pratique Rappel Qu’est-ce qu’un modèle de régression ?
Les deux rôles principaux du modèle Un modèle de Machine Learning a deux phases
bien distinctes :
Scikit-learn exige que soit une matrice (même avec une seule variable)
3. Créer le modèle de régression linéaire
model = LinearRegression()
Ici, on instancie un modèle de régression linéaire, mais il n’a encore rien appris.
Mise en pratique Qu’est-ce qu’un modèle de régression ?
4. Entraîner le modèle
[Link](X, y)
La méthode fit() permet d’apprendre les coefficients du modèle à partir des données
5. Voir les paramètres appris
print("Intercept ( 0) :", model.intercept_)
print("Coefficient ( 1) :", model.coef_[0])
Le modèle appris est de la forme :
0 1
6. Faire une prédiction
prediction = [Link](nouvelle_valeur)
Le modèle utilise les paramètres appris pour estimer une nouvelle valeur.
Mise en pratique Qu’est-ce qu’un modèle de régression ?
rmse = [Link](mse)
#l'écart-type des erreurs de prédiction en même unités que la variable cible
r2 = r2_score(y_true, y_pred)
#Le pourcentage de la variance de Y est expliquée par le modèle.
Mise en pratique Qu’est-ce qu’un modèle de régression ?
6. Régression polynomiale
A. Création des caractéristiques polynomiales
from [Link] import PolynomialFeatures
from sklearn.linear_model import LinearRegression
X = Variable explicative
y = Variable cible
6. Régression polynomiale
B. Instanciation et entraînement du modèle linéaire
6. Régression polynomiale
C. Prédiction sur de nouvelles données
# Prédiction
y_pred = [Link](X_new_poly)
Régularisation en régression : Qu’est-ce qu’un modèle de régression ?
lutte contre le sur-apprentissage
Pourquoi la régularisation ?
Problème du sur-apprentissage :
o un phénomène qui se produit lorsqu'un modèle apprend trop bien les données
d'entraînement, y compris le bruit et les valeurs aberrantes, et qu'il est peu
performant sur de nouvelles données.
o Exemple : Prenons une régression polynomiale. Un modèle trop complexe (degré
élevé) passe par tous les points d’entraînement, mais donne des prédictions
catastrophiques sur de nouvelles données.
Pourquoi la régularisation ?
La régularisation est une technique d'apprentissage automatique qui permet d'éviter
le surapprentissage
reg
1
La fonction de coût devient :
2
lasso
1 1
Cette pénalité peut annuler certains coefficients, ce qui permet de ne retenir que les
variables importantes et d'ignorer les moins pertinentes.
o 𝑛: Nombre d'exemples ou de points de données
Propriétés :
o 𝑝 : Nombre de caractéristiques, (variables prédictives)
o Peut annuler certains coefficients → sélection de
o 𝑦 :Valeur cible réelle pour le iieme exemple
variables (parcimonie).
o 𝑦 :Valeur cible prévue pour le iieme exemple
o 𝜃 : Coefficients des caractéristiques o Utile quand beaucoup de variables sont inutiles.
o 𝜆 : Paramètre de régularisation qui contrôle l'intensité o Pas de solution analytique (optimisation par
de la régularisation descente de sous-gradient ou coordinate descent).
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
1. Régression Lasso (pénalité L1) ) : Descente de gradient
La fonction de coût :
lasso
signe
model = Lasso(alpha=lam)
[Link](X_train, y_train)
#le sous-gradient (ou l’opérateur proximal) ajoute un terme constant
signe ,ce qui peut annuler certains coefficients.
pred = [Link](X_test)
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
1. Régression Lasso (pénalité L1) ) : Choisir le paramètre de régularisation α (alpha)
Le principal hyperparamètre à régler est alpha (noté aussi λ), qui contrôle la force de la
pénalité L1.
Un alpha trop petit conduit à un modèle trop complexe (peu de coefficients nuls, risque
de sur-apprentissage).
Un alpha trop grand annule trop de coefficients (sous-apprentissage).
Principes généraux
o Normalisation obligatoire : Les pénalités L1 et L2 sont sensibles à l’échelle des
variables. Avant toute régularisation, centre et réduis chaque caractéristique
(moyenne = 0, écart-type = 1). Utilise StandardScaler.
o Validation croisée (CV) : La méthode la plus fiable. On découpe les données en k
plis (ex. 5 ou 10). Pour chaque valeur du paramètre, on entraîne sur k-1 plis et on
évalue sur le pli restant. On retient la valeur qui minimise l’erreur moyenne.
o Plage de recherche : Pour α (lambda), utilise une échelle logarithmique
(ex. [Link](-4, 2, 50)).
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
1. Régression Lasso (pénalité L1) ) : Choisir le paramètre de régularisation α (alpha)
Méthode 1 : Utilisation de LassoCV (validation croisée intégrée)
LassoCV explore automatiquement une grille d’alpha et sélectionne celui qui
minimise l’erreur en validation croisée.
import numpy as np
from sklearn.model_selection import train_test_split
# LassoCV : recherche du meilleur alpha par validation croisée (5 plis par défaut)
lasso_cv = LassoCV(cv=5, random_state=42, max_iter=10000)
#LassoCV teste automatiquement une série d’alpha (par défaut 100 valeurs).
lasso_cv.fit(X_train_scaled, y_train)
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
1. Régression Lasso (pénalité L1) ) : Choisir le paramètre de régularisation α (alpha)
Méthode 1 : Utilisation de LassoCV (validation croisée intégrée)
from [Link] import mean_squared_error
Étapes de GridSearchCV
• Ex: {'alpha': [0.01, 0.1, 1, 10, 100]} pour une Lasso Regression.
1. Configurer la validation croisée :
• Par défaut, cv=5 (5-Fold CV).
2. Tester chaque combinaison :
• Pour chaque hyperparamètre, le modèle est entraîné K fois (une par fold).
• La performance est moyennée sur les K tests.
3. Sélectionner le meilleur modèle :
• La combinaison avec la meilleure moyenne de performance est retenue.
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
1. Régression Lasso (pénalité L1) ) : Choisir le paramètre de régularisation α (alpha)
Méthode 2 : Validation croisée manuelle avec GridSearchCV – Code Python
Comment ça marche ?
Importation des bibliothèques
import numpy as np
from sklearn.linear_model import Lasso
from sklearn.model_selection import GridSearchCV, train_test_split
from [Link] import mean_squared_error
from [Link] import make_regression
from [Link] import StandardScaler
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
1. Régression Lasso (pénalité L1) ) : Choisir le paramètre de régularisation α (alpha)
Méthode 2 : Validation croisée manuelle avec GridSearchCV – Code Python
3- Lancement de la recherche
grid_search.fit(X_train_scaled, y_train)
4- Meilleur hyperparamètre
print(f"Meilleur alpha : {grid_search.best_params_['alpha']}")
ridge
model = Ridge(alpha=lam)
[Link](X_train, y_train)
#le gradient contient un terme linéaire , ce qui réduit exponentiellement les
coefficients.
pred = [Link](X_test)
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
2. Régression Ridge (pénalité L2) : Choisir le paramètre de régularisation α (alpha)
Méthode 1 : Utilisation de RidgeCV (validation croisée intégrée)
RidgeCV explore automatiquement une grille d’alpha et sélectionne celui qui
minimise l’erreur en validation croisée.
from sklearn.model_selection import train_test_split
from sklearn.linear_model import RidgeCV
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Normalisation
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = [Link](X_test)
1. On définit les valeurs d'alpha que l'on veut tester
alphas_a_tester = [0.001, 0.01, 0.1, 1.0, 10.0, 100.0]
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
2. Régression Ridge (pénalité L2) : Choisir le paramètre de régularisation α (alpha)
Méthode 1 : Utilisation de RidgeCV (validation croisée intégrée).
2. Création du modèle RidgeCV
ridge_cv = RidgeCV(alphas=alphas_a_tester, cv=5)
# cv=5 = validation croisée en 5 parties
3. Entraînement sur les données d'entraînement
ridge_cv.fit(X_train_scaled, y_train _scaled)]
4. Meilleur alpha trouvé
Best_alpha = ridge_cv.alpha_
elastic
Elle est particulièrement utile lorsque le nombre de variables est grand (n_features >
n_samples) ou que les variables sont corrélées entre elles.
Pour les valeurs intermédiaires, il effectue à la fois une sélection de variables (L1) et
une régularisation de groupe (L2)
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
3. Elastic Net (combinaison L1 + L2) : Descente de gradient
1 2
Pénalité : avec .
2
Gradient (pour ):
elastic signe
Mise à jour :
signe
# Exemple de base
model = ElasticNet(alpha=lam, l1_ratio=r, random_state=42)
#alpha (par défaut 1.0) : pénalité globale. Plus il est grand, plus les coefficients sont
réduits ou annulés.
#l1_ratio (par défaut 0.5) : proportion de L1 dans la mixité.
[Link](X_train, y_train)
pred = [Link](X_test)
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
3. Elastic Net (combinaison L1 + L2) : Choisir les paramètre de régularisation
ElasticNet a deux paramètres à choisir :
3. Entraînement
elastic_cv.fit(X_train _scaled, y_train _scaled )
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
3. Elastic Net (combinaison L1 + L2) : Choisir les paramètre de régularisation
Méthode 1 : Utilisation de ElasticNetCV (validation croisée intégrée)
4. Meilleurs paramètres trouvés
Best_alpha = elastic_cv.alpha_
Rest_ratio = elastic_cv.l1_ratio_
4. Entraînement
grid_search_elastic.fit(X_train_scaled, y_train_scaled)
Régularisation en régression Qu’est-ce qu’un modèle de régression ?
Types de régularisation
3. Elastic Net (combinaison L1 + L2) : Choisir les paramètre de régularisation
Méthode 2 : Utiliser GridSearchCV
5. Affichage des meilleurs paramètres
Best_alpha = grid_search_elastic.best_params_['alpha’]
Best_ratio = grid_search_elastic.best_params_['l1_ratio’]
Best_score = grid_search_elastic.best_score_
# Meilleur score R² en validation croisée
2. Lasso : avec le sous-gradient simple, le pas doit être plus petit pour éviter les
oscillations autour de zéro. L’approche proximale est préférable.
ridge = Ridge(alpha=lam)
[Link](X_b, y)
#le gradient contient un terme linéaire , ce qui réduit exponentiellement les coefficients.
lasso = Lasso(alpha=lam)
[Link](X_b, y)
#le sous-gradient (ou l’opérateur proximal) ajoute un terme constant signe ,ce qui peut
annuler certains coefficients.