Logistische Regression ist in erster Linie Regression. Durch Hinzufügen einer Entscheidungsregel wird es zu einem Klassifikator. Ich werde ein Beispiel geben, das rückwärts geht. Das heißt, anstatt Daten zu erfassen und ein Modell anzupassen, beginne ich mit dem Modell, um zu zeigen, dass dies wirklich ein Regressionsproblem ist.
Bei der logistischen Regression modellieren wir die Log-Quoten oder Logit, dass ein Ereignis eintritt, bei dem es sich um eine kontinuierliche Größe handelt. Wenn die Wahrscheinlichkeit, dass Ereignis eintritt, P ( A ) ist , sind die Chancen:AP(A)
P(A)1−P(A)
Die Log-Quoten sind also:
log(P(A)1−P(A))
Wie bei der linearen Regression modellieren wir dies mit einer linearen Kombination von Koeffizienten und Prädiktoren:
logit=b0+b1x1+b2x2+⋯
Stellen Sie sich vor, wir erhalten ein Modell dafür, ob eine Person graue Haare hat. Unser Modell verwendet das Alter als einzigen Prädiktor. Hier ist unsere Veranstaltung A = eine Person hat graue Haare:
log Quoten für graues Haar = -10 + 0,25 * Alter
... Regression! Hier ist ein Python-Code und eine Handlung:
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
x = np.linspace(0, 100, 100)
def log_odds(x):
return -10 + .25 * x
plt.plot(x, log_odds(x))
plt.xlabel("age")
plt.ylabel("log odds of gray hair")
P(A)
P(A)=11+exp(−log odds))
Hier ist der Code:
plt.plot(x, 1 / (1 + np.exp(-log_odds(x))))
plt.xlabel("age")
plt.ylabel("probability of gray hair")
P(A)>0.5
Die logistische Regression eignet sich auch in realistischeren Beispielen hervorragend als Klassifikator, aber bevor sie ein Klassifikator sein kann, muss sie eine Regressionstechnik sein!