La régression logistique et la classification
Pourquoi une droite ne peut pas modéliser une probabilité, comment la fonction logistique y remédie, et ce que signifient les coefficients en log-cotes, avec un pas de montée de gradient et un ajustement convergé calculés et vérifiés numériquement.
Prérequis : La régression linéaire à partir des premiers principes, Le théorème de Bayes et la mise à jour des croyances
La régression linéaire à partir des premiers principes ajustait une réponse numérique. Beaucoup de problèmes posent au contraire une question catégorielle : cet élément appartient-il à la classe A ou à la classe B ? Ce que nous voulons d’ordinaire n’est pas l’étiquette mais la probabilité de l’étiquette, et les probabilités sont contraintes d’une manière dont les droites ne le sont pas.
A. Pourquoi ne pas simplement ajuster une droite ?
Codez les deux classes par et et lancez les moindres carrés. La droite ajustée est , définie pour tout réel, et elle finit donc par dépasser et par tomber sous . Comme estimation de , ce n’est pas seulement inexact, c’est impossible - cela viole les axiomes de Les probabilités à partir de zéro.
Il nous faut un modèle dont la sortie est confinée à par construction.
B. La fonction logistique
La régression logistique modélise directement la probabilité :
En posant , c’est la fonction logistique (ou sigmoïde)
les deux formes étant algébriquement identiques (divisez numérateur et dénominateur de la première par ). Son comportement est exactement ce dont nous avons besoin : quand , ; quand , ; et . La sortie peut approcher les bornes sans jamais les atteindre.
Quelques valeurs, avec :
| 2 | 0.1192 | |
| 4 | 0.5000 | |
| 6 | 0.8808 |
C. Cotes et log-cotes : ce que signifient les coefficients
Réarranger le modèle donne les cotes :
et prendre le logarithme donne les log-cotes ou logit :
C’est en ce sens que la régression logistique est un modèle linéaire - linéaire dans les log-cotes, non dans la probabilité. Les cotes vont de à et les log-cotes couvrent toute la droite réelle, ce qui est précisément l’étendue dont une fonction linéaire a besoin.
| cotes | log-cotes | |
|---|---|---|
| 0.20 | 0.25 | |
| 0.50 | 1.00 | |
| 0.75 | 3.00 | |
| 0.90 | 9.00 |
Ainsi est la variation des log-cotes par unité supplémentaire de , et la variation multiplicative des cotes.
Le contresens le plus fréquent. n’est pas la variation de probabilité par unité de . Comme la courbe logistique est en S, le même pas d’une unité déplace beaucoup la probabilité près de et presque pas du tout dans les queues. Seules les log-cotes varient d’une quantité constante.
D. L’ajustement par maximum de vraisemblance
Les moindres carrés ne sont pas le critère naturel ici. Nous choisissons plutôt les coefficients qui rendent les étiquettes observées les plus probables. Chaque observation contribue si et si , ce qui se combine en la vraisemblance
Le logarithme transforme le produit en somme - numériquement bien mieux conditionné - donnant la log-vraisemblance
Contrairement aux moindres carrés, elle n’a aucune solution en forme close ; on la maximise numériquement. Son gradient est remarquablement propre :
Chaque observation pousse les coefficients proportionnellement à l’erreur de la prédiction courante - un schéma qui réapparaît dans La rétropropagation et la descente de gradient.
E. Un pas de gradient, à la main
Six observations, délibérément non parfaitement séparables (la raison est en section G) :
| 1 | 2 | 3 | 4 | 5 | 6 | |
|---|---|---|---|---|---|---|
| 0 | 1 | 0 | 1 | 1 | 1 |
Partons de . Alors et pour chaque observation, donc
Les composantes du gradient :
En faisant un pas de taille vers le haut (nous maximisons) :
Les nouvelles probabilités sont et la log-vraisemblance est montée à . Un pas a amélioré l’ajustement.
La taille du pas n’est pas un paramètre libre. Avec , le même pas atterrit en et la log-vraisemblance chute à - bien pire que le point de départ. Il est facile de dépasser un maximum ; qu’un pas monte localement ne signifie pas que toute longueur de pas dans cette direction soit une amélioration.
En itérant jusqu’à convergence on obtient
avec une log-vraisemblance de .
Interpréter le résultat. Chaque unité supplémentaire de multiplie les cotes par - les triplant à peu près. La frontière de décision, où , est là où :
Sous nous prédisons la classe 0, au-dessus la classe 1.
Interactif : linéaire en log-cote, courbe en probabilité
Le pas marqué vaut une unité de x, tracé sur les deux.
- Multiplicateur de cote
- 3.141x
- Frontière (p = 0,5)
- 2.4199
- Le pas ajoute, en log-cote
- 1.1447
- Le pas ajoute, en probabilité
- 0.2642
Le pas ajoute 1.1447 à la log-cote - la même quantité où qu’on le prenne, car cette droite est droite - et multiplie la cote par 3.141, partout également. Mais il déplace la probabilité de 0.2642, et c’est presque son maximum, car vous êtes près de la frontière où la courbe est la plus raide. Glissez vers une queue et regardez le même pas ne presque plus rien valoir.
S'exécute dans votre navigateur. La première exécution télécharge l'environnement Python (~10 Mo), puis il est mis en cache.
Chaque nombre ci-dessus est reproduit par cette exécution.
F. De la probabilité à la décision
Le modèle produit une probabilité ; une décision exige un seuil. Le seuil par défaut n’est correct que lorsque les deux types d’erreur coûtent la même chose. Quand un faux négatif coûte bien plus cher qu’un faux positif, le bon seuil est plus bas - et c’est une décision sur des conséquences, non une question statistique à laquelle les données peuvent répondre.
La leçon du taux de base tirée du théorème de Bayes s’applique ici pleinement : avec une classe positive rare, un modèle peut être très exact et se tromper malgré tout la plupart des fois où il prédit « positif ».
G. Quand l’ajustement explose
Si les classes sont parfaitement séparables - un seuil les sépare sans recouvrement - la vraisemblance peut toujours être augmentée en agrandissant , ce qui pousse les probabilités ajustées vers exactement et . Il n’y a pas de maximum, et l’EMV n’existe pas.
Ce n’est pas hypothétique. En remplaçant nos données par les données proprement séparées , , un solveur non régularisé renvoie avec - des nombres qui sont des artefacts de l’endroit où l’optimiseur s’est arrêté, non des estimations. Le logiciel peut vous avertir ou non. Le remède standard est une pénalité sur la taille des coefficients, ce qui est exactement le sujet de l’article suivant.
À retenir
- Un modèle linéaire d’une probabilité produit des valeurs hors de ; la fonction logistique confine la sortie à par construction.
- La régression logistique est linéaire dans les log-cotes : est la variation des log-cotes par unité de , et le multiplicateur des cotes - non une variation de probabilité.
- L’ajustement maximise la log-vraisemblance, sans forme close, résolue numériquement ; le gradient vaut et .
- Notre ajustement a convergé vers , : cotes par unité, frontière en .
- La taille du pas compte - a amélioré l’ajustement, l’a bien empiré.
- Sous séparation parfaite, l’EMV n’existe pas et les coefficients divergent.
La suite
Les deux modes de défaillance que nous venons de voir - des coefficients qui s’emballent sous séparation, et des modèles souples qui poursuivent le bruit - se traitent par la même idée : ajouter une pénalité qui rende les grands coefficients coûteux. C’est La régularisation : ridge et lasso.
Références et lectures complémentaires
- Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani, An Introduction to Statistical Learning, with Applications in R, Springer (Springer Texts in Statistics 103), 2013source ↗
Les œuvres protégées par le droit d’auteur sont citées à titre de référence uniquement et ne sont pas hébergées ici ; veuillez consulter l’éditeur pour y accéder.