AIC, BIC ve GCV: cezalandırılmış regresyon yöntemlerinde karar vermek için en iyi olan nedir?


14

Genel anlayışım AIC , modelin uyum iyiliği ile modelin karmaşıklığı arasındaki dengeyi ele alıyor.

AIC=2k2ln(L)

= modeldeki parametre sayısık

= olabilirlikL

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))

resim açıklamasını buraya girin

Yanıtlar:


10

λ


2
Büyük pratik yorum ve aynı zamanda Bayes bağlamında mantıklı ... "teorik" tabanlı olabilirlik oranı "atheoretic" tahmin hatası vs.
shadowtalker

3
Muhtemelen düzenli bir çözüm için "etkili serbestlik derecelerinin" AIC'de nasıl hesaplanabileceği ve kullanılabileceği üzerinde durulacaktır.
Brian Borchers

2
R rmspaket effective.dfişlevindeki koda ve Regresyon Modelleme Stratejileri kitabına bakın. Robert Gray'in ana fikri, ceza olmadan kovaryans matrisini, cezalandırılan kovaryans matrisine karşı düşünmenizdir. Bu ikisinin bir tür oranının köşegeninin toplamı size etkili bir df verir
Frank Harrell

@FrankHarrell: Seni doğru anlarsam - bir grup modeli glmnet(her biri farklı bir lambda parametresine sahip) hesaplamak ve her model için AIC'yi hesaplamak ve daha sonra en düşük AIC'ye sahip modele karşılık gelen lambda'yı seçmek uygun mudur? Bu temelde Çapraz Doğrulama kullanmak yerine lambda parametresini seçmenin başka bir yoludur. Haklı mıyım?
Corel

1
Etkili bir AIC elde etmek için etkili parametrelerin sayısını hesaplamak için rmsbir kaç montaj fonksiyonunun bulunduğu paket bağlamında yazıyordum effective.df. Bu, CV'leme ile çapraz doğrulamadan ne elde edeceğinizi yaklaşık olarak gösterir. Bkz bu
Frank Harrell

10

Bununla ilgili kendi düşüncelerim çok fazla toplanmadı, ancak işte bunun yardımcı olabileceğinin farkında olduğum bir dizi nokta.


AIC'nin Bayes yorumu, beklenen log noktasal öngörme yoğunluğuna, yani numune dışı tahmin hatasına karşı önyargılı bir düzeltmedir. Bu yorum Gelman, Hwang ve Vehtari'de (2013) güzel bir şekilde düzenlenmiş ve ayrıca Gelman'ın blogunda kısaca tartışılmıştır . Çapraz doğrulama aynı şeyden farklı bir yaklaşımdır.

Bu arada, BIC belirli bir öncekinin altında " Bayes faktörüne " bir yaklaşımdır ( Raftery, 1999'da güzel açıklanmıştır ). Bu neredeyse bir olasılık oranının Bayes analogudur.

AIC ve BIC hakkında ilginç olan, cezalandırılmış regresyonun da Bayes yorumlaması olmasıdır, örneğin LASSO, Bayes regresyonunun katsayılarda bağımsız Laplace öncelikleri ile MAP tahminidir. Bu önceki soruda biraz daha fazla bilgi ve Kyung, Gill, Ghosh ve Casella (2010) .

Bu bana Bayes terimleriyle düşünerek ve modelleyerek biraz kilometre veya en azından daha tutarlı bir araştırma tasarımı alabileceğinizi gösteriyor. Bunun yüksek boyutlu makine öğrenimi gibi birçok uygulamada biraz olağandışı olduğunu biliyorum ve ayrıca düzenli olarak (yorumlanabilir) daha yorumlanabilir geometrik ve kayıp-işlev yorumlarından bir şekilde kaldırıldı. En azından, AIC ve BIC arasında karar vermek ve laymenlere, istatistiksel olmayan yönelimli iş arkadaşlarına / patronlara, vb. Olan farkı açıklamak için Bayes yorumuna çok güveniyorum.

λ

çapraz doğrulama ile bir ayarlama parametresi seçmek, hiyerarşik Bayes'in sadece belirli bir uygulamasıdır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.