Algoritmo Non-Parametric Time Series (NPTS) - Amazon Forecast

Amazon Forecast ya no está disponible para nuevos clientes. Los clientes actuales de Amazon Forecast pueden seguir utilizando el servicio con normalidad. Más información

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Algoritmo Non-Parametric Time Series (NPTS)

El algoritmo Non-Parametric Time Series (NPTS) de Amazon es un analista básico probabilístico escalable. Predice la distribución de valores futura de una serie temporal determinada mediante muestreos de observaciones pasadas. Las predicciones se rigen por los valores observados. NPTS resulta especialmente útil cuando la serie temporal es intermitente (o dispersa, que contiene muchos 0) y con ráfagas. Por ejemplo, la previsión de demanda de artículos individuales donde la serie temporal tiene muchos recuentos bajos. Amazon Forecast proporciona variantes de NPTS que se diferencian en qué últimas observaciones se muestran y cómo se muestrean. Para utilizar un variante de NPTS, seleccione una configuración de hiperparámetro.

Funcionamiento de NPTS

Al igual que los métodos de previsión clásicos, como, por ejemplo, la estabilización exponencial (ETS) y el modelo autorregresivo integrado de media móvil (ARIMA), NPTS genera predicciones para cada serie temporal de manera individual. Las series temporales del conjunto de datos pueden tener diferentes longitudes. Los puntos de tiempo donde las observaciones están disponibles se denominan el rango de entrenamiento y los puntos de tiempo donde se desea la predicción se denominan rango de predicción.

Los analistas de NPTS de Amazon Forecast tienen las siguientes variantes: NPTS, NPTS estacionales, analista climatológico y analista climatológico estacional.

NPTS

En esta variante, las predicciones se generan por muestreo a partir de todas las observaciones del rango de entrenamiento de la serie temporal. Sin embargo, en lugar de realizar un muestreo de manera uniforme a partir de todas las observaciones, esta variante asigna ponderación a cada una de las últimas observaciones de acuerdo con la distancia en relación con el paso temporal actual en el que se necesita la predicción. En particular, utiliza ponderaciones que decaen exponencialmente de acuerdo con la distancia de las últimas observaciones. De esta forma, las observaciones del pasado reciente se muestran con mucho mayor probabilidad que las observaciones de un pasado lejano. Se presupone que el pasado cercano es más indicativo para el futuro que el pasado lejano. Puede controlar la cantidad de decadencia en las ponderaciones con el hiperparámetro exp_kernel_weights.

Para utilizar esta variante NPTS en Amazon Forecast, establezca el hiperparámetro use_seasonal_model en False y acepte el resto de la configuración predeterminada.

NPTS estacional

La variante de NPTS estacional es similar a NPTS salvo que en lugar de realizar el muestreo a partir de todas las observaciones, utiliza únicamente las observaciones de las últimas estaciones. De forma predeterminada, la estación se determina en función del grado de detalle de la serie temporal. Por ejemplo, en el caso de una serie temporal por hora, para pronosticar una hora t, esta variante realiza un muestreo a partir de las observaciones que corresponden a la hora t en los últimos días. Al igual que NPTS, la observación en la hora t el día anterior tiene más ponderación que las observaciones en la hora t en días anteriores. Para obtener más información acerca de cómo determinar la estacionalidad en función del grado de detalle de la serie temporal, consulte Características estacionales.

Analista climatológico

La variante del analista estacional realiza un muestreo de todas las últimas observaciones con probabilidad uniforme.

Para utilizar el analista climatológico, establezca el hiperparámetro kernel_type en uniform y el hiperparámetro use_seasonal_model en False. Acepte los valores predeterminados para todos los demás hiperparámetros.

Analista climatológico estacional

Al igual que la NPTS estacional, el analista climatológico estacional realiza un muestreo de las observaciones de estaciones anteriores, pero muestrearlos con probabilidad uniforme.

Para utilizar el analista climatológico estacional, establezca el hiperparámetro kernel_type en uniform. Acepte todos los otros valores predeterminados de todos los demás hiperparámetros.

Características estacionales

Para determinar lo que corresponde a una estación para la NPTS estacional y el analista climatológico estacional, utilice las características que se muestran en la siguiente tabla. En la tabla se enumeran las características derivadas para las frecuencias temporales básicas admitidas, en función del grado de detalle. Amazon Forecast incluye estas series temporales de características, por lo que no tiene que facilitarlas.

Frecuencia de la serie temporal Característica para determinar estacionalidad
Minuto minuto de la hora
Hora hora del día
Día día de la semana
Semana día del mes
Mes mes del año

Cuando se utilizan los algoritmos de la NPTS de Amazon Forecast, tenga en cuenta las siguientes prácticas recomendadas para preparar los datos y lograr resultados óptimos:

  • Dado que NPTS genera predicciones para cada serie temporal de manera individual, proporcione toda la serie temporal cuando llame al modelo de predicción. Además, acepte el valor predeterminado del hiperparámetro context_length. Esto hace que el algoritmo utilice toda la serie temporal.

  • Si cambia el context_length (porque los datos de entrenamiento son demasiado largos), asegúrese de que es lo suficientemente grande y que cubre varias estaciones anteriores. Por ejemplo, en el caso de una serie temporal diaria, este valor debe ser al menos 365 días (siempre que tenga esa cantidad de datos).

Hiperparámetros de NPTS

En la tabla siguiente, se enumeran los hiperparámetros que puede usar en el algoritmo de NPTS.

Nombre del parámetro Descripción
context_length El número de puntos de tiempo en el pasado que el modelo utiliza para realizar la predicción. De forma predeterminada, utiliza todos los puntos de tiempo en el rango de entrenamiento. Normalmente, el valor de este hiperpoarámetro debe ser grande y debe cubrir varias estaciones anteriores. Por ejemplo, en el caso de la serie temporal diaria este valor debe ser al menos 365 días.
Valores válidos

Números enteros positivos

Valor predeterminado

La longitud de la serie temporal de entrenamiento

kernel_type El kernel que se va a utilizar para definir las ponderaciones usadas para el muestreo de las últimas observaciones.
Valores válidos

exponential o uniform

Valores predeterminados

exponential

exp_kernel_weights

Solo es válido cuando kernel_type es exponential.

El parámetro de escalado del kernel. Para una degradación (exponencial) más rápida en las ponderaciones facilitadas a las observaciones en el pasado remoto, utilice un valor grande.

Valores válidos

Números positivos de coma flotante

Valor predeterminado

0.01

use_seasonal_model Si se utiliza una variante estacional.
Valores válidos

True o False

Valor predeterminado

True

use_default_time_features

Solo es válido para la NPTS estacional y las variantes del analista climatológico estacional.

Si se utilizan características estacionales en función del grado de detalle de la serie temporal para determinar la estacionalidad.

Valores válidos

True o False

Valor predeterminado

True