Compartir a través de


series_decompose_forecast()

Se aplica a: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Previsión basada en la descomposición de la serie.

Toma una expresión que contiene una serie (matriz numérica dinámica) como entrada y predice los valores de los últimos puntos finales. Para obtener más información, consulte series_decompose.

Sintaxis

series_decompose_forecast(Puntos, de serie, [ Tendencia, de estacionalidad, Seasonality_threshold ])

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Type Obligatorio Descripción
Serie dynamic ✔️ Matriz de valores numéricos, normalmente la salida resultante de los operadores make-series o make_list .
Puntos int ✔️ Especifica el número de puntos al final de la serie que se van a predecir o predecir. Estos puntos se excluyen del proceso de aprendizaje o regresión.
Estacionalidad int Controla el análisis estacional. Los valores posibles son:

- -1: detecta automáticamente la estacionalidad mediante series_periods_detect. Este es el valor predeterminado.
- Período: entero positivo que especifica el período esperado en número de cubos. Por ejemplo, si la serie está en 1 - h contenedores, un período semanal es de 168 contenedores.
- 0: no hay estacionalidad, así que omita la extracción de este componente.
Tendencia string Controla el análisis de tendencias. Los valores posibles son:

- avg: defina el componente de tendencia como average(x). Este es el valor predeterminado.
- linefit: extraiga el componente de tendencia mediante la regresión lineal.
- none: no hay tendencia, así que omita la extracción de este componente.
Seasonality_threshold real Umbral de puntuación de estacionalidad cuando estacionalidad se establece en detección automática. El umbral de puntuación predeterminado es 0,6.

Para obtener más información, consulte series_periods_detect.

Devoluciones

Matriz dinámica con la serie prevista.

Nota:

  • La matriz dinámica de la serie de entrada original debe incluir una serie de ranuras de puntos que se van a predecir. Normalmente, la previsión se realiza mediante la serie make y especificando la hora de finalización en el intervalo que incluye el período de tiempo que se va a predecir.
  • Se debe habilitar la estacionalidad o la tendencia; de lo contrario, la función es redundante y simplemente devuelve una serie llena de ceros.

Ejemplo

En el ejemplo siguiente, generamos una serie de cuatro semanas en un grano por hora, con estacionalidad semanal y una tendencia ascendente pequeña. A continuación, usamos make-series y agregamos otra semana vacía a la serie. series_decompose_forecast se llama con una semana (24*7 puntos) y detecta automáticamente la estacionalidad y la tendencia, y genera una previsión de todo el período de cinco semanas.

let ts=range t from 1 to 24*7*4 step 1 // generate 4 weeks of hourly data
| extend Timestamp = datetime(2018-03-01 05:00) + 1h * t 
| extend y = 2*rand() + iff((t/24)%7>=5, 5.0, 15.0) - (((t%24)/10)*((t%24)/10)) + t/72.0 // generate a series with weekly seasonality and ongoing trend
| extend y=iff(t==150 or t==200 or t==780, y-8.0, y) // add some dip outliers
| extend y=iff(t==300 or t==400 or t==600, y+8.0, y) // add some spike outliers
| make-series y=max(y) on Timestamp from datetime(2018-03-01 05:00) to datetime(2018-03-01 05:00)+24*7*5h step 1h; // create a time series of 5 weeks (last week is empty)
ts 
| extend y_forcasted = series_decompose_forecast(y, 24*7)  // forecast a week forward
| render timechart 

Previsión de descomposición de series.