Clase 7: Series temporales

Eje II: Aprendizaje supervisado

Objetivo

Introducir el análisis de series temporales: datos donde el orden importa, porque cada observación es un momento. La clase recorre cómo se mira una serie (qué es tendencia, qué es estacionalidad y qué queda como resto), cómo se la separa en esas tres piezas, y cómo se pronostica y se evalúa ese pronóstico sin hacer trampa con el futuro.

La primera mitad de la clase termina la evaluación de clasificadores de la Clase 6 (matriz de confusión, sensibilidad y especificidad, precisión, curva ROC y AUC), con las diapositivas de esa clase.

Contenidos

  • Qué es una serie temporal y qué preguntas contesta: cuánto va a haber, si un cambio es real o se repite todos los años, si un evento dejó marca.
  • Tendencia y estacionalidad, anual y semanal. Y un caso donde el total esconde dos ritmos semanales opuestos que se cancelan.
  • Descomposición: la media móvil para sacar la tendencia, la descomposición clásica paso a paso, sus dos problemas, y STL como la versión que los resuelve.
  • El resto: donde aparecen los días en que pasó algo (un incidente, los feriados).
  • Pronosticar y evaluar: por qué el k-fold al azar miente con una serie, la partición temporal (el test son los días más nuevos), los tres métodos de referencia (media, naive y naive estacional), el MAE y el origen móvil.
  • Mención al análisis de supervivencia: modelar el tiempo hasta un evento.
NotaNimbus, una tabla nueva: la mesa de ayuda

La clase sigue en Nimbus, pero con una tabla distinta a las de las clases anteriores: nimbus_soporte_diario.csv, tres años de tickets diarios de la mesa de ayuda, separados en clientes empresa y particulares. No tiene empleado_id: es una serie de la empresa, no un dato por empleado.

Notebooks

La notebook sigue el mismo recorrido que las diapositivas. Carga la serie, mira la tendencia y las dos estacionalidades, la descompone con medias móviles y con STL, busca en el resto los días en que pasó algo, y termina pronosticando octubre de 2025 con los tres métodos de referencia, comparados por MAE, y repitiendo la evaluación con cinco ventanas distintas.

Lenguaje Leer en el sitio Ejecutar en Colab Descargar
Python Notebook renderizada Open in Colab .ipynb
Tip

Igual que las Clases 4 y 6, esta clase no tiene par en R: el recorrido está sólo en Python. Quien quiera reproducirlo en R tiene el camino hecho en la lectura obligatoria, que está escrita en R (paquetes fable y feasts).

Los datos

El archivo se lee por URL desde la notebook, sin bajar nada.

Archivo Contenido URL
nimbus_soporte_diario.csv 1.096 días (2023-2025): tickets diarios de la mesa de ayuda, en total y separados en empresas y particulares /data/toy-nimbus/nimbus_soporte_diario.csv

Slides

Diapositivas de la clase

La primera mitad de la clase usa las diapositivas de la Clase 6 (el bloque de evaluación).

Lo que viene

ImportantePre-entrega del TP grupal: 26/09

La pre-entrega es en la Clase 8 y vale el 20% de la nota: el algoritmo y las variables definidos, con una justificación coherente con el tipo de problema.

Lecturas

Obligatoria:

  • Hyndman, R. J. & Athanasopoulos, G. (2021). Forecasting: Principles and Practice (3.ª ed., capítulos seleccionados). OTexts. Libro web gratuito en https://otexts.com/fpp3/. Está escrito en R; el lado Python de la clase se trabaja con statsmodels.

Recursos de consulta: