Mein allgemeines Verständnis ist, dass sich AIC mit dem Kompromiss zwischen der Anpassungsgüte des Modells und der Komplexität des Modells befasst.
= Anzahl der Parameter im Modell
= Wahrscheinlichkeit
Das Bayes'sche Informationskriterium BIC ist eng mit dem AIC verwandt. Der AIC benachteiligt die Anzahl der Parameter weniger stark als der BIC. Ich kann sehen, dass diese beiden historisch überall verwendet werden. Generalized Cross Validation (GCV) ist für mich jedoch neu. Wie kann GCV sich auf BIC oder AIC beziehen? Wie werden diese Kriterien zusammen oder getrennt bei der Auswahl des Strafausdrucks in einer panelisierten Regression wie dem Kamm verwendet?
Bearbeiten: Hier ist ein Beispiel zum Nachdenken und Diskutieren:
require(lasso2)
data(Prostate)
require(rms)
ridgefits = ols(lpsa~lcavol+lweight+age+lbph+svi+lcp+gleason+pgg45,
method="qr", data=Prostate,se.fit = TRUE, x=TRUE, y=TRUE)
p <- pentrace(ridgefits, seq(0,1,by=.01))
effective.df(ridgefits,p)
out <- p$results.all
par(mfrow=c(3,2))
plot(out$df, out$aic, col = "blue", type = "l", ylab = "AIC", xlab = "df" )
plot(out$df, out$bic, col = "green4", type = "l", ylab = "BIC", xlab = "df" )
plot(out$penalty, out$df, type = "l", col = "red",
xlab = expression(paste(lambda)), ylab = "df" )
plot(out$penalty, out$aic, col = "blue", type = "l",
ylab = "AIC", xlab = expression(paste(lambda)) )
plot(out$penalty, out$bic, col = "green4", type = "l", ylab = "BIC",
xlab= expression(paste(lambda))
require(glmnet)
y <- matrix(Prostate$lpsa, ncol = 1)
x <- as.matrix (Prostate[,- length(Prostate)])
cv <- cv.glmnet(x,y,alpha=1,nfolds=10)
plot(cv$lambda, cv$cvm, col = "red", type = "l",
ylab = "CVM", xlab= expression(paste(lambda))