Régression logistique: calculer une probabilité avec la fonction sigmoïde

De nombreux problèmes nécessitent une estimation de probabilité comme résultat. La régression logistique est un mécanisme extrêmement efficace pour calculer des probabilités. Dans la pratique vous pouvez utiliser la probabilité renvoyée dans l'une des de deux manières:

  • Application "en l'état". Par exemple, si un modèle de prédiction de spam considère un e-mail comme entrée et génère une valeur de 0.932, ce qui implique une probabilité 93.2% que l'e-mail est un spam.

  • Convertie en catégorie binaire comme True ou False, Spam ou Not Spam.

Ce module se concentre sur l'utilisation des résultats du modèle de régression logistique en l'état. Dans Module Classification, qui explique comment convertir cette sortie en une catégorie binaire.

Fonction sigmoïde

Vous vous demandez peut-être comment un modèle de régression logistique peut garantir son résultat représente une probabilité, générant toujours une valeur comprise entre 0 et 1. Pendant se produit, il existe une famille de fonctions appelées fonctions logistiques dont la sortie présente les mêmes caractéristiques. La fonction logistique standard, également appelée fonction sigmoïde (sigmoïde signifie "en S"), possède formule:

\[f(x) = \frac{1}{1 + e^{-x}}\]

La figure 1 illustre le graphique correspondant de la fonction sigmoïde.

Courbe sigmoïde (en S) tracée sur le plan de coordonnées cartésiennes
         centré sur l'origine.
Image 1. Graphique de la fonction sigmoïde. La courbe approche 0 lorsque les valeurs x diminuent jusqu'à l'infini négatif et 1 comme x les valeurs augmentent vers l'infini.

À mesure que l'entrée x augmente, la sortie de la fonction sigmoïde approche. mais n'atteint jamais 1. De même, à mesure que l'entrée diminue, la fonction sigmoïde le résultat de la fonction approche, mais n'atteint jamais 0.

Cliquez ici pour en savoir plus sur le calcul derrière la fonction sigmoïde

Le tableau ci-dessous montre les valeurs de sortie de la fonction sigmoïde pour des valeurs d'entrée comprises entre -7 et 7. Notez la rapidité avec laquelle les approches sigmoïdes 0 correspond à la diminution des valeurs d'entrée négatives et la rapidité avec laquelle les approches sigmoïdes 1 pour augmenter les valeurs d'entrée positives.

Cependant, quelle que soit la taille de la valeur d'entrée, la sortie toujours supérieur à 0 et inférieur à 1.

Entrée Sortie sigmoïde
-7 0,001
-6 0.002
-5 0,007
-4 0,018
-3 0.047
-2 0,119
-1 0,269
0 0.50
1 0,731
2 0,881
3 0,952
4 0,982
5 0,993
6 0,997
7 0,999

Transformer une sortie linéaire à l'aide de la fonction sigmoïde

L'équation suivante représente la composante linéaire d'une valeur logistique modèle de régression:

\[z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N\]

où :

  • z est le résultat de l'équation linéaire, également appelée enregistrer des probabilités.
  • b est le biais.
  • Les valeurs w sont les pondérations apprises par le modèle.
  • Les valeurs x sont les valeurs des caractéristiques pour un exemple particulier.

Pour obtenir la prédiction de la régression logistique, la valeur z est ensuite transmise à la fonction sigmoïde, ce qui donne une valeur (une probabilité) comprise entre 0 et 1:

\[y' = \frac{1}{1 + e^{-z}}\]

où :

  • y' est le résultat du modèle de régression logistique.
  • z est la sortie linéaire (calculée dans l'équation précédente).

Cliquez ici pour en savoir plus sur logarithme de cote

Dans l'équation $z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N$, z est appelée log-odds, car si vous commencez par la variable la fonction sigmoïde suivante (où $y$ est le résultat d'une transformation de régression, représentant une probabilité):

$$y = \frac{1}{1 + e^{-z}}$$

Résolvez ensuite z:

$$ z = \log\left(\frac{y}{1-y}\right) $$

Ensuite, z est défini comme le logarithme du ratio des probabilités des deux résultats possibles: y et 1 – y.

La figure 2 illustre la transformation d'une sortie linéaire en régression logistique. la sortie à l’aide de ces calculs.

Gauche: ligne avec les points (-7,5, -10), (-2,5, 0) et (0, 5)
         en surbrillance. À droite: courbe sigmoïde avec la courbe transformée correspondante
         (-10, 0,00004), (0, 0,5) et (5, 0,9933) mis en surbrillance.
Figure 2 : Gauche: graphique de la fonction linéaire z = 2x + 5, avec trois en surbrillance. Droite: courbe sigmoïde avec les trois mêmes points mises en évidence après avoir été transformées par la fonction sigmoïde.

Dans la figure 2, une équation linéaire devient l'entrée de la fonction sigmoïde. qui plie la ligne droite en une forme de S. Remarquez que l’équation linéaire peut produire des valeurs de z très élevées ou très faibles, mais la sortie de la fonction sigmoïde y', est toujours comprise entre 0 et 1, ces deux valeurs étant exclues. Par exemple, l'orange le rectangle du graphique de gauche a une valeur z de -10, mais la fonction sigmoïde de la le graphe de droite associe -10 à un y' de 0,00004.

Exercice: tester vos connaissances

Un modèle de régression logistique à trois caractéristiques présente le biais suivant poids:

\[\begin{align} b &= 1 \\ w_1 &= 2 \\ w_2 &= -1 \\ w_3 &= 5 \end{align} \]

Compte tenu des valeurs d'entrée suivantes:

\[\begin{align} x_1 &= 0 \\ x_2 &= 10 \\ x_3 &= 2 \end{align} \]

Répondez aux deux questions suivantes.

1. Quelle est la valeur de z pour ces valeurs d'entrée ?
–1
0
0,731
1
Bonne réponse ! L'équation linéaire définie par les pondérations et le biais est z = 1 + 2x1 – x2 + 5 x3. Branchez le valeurs d'entrée dans l'équation produit z = 1 + (2)(0) - (10) + (5)(2) = 1
2. Quelle est la prédiction de la régression logistique pour ces valeurs d'entrée ?
0,268
0,5
0,731

Comme le calculait l'étape 1 ci-dessus, le logarithme de cote des valeurs d'entrée est de 1. En branchant la valeur de z à la fonction sigmoïde:

\(y = \frac{1}{1 + e^{-z}} = \frac{1}{1 + e^{-1}} = \frac{1}{1 + 0.367} = \frac{1}{1.367} = 0.731\)

1
N'oubliez pas que la sortie de la fonction sigmoïde sera toujours supérieur à 0 et inférieur à 1.