Das Akaike-Informationskriterium (AIC) ist eine Metrik, die verwendet wird, um die Anpassung verschiedener Regressionsmodelle zu vergleichen.
Es wird berechnet als:
AIC = 2K – 2ln (L)
wo:
- K: Die Anzahl der Modellparameter …
Die logistische Regression ist eine Art von Regression, die wir verwenden können, wenn die Antwortvariable binär ist.
Eine gängige Methode zur Bewertung der Qualität eines logistischen Regressionsmodells besteht darin, eine Konfusionsmatrix zu erstellen, bei der es sich um eine 2 × 2-Tabelle handelt, die die vorhergesagten Werte aus dem Modell im Vergleich zu den tatsächlichen Werten aus dem Testdatensatz anzeigt.
Um eine Konfusionsmatrix für ein logistisches Regressionsmodell in Python zu erstellen, können wir die Funktion verwirrung_matrix () aus dem Paket sklearn verwenden:
from sklearn import metrics
metrics.confusion_matrix(y_actual, y_predicted)
Das folgende Beispiel zeigt, wie Sie diese Funktion verwenden, um eine Konfusionsmatrix für ein logistisches Regressionsmodell in Python zu erstellen.
Angenommen, wir haben die folgenden zwei Arrays, die die tatsächlichen Werte für eine Antwortvariable zusammen mit den von einem logistischen Regressionsmodell vorhergesagten Werten enthalten:
#Array von tatsächlichen Werten definieren
y_actual = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
#Array vorhergesagter Werte definieren
y_predicted = [0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]
Wir können die Confusion_matrix()-Funktion von sklearn verwenden, um eine Konfusionsmatrix für diese Daten zu erstellen:
from sklearn import metrics
#Konfusionsmatrix erstellen
c_matrix = metrics.confusion_matrix(y_actual, y_predicted)
#Konfusionsmatrix ausgeben
print(c_matrix)
[[6 4]
[2 8]]
Wenn wir möchten, können wir die Funktion crosstab() von Pandas verwenden, um eine optisch ansprechendere Konfusionsmatrix zu erstellen:
import pandas as pd
y_actual = pd.Series(y_actual, name='Actual')
y_predicted = pd.Series(y_predicted, name='Predicted')
#Konfusionsmatrix erstellen
print(pd.crosstab(y_actual, y_predicted))
Predicted 0 1
Actual
0 6 4
1 2 8
Die Spalten zeigen die vorhergesagten Werte für die Antwortvariable und die Zeilen zeigen die tatsächlichen Werte.
Wir können auch die Genauigkeit, Präzision und den Rückruf mithilfe von Funktionen aus dem sklearn-Paket berechnen:
#Genauigkeit des Modells ausgeben
print(metrics.accuracy_score(y_actual, y_predicted))
0.7
#Präzisionswert des Modells ausgeben
print (metrics. precision_score (y_actual, y_predicted))
0,667
#Erinnerungswert des Modells ausgeben
print (Metriken. Recall_score (y_actual, y_predicted))
0,8
Hier ist eine kurze Auffrischung zu Accuracy, Precision und Recall:
Und so wurde jede dieser Metriken in unserem Beispiel tatsächlich berechnet:
Das Akaike-Informationskriterium (AIC) ist eine Metrik, die verwendet wird, um die Anpassung verschiedener Regressionsmodelle zu vergleichen.
Es wird berechnet als:
AIC = 2K – 2ln (L)
wo:
Die logistische Regression ist eine statistische Methode, die wir verwenden, um ein Regressionsmodell anzupassen, wenn die Antwortvariable binär ist.
Um zu beurteilen, wie gut ein logistisches Regressionsmodell zu einem Datensatz …