So berechnen sie den aic in r (einschließlich beispielen)
Das Akaike Information Criterion (AIC) ist eine Metrik, die zum Vergleich der Passung mehrerer Regressionsmodelle verwendet wird.
Es wird wie folgt berechnet:
AIC = 2K – 2 ln (L)
Gold:
- K: Die Anzahl der Modellparameter. Der Standardwert von K ist 2, sodass ein Modell mit nur einer Prädiktorvariablen einen K-Wert von 2+1 = 3 hat.
- ln (L) : Die Log-Likelihood des Modells. Die meisten Statistikprogramme können diesen Wert automatisch für Sie berechnen.
AIC soll das Modell finden, das die größte Variation in den Daten erklärt, und gleichzeitig Modelle bestrafen, die eine übermäßige Anzahl von Parametern verwenden.
Nachdem Sie mehrere Regressionsmodelle angepasst haben, können Sie den AIC-Wert jedes Modells vergleichen. Je niedriger der AIC, desto geeigneter ist das Modell.
Um den AIC mehrerer Regressionsmodelle in R zu berechnen, können wir die Funktion aictab() aus dem Paket AICcmodavg verwenden.
Das folgende Beispiel zeigt, wie diese Funktion zur Berechnung und Interpretation des AIC für verschiedene Regressionsmodelle in R verwendet wird.
Beispiel: AIC in R berechnen und interpretieren
Nehmen wir an, wir möchten drei verschiedene multiple lineare Regressionsmodelle mithilfe von Variablen aus dem mtcars- Datensatz anpassen.
Hier sind die Prädiktorvariablen, die wir in jedem Modell verwenden werden:
- Prädiktorvariablen in Modell 1: disp, hp, wt, qsec
- Prädiktorvariablen in Modell 2: disp, qsec
- Prädiktorvariablen in Modell 3: disp, wt
Der folgende Code zeigt, wie jedes dieser Regressionsmodelle angepasst wird:
#fit three models
model1 <- lm(mpg ~ disp + hp + wt + qsec, data = mtcars)
model2 <- lm(mpg ~ disp + qsec, data = mtcars)
model3 <- lm(mpg ~ disp + wt, data = mtcars)
Als Nächstes fügen wir die Modelle in eine Liste ein und verwenden die Funktion aictab() , um den AIC jedes Modells zu berechnen:
library (AICcmodavg) #define list of models models <- list(model1, model2, model3) #specify model names mod.names <- c('disp.hp.wt.qsec', 'disp.qsec', 'disp.wt') #calculate AIC of each model aictab(cand.set = models, modnames = mod.names) Model selection based on AICc: K AICc Delta_AICc AICcWt Cum.Wt LL disp.hp.wt.qsec 6 162.43 0.00 0.83 0.83 -73.53 available wt 4 165.65 3.22 0.17 1.00 -78.08 disp.qsec 4 173.32 10.89 0.00 1.00 -81.92
So interpretieren Sie das Ergebnis:
- K: Die Anzahl der Parameter im Modell.
- AICc: der AIC-Wert des Modells. Der Kleinbuchstabe „c“ gibt an, dass der AIC aus dem für kleine Stichproben korrigierten AIC berechnet wurde.
- Delta_AICc: die Differenz zwischen dem AIC des besten Modells und dem des aktuell verglichenen Modells.
- AICcWt: Anteil der gesamten Vorhersagekraft, der im Modell gefunden werden kann.
- Cum.Wt : Die kumulative Summe der AIC-Gewichte.
- LL: Die Log-Likelihood des Modells. Dies sagt uns, wie wahrscheinlich das Modell angesichts der von uns verwendeten Daten ist.
Das Modell mit dem niedrigsten AIC-Wert wird immer zuerst aufgeführt. Aus dem Ergebnis können wir erkennen, dass das folgende Modell den niedrigsten AIC-Wert aufweist und daher das am besten passende Modell ist:
mpg = β 0 + β 1 (disp) + β 2 (hp) + β 3 (Gewicht) + β 4 (qsec)
Sobald wir dieses Modell als das beste identifiziert haben, können wir mit der Modellanpassung fortfahren und die Ergebnisse analysieren, einschließlich des R-Quadrat-Werts und der Beta-Koeffizienten, um die genaue Beziehung zwischen dem Satz von Vorhersagevariablen und der Antwortvariablen zu bestimmen.
Zusätzliche Ressourcen
So führen Sie eine einfache lineare Regression in R durch
So führen Sie eine multiple lineare Regression in R durch
So berechnen Sie das angepasste R-Quadrat in R
So berechnen Sie Mallows Cp in R