Skip to content

CBaezaT/TimeSeries_Sales_Prediction_T2

Repository files navigation

Tarea 2 · Series de Tiempo (MACI)

Repositorio de la Tarea 2 de Análisis de Series de Tiempo. El objetivo fue construir un modelo de pronóstico que minimizara el error WMAE sobre el conjunto de evaluación provisto por la cátedra.

Resultados

  • 1º lugar del curso: se obtuvo el WMAE más bajo de toda la sección.
  • Métrica alcanzada: WMAE = 1850.7. Modelado con Darts; el modelo ganador fue Prophet (Darts) con ajuste y validación específicos para el desafío.

Evidencia

La siguiente imagen corresponde al anuncio oficial de resultados compartido por el equipo docente.

Evidencia oficial de resultados (WMAE más bajo)

Nota: la imagen está en la raíz del repositorio como Evidencia.png.

Estrategia ganadora (resumen)

Implementada en T2_CristianBaezaT.ipynb usando Darts con el modelo Prophet.

  1. Block Bootstrap + Prophet (10 combinaciones)

    • Generación de múltiples muestras de entrenamiento respetando la dependencia temporal con bloques de 8 semanas.
    • 10 modelos Prophet por combinación con parámetros optimizados mediante Grid Search.
    • Ensamble mediante promedio para reducir varianza.
  2. Grid Search de Hiperparámetros

    • changepoint_prior_scale: [0.05, 0.1, 0.5]
    • seasonality_prior_scale: [5, 10, 15]
    • seasonality_mode: ['multiplicative', 'additive']
    • Validación temporal con últimas 8 semanas de train.
  3. Completado con Promedio Histórico

    • Para las 3,151 combinaciones restantes: promedio histórico de ventas por tienda-departamento.
    • Asegura cobertura completa del test set (76,903 predicciones).
  4. Manejo de Festivos

    • Inclusión automática de festivos estadounidenses mediante add_country_holidays('US').

Resultados generados

  • submission.csv: 76,903 predicciones en formato Store_Dept_Fecha.
  • ✅ Cobertura completa de todas las combinaciones tienda–departamento.
  • ✅ Validación visual: gráficos muestran patrones estacionales coherentes.
  • ✅ Predicciones no negativas: se aplica np.maximum(predictions, 0).

Ventajas de la estrategia

  • ✅ Híbrida: combina modelos sofisticados (Prophet) con baseline robusto (promedio).
  • ✅ Eficiente: enfoca recursos computacionales en un subsample representativo.
  • ✅ Robusta: bootstrap reduce sobreajuste; el ensamble reduce varianza.
  • ✅ Completa: garantiza predicción para todos los registros requeridos.

Reproducibilidad

  1. Requisitos sugeridos (Python 3.10+): pandas, numpy, scikit-learn, darts[prophet], matplotlib, seaborn.
  2. Abra y ejecute el cuaderno principal del proyecto:
    • T2_CristianBaezaT.ipynb
  3. El flujo de trabajo produce los archivos de salida (por ejemplo submission.csv) en la carpeta raíz del repositorio.

Instalación rápida (ejemplo): pip install pandas numpy scikit-learn "darts[prophet]" matplotlib seaborn.

Notas

  • El foco del proyecto fue la optimización de WMAE; Prophet (Darts) fue el mejor desempeño en validación/competencia.
  • Para replicación exacta, mantenga la estructura de data/ y ejecute el cuaderno de principio a fin.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors