Genel anlayışım AIC , modelin uyum iyiliği ile modelin karmaşıklığı arasındaki dengeyi ele alıyor.
= modeldeki parametre sayısı
= olabilirlik
Bayes bilgi kriteri BIC , AIC ile yakından ilişkilidir.AIC, parametre sayısını BIC'den daha az cezalandırır. Bu ikisinin tarihsel olarak her yerde kullanıldığını görebiliyorum. Ancak genelleştirilmiş çapraz doğrulama (GCV) benim için yeni. GCV, BIC veya AIC ile nasıl bağlantı kurabilir? Bu kriterler, birlikte veya ayrı olarak sırt gibi panelli regresyonda ceza terimi seçiminde nasıl kullanılır?
Düzenleme: Düşünmek ve tartışmak için bir örnek:
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))