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 …
Ein Residuum ist die Differenz zwischen einem beobachteten Wert und einem vorhergesagten Wert in einem Regressionsmodell.
Es wird berechnet als:
Residuum = beobachteter Wert - vorhergesagter Wert
Eine Möglichkeit zu verstehen, wie gut ein Regressionsmodell zu einem Datensatz passt, besteht darin, die Residuenquadratsumme zu berechnen, die wie folgt berechnet wird:
Residuenquadratsumme = Σ (e i ) 2
wo:
Je niedriger der Wert, desto besser passt ein Modell zu einem Datensatz.
Dieses Tutorial enthält ein schrittweises Beispiel für die Berechnung der verbleibenden Quadratsumme für ein Regressionsmodell in Python.
In diesem Beispiel geben wir Daten für die Anzahl der Stunden des Studiums, die Gesamtzahl der absolvierten Vorbereitungsprüfungen und die Prüfungsergebnisse ein, die 14 verschiedene Studenten erhalten haben:
import pandas as pd
# Dataframe erstellen
df = pd.DataFrame({'hours': [1, 2, 2, 4, 2, 1, 5, 4, 2, 4, 4, 3, 6, 5],
'exams': [1, 3, 3, 5, 2, 2, 1, 1, 0, 3, 4, 3, 2, 4],
'score': [76, 78, 85, 88, 72, 69, 94, 94, 88, 92, 90, 75, 96, 90]})
Als Nächstes verwenden wir die OLS()-Funktion aus der statsmodels bibliothek, um eine gewöhnliche Regression der kleinsten Quadrate durchzuführen, wobei "Stunden" (hours) und "Prüfungen" (exams) als Prädiktorvariablen und "Punktzahl" (scores) als Antwortvariable verwendet werden:
import statsmodels.api as sm
# Antwortvariable definieren
y = df['score']
# Prädiktorvariablen definieren
x = df[['hours', 'exams']]
# Konstante zu Prädiktorvariablen hinzufügen
x = sm.add_constant(x)
# Lineares Regressionsmodell anpassen
model = sm.OLS(y, x).fit()
# Modellzusammenfassung anzeigen
print(model.summary())
OLS Regression Results
==============================================================================
Dep. Variable: score R-squared: 0.722
Model: OLS Adj. R-squared: 0.671
Method: Least Squares F-statistic: 14.27
Date: Sat, 02 Jan 2021 Prob (F-statistic): 0.000878
Time: 15:58:35 Log-Likelihood: -41.159
No. Observations: 14 AIC: 88.32
Df Residuals: 11 BIC: 90.24
Df Model: 2
Covariance Type: nonrobust
==============================================================================
coef std err t P>|t| [0.025 0.975]
------------------------------------------------------------------------------
const 71.8144 3.680 19.517 0.000 63.716 79.913
hours 5.0318 0.942 5.339 0.000 2.958 7.106
exams -1.3186 1.063 -1.240 0.241 -3.658 1.021
==============================================================================
Omnibus: 0.976 Durbin-Watson: 1.270
Prob(Omnibus): 0.614 Jarque-Bera (JB): 0.757
Skew: -0.245 Prob(JB): 0.685
Kurtosis: 1.971 Cond. No. 12.1
==============================================================================
Wir können den folgenden Code verwenden, um die verbleibende Quadratsumme für das Modell zu berechnen:
print(model.ssr)
293.25612951525414
Die verbleibende Quadratsumme ergibt 293,256.
So führen Sie eine einfache lineare Regression in Python durch
Durchführen einer mehrfachen linearen Regression in Python
Residuenquadratsumme-Rechner
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 …