AIC, BIC e GCV: o que é melhor para tomar decisões em métodos de regressão penalizados?


14

Meu entendimento geral é que a AIC lida com o compromisso entre a qualidade do ajuste do modelo e a complexidade do modelo.

UMAEuC=2k-2eun(eu)

k = número de parâmetros no modelo

eu = probabilidade

O critério de informação bayesiano BIC está intimamente relacionado com o AIC. O AIC penaliza o número de parâmetros com menos força do que o BIC. Eu posso ver que esses dois são usados ​​em todos os lugares historicamente. Mas a validação cruzada generalizada (GCV) é nova para mim. Como o GCV pode se relacionar com o BIC ou o AIC? Como esses critérios, juntos ou separados, são usados ​​na seleção do termo de penalidade na regressão em painel como a crista?

Edit: Aqui está um exemplo para pensar e discutir:

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

insira a descrição da imagem aqui

Respostas:


10

λ


2
Ótima interpretação prática, e também faz sentido no contexto bayesiano ... razão de verossimilhança "teórica" ​​versus erro de previsão "ateorético".
shadowtalker

3
Provavelmente ajudaria a elaborar como "graus efetivos de liberdade" para uma solução regularizada podem ser computados e usados ​​na AIC.
22415 Brian Borchers

2
Veja o código na função do rmspacote R effective.dfe meu livro Regression Modeling Strategies. A idéia principal, de Robert Gray, é que você considere a matriz de covariância sem penalização versus a matriz de covariância com penalização. A soma da diagonal de um tipo de relação entre estes dois dá-lhe a df eficaz
Frank Harrell

@FrankHarrell: Então, se eu entendi direito - não há problema em computar glmnetvários modelos (cada um com um parâmetro lambda diferente) e calcular o AIC para cada modelo e, em seguida, escolher o lambda correspondente ao modelo com o AIC mais baixo? Essa é basicamente outra maneira de escolher o parâmetro lambda, além de usar a Validação Cruzada. Estou certo?
Corel

1
Eu estava escrevendo no contexto do rmspacote em que algumas das funções de ajuste quando usadas com effective.dfo número efetivo de parâmetros para que você possa obter uma AIC eficaz. Isso aproximará o que você obtém da validação cruzada com o CV. Veja isto
Frank Harrell 16/01

10

Meus próprios pensamentos sobre isso não são muito detalhados, mas aqui está uma coleção de pontos que sei que podem ajudar.


A interpretação bayesiana da AIC é que é uma aproximação corrigida pelo viés da densidade preditiva ponto a ponto esperada do log, ou seja, o erro de previsão fora da amostra. Essa interpretação é bem apresentada em Gelman, Hwang e Vehtari (2013) e também discutida brevemente no blog de Gelman . A validação cruzada é uma aproximação diferente para a mesma coisa.

Enquanto isso, o BIC é uma aproximação ao " fator Bayes " sob um determinado prioritário (explicado em Raftery, 1999 ). Este é quase o análogo bayesiano de uma razão de verossimilhança.

O que é interessante no AIC e no BIC é que a regressão penalizada também tem uma interpretação bayesiana, por exemplo, LASSO é a estimativa MAP da regressão bayesiana com anteriores independentes de Laplace nos coeficientes. Um pouco mais de informação nesta pergunta anterior e muito mais em Kyung, Gill, Ghosh e Casella (2010) .

Isso sugere que você pode obter alguma quilometragem, ou pelo menos um projeto de pesquisa mais coerente, pensando e modelando em termos bayesianos. Eu sei que isso é um pouco incomum em muitas aplicações, como aprendizado de máquina de alta dimensão, e também um pouco afastado das (na minha opinião) interpretações geométricas e interpretáveis ​​de função de perda mais interpretáveis ​​da regularização. No mínimo, confio muito na interpretação bayesiana para decidir entre a AIC e a BIC e explicar a diferença para leigos, colegas de trabalho / chefes não orientados estatisticamente, etc.

λ

selecionar um parâmetro de ajuste por validação cruzada é apenas uma implementação específica do Bayes hierárquico.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.