6.4 Criterios de información
Los criterios de información como WAIC y PSIS estiman el rendimiento esperado fuera de muestra de un modelo. Combinan la densidad log-predictiva con una penalización por el número efectivo de parámetros.
6.4.1 WAIC
El Criterio de Información Ampliamente Aplicable (WAIC) estima la devianza fuera de muestra:
donde:
- lppd (densidad predictiva puntual logarítmica) =
- (número efectivo de parámetros) =
# Compute WAIC manually
set.seed(42)
n <- 100
x <- runif(n, 0, 10)
y <- 1 + 2 * x + rnorm(n, sd = 2)
# Fit two models
m1 <- lm(y ~ x) # linear (correct)
m2 <- lm(y ~ x + I(x^2)) # quadratic (slightly overfit)
# Compute AIC for comparison
cat("AIC comparison:\n")
cat(" Linear:", round(AIC(m1), 2), "\n")
cat(" Quadratic:", round(AIC(m2), 2), "\n")
cat(" Difference:", round(AIC(m2) - AIC(m1), 2), "\n")
# Compute WAIC manually
# For Gaussian model: log-likelihood per observation
library(MASS)
compute_waic <- function(fit, y, x) {
post <- mvrnorm(1000, mu = coef(fit), Sigma = vcov(fit))
sigma <- summary(fit)$sigma
# Log-likelihood matrix: [S x N]
ll <- matrix(0, nrow = 1000, ncol = length(y))
for (s in 1:1000) {
if (ncol(post) == 2) {
mu <- post[s, 1] + post[s, 2] _ x
} else {
mu <- post[s, 1] + post[s, 2] _ x + post[s, 3] * x^2
}
ll[s, ] <- dnorm(y, mean = mu, sd = sigma, log = TRUE)
}
# lppd
lppd <- sum(log(colMeans(exp(ll))))
# p_WAIC
p_waic <- sum(apply(ll, 2, var))
# WAIC
waic <- -2 * (lppd - p_waic)
return(list(waic = waic, lppd = lppd, p_waic = p_waic))
}
w1 <- compute_waic(m1, y, x)
w2 <- compute_waic(m2, y, x)
cat("\nWAIC comparison:\n")
cat(" Linear: WAIC =", round(w1$waic, 2),
" (lppd =", round(w1$lppd, 2), ", p_WAIC =", round(w1$p_waic, 2), ")\n")
cat(" Quadratic: WAIC =", round(w2$waic, 2),
" (lppd =", round(w2$lppd, 2), ", p_WAIC =", round(w2$p_waic, 2), ")\n")
cat(" Difference:", round(w2$waic - w1$waic, 2), "\n")6.4.2 PSIS y validación cruzada deja-uno-fuera
PSIS (muestreo de importancia suavizado por Pareto) proporciona una estimación robusta de la validación cruzada deja-uno-fuera (LOO-CV). LOO-CV reajusta el modelo veces, cada vez dejando fuera una observación. PSIS aproxima esto sin reajustar.
# Demonstrate leave-one-out cross-validation
set.seed(42)
n <- 50
x <- runif(n, 0, 10)
y <- 1 + 2 * x + rnorm(n, sd = 2)
# LOO-CV for linear model
loo_error <- numeric(n)
for (i in 1:n) {
fit <- lm(y[-i] ~ x[-i])
loo_error[i] <- (y[i] - predict(fit, data.frame(x = x[i])))^2
}
cat("Leave-one-out CV (linear model):\n")
cat(" Mean squared prediction error:", round(mean(loo_error), 3), "\n")
cat(" This estimates out-of-sample performance.\n")6.4.3 Interpretación de las diferencias de WAIC
El modelo con el WAIC más bajo es el preferido. Las diferencias de WAIC entre modelos indican la evidencia relativa:
- dWAIC < 2: Los modelos son prácticamente equivalentes.
- 2 < dWAIC < 4: Evidencia débil a favor del mejor modelo.
- dWAIC > 4: Evidencia fuerte a favor del mejor modelo.
Los criterios de información son estimaciones, no verdades. WAIC y PSIS son estimaciones del rendimiento fuera de muestra. Tienen incertidumbre — el dWAIC tiene un error estándar. Cuando el dWAIC es pequeño (menos de 2-4), los modelos son prácticamente indistinguibles. No trate el modelo con el WAIC más bajo como "el modelo verdadero". En su lugar, use WAIC para identificar un conjunto de modelos que son todos razonables, y luego use juicio científico para elegir entre ellos.
Overthinking
El número efectivo de parámetros. La penalización de WAIC es el número efectivo de parámetros, no el número real. Con distribuciones a priori fuertes, el número efectivo de parámetros es menor que el número real porque las distribuciones a priori restringen la distribución a posteriori. Por esto WAIC tiene en cuenta la regularización: un modelo con muchos parámetros pero distribuciones a priori fuertes puede tener un menor que un modelo con menos parámetros pero distribuciones a priori planas. Por esto también WAIC es más general que AIC, que usa el número real de parámetros como penalización.
Resumen de la Sección 6.4
- WAIC = estima la devianza fuera de muestra.
- lppd mide el ajuste dentro de muestra; penaliza la complejidad efectiva.
- PSIS aproxima la validación cruzada deja-uno-fuera sin reajustar.
- dWAIC < 2: modelos equivalentes; dWAIC > 4: evidencia fuerte.
- El número efectivo de parámetros tiene en cuenta la regularización — las distribuciones a priori fuertes reducen .