まとめ
- 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
nmuy 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.