AIC y BIC

Eval

AIC y BIC

まとめ
  • AIC/BIC combinan verosimilitud y penalizaciones de complejidad para estimar la capacidad de generalización.
  • Calcula AIC/BIC en modelos de regresión y observa cómo reaccionan al añadir variables.
  • Comprende cuándo el tamaño muestral y la familia del modelo hacen preferible un criterio u otro.

1. Definiciones #

Con log-verosimilitud \(\ell\), número de parámetros \(k\) y tamaño muestral \(n\):

$$ \mathrm{AIC} = -2\ell + 2k, \qquad \mathrm{BIC} = -2\ell + k \log n $$

  • AIC aproxima el error fuera de muestra; el castigo es constante \(2k\).
  • BIC multiplica la penalización por \(\log n\), favoreciendo modelos más simples a medida que crece la muestra.

Valores menores indican un mejor balance entre ajuste y complejidad.


2. Cálculo en Python #

scikit-learn no expone AIC/BIC directamente, por lo que recurrimos a statsmodels.

import statsmodels.api as sm
from sklearn.datasets import load_boston

X, y = load_boston(return_X_y=True)
X = sm.add_constant(X)  # añade intercepto

model = sm.OLS(y, X).fit()
print("AIC:", model.aic)
print("BIC:", model.bic)

model.aic y model.bic están disponibles para OLS/GLM; elige la verosimilitud correspondiente en otros casos.


3. Intuición #

  • AIC enfatiza el rendimiento predictivo. Al tener penalización constante, tolera modelos más complejos con datos abundantes.
  • BIC procede de una aproximación bayesiana que asume que el modelo verdadero está en el conjunto candidato; el término \(\log n\) empuja hacia mayor parsimonia.
  • Compara AIC/BIC únicamente dentro del mismo dataset y familia de modelos; comparaciones cruzadas carecen de sentido.

4. Uso práctico #

  • Selección de variables: ordena los modelos por AIC/BIC y elimina aquellos atributos que no mejoran el criterio.
  • Modelos de series temporales: sirve para elegir órdenes (p, d, q) en ARIMA/SARIMAX minimizando AIC/BIC.
  • Modelos lineales generalizados: compara funciones de enlace o distribuciones manteniendo control sobre la complejidad.
  • Informes: acompaña métricas como RMSE o R² con AIC/BIC para evidenciar que se controló la complejidad.

5. Precauciones #

  • Supuestos de verosimilitud: si las hipótesis del modelo se violan gravemente, AIC/BIC pueden engañar.
  • Muestras enormes: con n muy grande, BIC puede penalizar en exceso; elige el criterio acorde al objetivo.
  • Alcance comparable: sólo compara modelos con la misma variable objetivo, verosimilitud y dataset.

Conclusiones #

  • AIC y BIC equilibran ajuste y simplicidad mediante penalizaciones distintas sobre la verosimilitud.
  • AIC se inclina hacia el rendimiento predictivo; BIC premia la parsimonia.
  • Úsalos junto a RMSE, R² ajustado u otras métricas para respaldar decisiones de modelado robustas.