[PYTHON] Comprendre la régression logistique (1) _ À propos des cotes et de la transformation logistique

introduction

Nous avons résumé ce que nous avons appris sur les cotes et les transformations logit, qui sont des prérequis pour comprendre la régression logistique.

référence

Pour comprendre les cotes et la conversion logit, je me suis référé à ce qui suit.

Retour logistique

Vue d'ensemble de la régression logistique

La régression logistique est l '** alligorisme ** qui est souvent utilisé pour estimer la probabilité qu'une donnée appartienne à une classe particulière.

Des modèles de régression linéaire ordinaires sont utilisés pour prédire que l'objectif est quantitatif (comme les ventes en magasin pendant un mois), mais si l'objectif est qualitatif (que cet e-mail soit du spam ou non). , Et que le groupe sanguin soit ou non de type A) ne peut pas être directement appliqué à ce modèle. Même si cette ** variable objective est une variable qualitative, le modèle linéaire généralisé (GLM) est étendu afin que le concept de régression linéaire puisse être appliqué, et la régression logistique en fait partie **.

La régression logistique elle-même est exprimée par la formule suivante. ($ \ Beta $ est le paramètre, $ p $ est la probabilité de sortie)


\log(\frac{p}{1-p})=\beta_{0} + \beta_{1}x_{1} + \beta_{2}x_{2} + ...+ \beta_{n}x_{n}

Ce qui suit est un résumé des chances et des idées sur la conversion logit, qui sont des conditions préalables pour comprendre cela.

Chances

Aperçu des cotes

Il y a une idée appelée «cotes» qui surgit lors de l'analyse logistique. Les probabilités sont exprimées comme le rapport entre la probabilité qu'un événement se produise et la probabilité qu'il ne se produise pas. Si la probabilité qu'un certain événement se produise est définie comme $ p $, elle est exprimée par la formule suivante.


\frac{p}{1-p}

Considérez les cas suivants comme des exemples spécifiques. Considérez les chances d'avoir 5 matchs de baseball, 1 victoire pour votre équipe et 4 victoires pour votre adversaire. Ensuite, vous pouvez trouver les cotes ci-dessous.


\frac{\frac{1}{5}}{1-\frac{1}{5}}=0.25

Prenez une logarithmique à la cote

Dans de nombreux cas, le logarithme des cotes ci-dessus est pris et utilisé dans le calcul. Voici ce que vous pouvez représenter en prenant une logarithmique à la cote.

En considérant l'importance de compter les cotes, considérez deux modèles de cotes: lorsque votre équipe est très faible et lorsque votre équipe est très forte.

Quand votre équipe est très faible

Lorsque votre équipe est très faible, vous pouvez voir que les chances ** se rapprochent de plus en plus de 0 **. ** Au contraire, vous pouvez voir qu'il ne peut pas être plus négatif que 0 mathématiquement **.

・ Quand 1 victoire et 8 défaites


\frac{\frac{1}{9}}{1-\frac{1}{9}}=0.125

・ Quand 1 victoire et 16 défaites


\frac{\frac{1}{17}}{1-\frac{1}{17}}=0.062

Quand votre équipe est très forte

Vous pouvez voir que lorsque votre équipe est très forte, les chances peuvent aller de ** 1 à infiniment **.

・ Quand 8 victoires et 1 défaite


\frac{\frac{8}{9}}{1-\frac{8}{9}}=8

・ Quand 16 victoires et 1 défaite


\frac{\frac{16}{17}}{1-\frac{16}{17}}=16

En regardant les deux exemples ci-dessus, ** Les chances lorsque votre équipe est faible sont comprises entre 0 et 1, tandis que les chances lorsque vous êtes fort sont de 1 à ∞, ce qui est une simple comparaison. Vous pouvez voir que vous ne pouvez pas **. Les chances pour 1 victoire et 8 défaites sont de 0,25 $, tandis que les chances pour 8 victoires et 1 défaite sont de 8 $.

Les journaux alignent l'échelle

En fait, le problème de l'échelle ci-dessus peut être résolu en prenant la logarithmique.

・ Prenez un journal contre les chances de 1 victoire et 8 défaites


\log(0.25)\fallingdotseq-2.079

・ Prenez un journal contre les chances de 8 victoires et 1 défaite


\log(8)\fallingdotseq2.079

Aligner l'échelle en prenant le logarithme est très important dans la régression logistique.

Conversion logit

La régression logistique calcule la somme pondérée des variables explicatives (avec le terme de biais ajouté) comme un modèle de régression linéaire normal, mais sa ** sortie renvoie un résultat transformé en logit plutôt qu'un résultat direct. .. Et la conversion logit de la ** variable objective est égale à ** en prenant le log des probabilités de la variable objective ** expliqué précédemment.


\log(\frac{p}{1-p})

La régression logistique est une régression qui prend une probabilité dans la variable objective, mais comme la probabilité se situe entre 0 et 1, il n'est pas pratique de l'appliquer à une régression linéaire normale. ** En effectuant une conversion logit, il est possible de convertir la valeur de -∞ en ∞, et l'inconvénient peut être éliminé. ** **

La formule de la régression logistique peut être exprimée comme suit.


\log(\frac{p}{1-p})=\beta_{0} + \beta_{1}x_{1} + \beta_{2}x_{2} + ...+ \beta_{n}x_{n}

Ce qui suit est un graphique dessiné avec la probabilité (p) sur l'axe des y et la valeur convertie en logit (logit) sur l'axe des x.

import numpy as np
import matplotlib.pyplot as plt

def logit(x):
    return np.log(p/(1-p))

x = np.arange(0.001, 1, 0.001)
y = logit(x)

plt.xlabel("logit")
plt.ylabel("p")
plt.plot(y, p)

ダウンロード (2).png

Lorsque logit est égal à 0, la probabilité p est égale à 0,5. Le changement de p est grand autour de 0 du logit, et le changement de p devient graduel à mesure que le logit s'éloigne de 0. Quelle que soit la taille du logit, p ne dépassera jamais 1, et quelle que soit la taille du logit, il ne sera jamais inférieur à p.

Conversion inverse de logit

Au contraire, la valeur convertie logit peut être convertie en une valeur de probabilité par la formule suivante.


p = \frac{\exp(logit)}{1+\exp(logit)}

L'équation ci-dessus peut être dérivée comme suit.

{\begin{eqnarray*}

logit &=& \log(\frac{p}{1-p})\\
\exp(logit) &=& \frac{p}{1-p}\\
p(1+\exp(logit)) &=& \exp(logit)\\
p &=& \frac{\exp(logit)}{1+\exp(logit)}\\

\end{eqnarray*}}

La valeur prédite obtenue par régression logistique peut être convertie en une valeur de probabilité en utilisant la conversion inverse du logit.

Next Cette fois, nous avons résumé les connaissances essentielles pour comprendre la régression logistique. Ensuite, je résumerai comment trouver les paramètres optimaux (coefficients) en régression logistique.

Recommended Posts

Comprendre la régression logistique (1) _ À propos des cotes et de la transformation logistique
[Apprentissage automatique] Comprendre la régression logistique à partir de scikit-learn et des mathématiques
Premier TensorFlow (édition révisée) - Régression linéaire et logistique
Retour logistique
Mémorandum sur les paramètres de régression et de classification binomiale
Retour logistique
Comprendre les types de données et le début de la régression linéaire
À propos de _ et __