Pemahaman umum saya adalah AIC berkaitan dengan pertukaran antara kebaikan model dan kompleksitas model.
= jumlah parameter dalam model
= kemungkinan
Kriteria informasi Bayesian BIC terkait erat dengan AIC. AIC menghukum jumlah parameter kurang kuat daripada BIC. Saya bisa melihat keduanya digunakan di mana-mana secara historis. Tetapi validasi lintas umum (GCV) adalah hal baru bagi saya. Bagaimana GCV dapat berhubungan dengan BIC atau AIC? Bagaimana kriteria ini, bersama-sama atau terpisah digunakan dalam pemilihan jangka waktu hukuman dalam regresi berpanel seperti ridge?
Sunting: Ini adalah contoh untuk dipikirkan dan didiskusikan:
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))