La régression logistique est un modèle de classification binaire. Elle combine les variables d’entrée en un score linéaire, fait passer ce score par la fonction sigmoïde, puis produit un nombre entre 00 et 11 qui s’interprète, dans le cadre du modèle ajusté, comme la probabilité estimée de la classe positive.

Malgré son nom, la régression logistique sert généralement à choisir entre deux classes, comme réussite/échec, spam/non spam ou défaut de paiement/pas de défaut. Le mot « régression » renvoie à la formule linéaire à l’intérieur du modèle, et non à la prédiction d’une sortie continue.

Formule de la régression logistique en un coup d’œil

La régression logistique binaire utilise

p(y=1x)=σ(z),z=β0+β1x1++βnxnp(y=1 \mid x) = \sigma(z), \qquad z = \beta_0 + \beta_1 x_1 + \cdots + \beta_n x_n

avec la fonction sigmoïde

σ(z)=11+ez\sigma(z) = \frac{1}{1 + e^{-z}}

La partie linéaire zz peut être n’importe quel nombre réel. La sigmoïde ramène cette valeur dans (0,1)(0,1), ce qui permet d’utiliser la sortie comme estimation de probabilité.

Pourquoi la fonction sigmoïde est importante

Si vous utilisiez le score linéaire brut zz comme probabilité, vous pourriez obtenir des valeurs impossibles comme 1.71.7 ou 0.4-0.4. La sigmoïde corrige cela en envoyant les grands scores négatifs près de 00, les grands scores positifs près de 11, et les scores proches de 00 près de 0.50.5.

Cela donne une lecture pratique :

  • si zz est très négatif, le modèle penche vers la classe 00
  • si zz est proche de 00, le modèle est incertain
  • si zz est très positif, le modèle penche vers la classe 11

La courbe est la plus raide près de z=0z=0. Donc une petite variation du score peut beaucoup changer la probabilité près de 0.50.5, mais beaucoup moins lorsque la probabilité est déjà proche de 00 ou de 11.

Exemple de régression logistique

Supposons qu’un modèle utilise une seule variable xx et ait

z=7+0.1xz = -7 + 0.1x

Vous pouvez voir xx comme une note à un test et y=1y=1 comme « réussite ». Les coefficients ici ne sont qu’un exemple pour montrer le mécanisme.

Si x=65x = 65, alors

z=7+0.1(65)=0.5z = -7 + 0.1(65) = -0.5

La probabilité prédite est donc

p(y=1x=65)=σ(0.5)=11+e0.50.378p(y=1 \mid x=65) = \sigma(-0.5) = \frac{1}{1 + e^{0.5}} \approx 0.378

Si x=80x = 80, alors

z=7+0.1(80)=1z = -7 + 0.1(80) = 1

et

p(y=1x=80)=σ(1)=11+e10.731p(y=1 \mid x=80) = \sigma(1) = \frac{1}{1 + e^{-1}} \approx 0.731

Ainsi, le même modèle donne environ 37.8%37.8\% de chances de réussir pour x=65x=65 et environ 73.1%73.1\% pour x=80x=80. Le score a augmenté de 1.51.5, mais la sortie finale est restée entre 00 et 11 parce que la sigmoïde transforme le résultat en probabilité.

Si vous choisissez maintenant un seuil de 0.50.5, le premier cas est classé dans la classe 00 et le second dans la classe 11. Cette dernière étape dépend du seuil. L’estimation de probabilité, elle, n’en dépend pas.

Un raccourci utile : avec un seuil de 0.50.5, la classe change exactement lorsque z=0z=0, car σ(0)=0.5\sigma(0)=0.5.

Comment la régression logistique devient un classifieur

La sortie du modèle est une estimation de probabilité. Une règle de classification est ajoutée ensuite.

Par exemple, avec un seuil de 0.50.5 :

  • prédire la classe 11 si p(y=1x)0.5p(y=1 \mid x) \ge 0.5
  • prédire la classe 00 si p(y=1x)<0.5p(y=1 \mid x) < 0.5

Mais 0.50.5 n’est pas toujours le bon seuil. Si les faux positifs et les faux négatifs ont des coûts différents, ou si les classes sont très déséquilibrées, un autre seuil peut mieux fonctionner.

Ce que signifient les coefficients

Le signe d’un coefficient indique le sens de son effet sur le score linéaire zz :

  • si βi>0\beta_i > 0, augmenter xix_i augmente zz et tend à augmenter p(y=1x)p(y=1 \mid x)
  • si βi<0\beta_i < 0, augmenter xix_i diminue zz et tend à diminuer p(y=1x)p(y=1 \mid x)

Cette partie est simple. Le point plus subtil est que la probabilité ne varie pas linéairement avec la variable, car la courbe sigmoïde n’est pas une droite.

Dans la régression logistique standard, le modèle linéaire est sur l’échelle des log-cotes :

log(p1p)=β0+β1x1++βnxn\log\left(\frac{p}{1-p}\right) = \beta_0 + \beta_1 x_1 + \cdots + \beta_n x_n

Cela signifie que chaque augmentation d’une unité d’une variable modifie linéairement les log-cotes lorsque les autres variables sont maintenues fixes. C’est plus précis que de dire qu’elle modifie la probabilité d’une quantité fixe.

Erreurs fréquentes en régression logistique

Traiter la sortie comme une classe garantie

Une prédiction comme 0.730.73 ne signifie pas que l’événement va se produire. Cela signifie que le modèle attribue à la classe positive une probabilité estimée d’environ 73%73\% pour cette entrée.

Supposer que le seuil doit être 0.50.5

0.50.5 est courant, mais c’est un choix, pas une règle absolue. Le meilleur seuil dépend de l’application.

Penser que la probabilité varie linéairement

Le score zz est linéaire par rapport aux entrées, mais la probabilité ne l’est pas. Une variation d’une unité d’une variable peut avoir un effet différent près de p=0.5p=0.5 que près de p=0.95p=0.95.

Oublier que le modèle est binaire sauf extension

La régression logistique de base traite deux classes. Il existe des versions multiclasse, mais ce sont des extensions, pas le même cadre binaire écrit autrement.

Quand la régression logistique est utilisée

La régression logistique est souvent utilisée lorsque la cible est de type oui/non, comme la détection de spam, la présence d’une maladie, l’attrition client, le défaut de remboursement d’un prêt ou les résultats réussite/échec.

Elle reste populaire parce qu’elle est simple, rapide et assez interprétable. Elle est particulièrement utile quand vous voulez un classifieur de référence, quand le jeu de données n’est pas énorme, ou quand vous avez besoin de probabilités estimées plutôt que de simples étiquettes.

Une façon simple de se la représenter

Voyez la régression logistique comme une machine en deux étapes :

  1. Additionner les indices avec un score linéaire.
  2. Convertir ce score en probabilité avec la sigmoïde.

Cette image suffit pour comprendre la plupart des exemples d’introduction et pour voir pourquoi la régression logistique se situe à l’interface entre les modèles linéaires et les tâches de classification.

Essayez un problème similaire de régression logistique

Prenez un score simple comme

z=3+0.5xz = -3 + 0.5x

Calculez σ(z)\sigma(z) pour quelques valeurs de xx, comme 22, 66 et 1010. Observez comment le score linéaire varie régulièrement tandis que la probabilité suit une courbe en S. Essayez ensuite un autre seuil et voyez à quel moment la classe prédite change.

Besoin d'aide pour un problème ?

Envoyez votre question et obtenez une solution vérifiée, étape par étape, en quelques secondes.

Ouvrir GPAI Solver →