Está en la página 1de 4

Ejemplo de pronóstico de series temporales con Sklearn

Serie Temporal:
Una serie temporal es una sucesión de datos ordenados cronológicamente, espaciados a intervalos iguales o
desiguales.

Pronóstico en series temporales:


El proceso de pronóstico consiste en predecir el valor futuro de una serie temporal, bien modelando la serie
únicamente en función de su comportamiento pasado (autorregresivo) o empleando otras variables externas.

Entrenamiento de un modelo de pronóstico


La principal adaptación que se necesita hacer para aplicar modelos de machine learning a problemas de pronóstico es
transformar la serie temporal en una matriz en la que, cada valor, está asociado a la ventana temporal que le precede.

Ejemplo: sea la siguiente serie de tiempo.


Patrones de entrada Patrones de salida
Serie ={1, 2, 3, 4, 5, 6, 7, 8, 9, 10} 7 8 9 10
6 7 8 9
5 6 7 8
4 5 6 7
3 4 5 6
2 3 4 5
Ventana temporal = 3 valores pasados
1 2 3 4
Ejemplo de pronóstico de series temporales con Sklearn

Predicciones multi-paso
Cuando se trabaja con series temporales, no siempre se quiere predecir solo el elemento siguiente (t+1) de la serie,
puede necesitarse un intervalo futuro o un punto alejado en el futuro (t+n).

Existen varias estrategias que permiten generar este tipo de predicciones múltiples.

Pronóstico multi-paso recursivo


Como para predecir el valor en el momento 𝑡𝑛 se necesita el valor en 𝑡𝑛−1 , y ese valor en 𝑡𝑛−1 no se conoce, se sigue
un proceso recursivo en el que cada nueva predicción, hace uso de la predicción anterior.

A este proceso se le conoce como pronóstico recursivo o pronóstico multi-paso recursivo, y puede generarse con las
clases ForecasterAutoreg y ForecasterAutoregCustom de la librería skforecast de sklearn.

El proceso de predicción multi-paso recursivo para predecir 3 pasos, utilizando como predictores
los últimos 4 valores pasados de la serie.
Ejemplo de pronóstico de series temporales con Sklearn
Pronóstico directo multi-paso
El pronóstico directo multi-paso consiste en entrenar un modelo distinto para cada paso. Por ejemplo, si se quieren
predecir los siguientes 5 valores de una serie temporal, se entrenan 5 modelos distintos, uno para cada paso.
Como resultado, las predicciones son independientes unas de otras.

Diagrama del proceso de predicción multi-paso directo, para predecir 3 pasos futuros utilizando los últimos 4 valores
pasados de la serie como predictores.
Este proceso está automatizado en la clase ForecasterAutoregMultiOutput de la librería skforecast.

También es importante tener en cuenta que esta estrategia tiene un costo computacional más elevado ya que requiere
entrenar múltiples modelos.
Referencias
https://www.cienciadedatos.net/documentos/py27-forecasting-series-temporales-python-scikitlearn.html

https://www.cienciadedatos.net/documentos/py29-forecasting-demanda-energia-electrica-python.html

https://towardsdatascience.com/a-quick-deep-learning-recipe-time-series-forecasting-with-keras-in-python-
f759923ba64

https://www.kaggle.com/code/abhishekmamidi/time-series-analysis-artificial-neural-networks/notebook

También podría gustarte