Predicción utilizando el modelo de series temporales (GeoAI)

Resumen

Predice los valores de cada ubicación de un cubo de espacio-tiempo utilizando un modelo de predicción de serie temporal basado en el aprendizaje profundo que se han entrenado mediante el uso de la herramienta Entrenar el modelo de previsión de series temporales.

Uso

  • Debe instalar el marco de aprendizaje profundo adecuado para Python en ArcGIS AllSource.

    Más información sobre cómo instalar un marco de aprendizaje profundo para ArcGIS

  • La entrada es un archivo de definición de modelo de Esri (.emd) o un archivo de paquete de aprendizaje profundo (.dlpk), que se puede crear con la herramienta Entrenar el modelo de previsión de series temporales.

  • Esta herramienta acepta datos netCDF creados con las herramientas Crear cubo de espacio-tiempo agregando puntos, Crear cubo de espacio-tiempo a partir de ubicaciones definidas, Crear cubo de espacio-tiempo a partir de capa ráster multidimensional y Subdividir cubo de espacio-tiempo.

  • Esta herramienta utiliza modelos de predicción de serie temporal basada en el aprendizaje profundo. Los modelos de aprendizaje profundo tienen una gran capacidad de aprendizaje y resultan adecuados para series temporales que siguen tendencias complejas y cuyo modelo es difícil de crear con funciones matemáticas simples. Sin embargo, requieren un volumen mayor de datos de entrenamiento para aprender estas tendencias complejas y emplean más recursos informáticos durante el entrenamiento y la inferencia. Para utilizar esta herramienta se recomienda una GPU.

  • El parámetro Opción de valor atípico se puede utilizar para detectar valores atípicos estadísticamente significativos en los valores de la serie temporal de cada ubicación.

    Más información sobre cómo detectar valores atípicos de series temporales

  • Para ejecutar esta herramienta con la GPU, configure el entorno Tipo de procesador en GPU. Si tiene más de una GPU, especifique el entorno de Id. de GPU en su lugar.

  • Esta herramienta utiliza un único modelo de predicción global que se ha entrenado con los datos de serie temporal de cada ubicación.

  • El valor del parámetro Entidades de salida se agregará al panel Contenido con una representación en pantalla basada en el periodo de tiempo previsto final.

  • Esta herramienta genera mensajes de geoprocesamiento y gráficos emergentes que puede utilizar para comprender y visualizar los resultados de predicción. Los mensajes contienen información sobre la estructura del cubo de espacio-tiempo y la estadística de resumen de los valores de RMSE. Haga clic en una entidad con la herramienta de navegación Explorar para que aparezca un gráfico de líneas en el panel Elementos emergentes que muestra los valores del cubo de espacio-tiempo, los valores ajustados y los valores previstos para esa ubicación.

  • Para obtener información sobre los requisitos para ejecutar esta herramienta y los problemas que pueden presentarse, consulte Preguntas frecuentes sobre el aprendizaje profundo.

Parámetros

EtiquetaExplicaciónTipo de datos
Datos de serie temporal de entrada

Cubo netCDF que contiene la variable que se utilizará para predecir periodos de tiempo futuros. Este archivo debe tener una extensión .nc y se debe haber creado utilizando las herramientas Crear cubo de espacio-tiempo agregando puntos, Crear cubo de espacio-tiempo a partir de ubicaciones definidas o Crear cubo de espacio-tiempo a partir de capa ráster multidimensional.

File
Definición de modelo

Archivo de modelo de aprendizaje profundo entrenado (.dlpk o .emd) que se utilizará para hacer predicciones. El modelo se puede entrenar con la herramienta Entrenar con el modelo de previsión de series temporales.

File
Entidades de salida

Clase de entidad de salida de todas las ubicaciones en el cubo de espacio-tiempo con valores previstos almacenados como campos. La capa presenta la previsión correspondiente al periodo de tiempo final y contiene gráficos emergentes en los que se muestran las series temporales y las previsiones correspondientes a cada ubicación.

Feature Class
Número de periodos de tiempo para previsión

Entero positivo que especifica el número de periodos de tiempo que se emplearán para predecir la variable de análisis. El valor predeterminado es 2. Este valor no puede ser mayor que el 50% de los periodos de tiempo totales del cubo de espacio-tiempo de entrada para la predicción de un solo periodo, y no puede ser mayor que el 50% del valor del parámetro Longitud de secuencia en la herramienta Entrenar modelo de predicción de series temporales para la predicción de varios periodos.

Long
Variables explicativas coincidentes
(Opcional)

La asignación de los nombres de campo del conjunto de predicciones al conjunto de entrenamiento. Utilice este parámetro si los nombres de campo de los conjuntos de entrenamiento y predicción son diferentes. Los valores son los nombres de campo del dataset de predicción que coinciden con los nombres de campo de los datos de serie temporal de entrada.

Value Table
Cubo de salida
(Opcional)

Un cubo de espacio-tiempo de salida (archivo .nc) que contiene los valores del cubo de espacio-tiempo de entrada con los periodos de tiempo previstos anexados. Utilice la herramienta Visualizar cubo de espacio-tiempo en 3D para ver todos los valores observados y previstos de forma simultánea.

File
Opción de valor atípico
(Opcional)

Especifica si se identificarán valores atípicos de series temporales estadísticamente significativos.

  • NingunaNo se identificarán valores atípicos. Esta es la opción predeterminada.
  • Identificar valores atípicosSe identificarán valores atípicos utilizando la prueba de ESD generalizada.
String
Nivel de confianza
(Opcional)

Especifica el nivel de confianza que se utilizará para la prueba de los valores atípicos de series temporales.

  • 90%El nivel de confianza para la prueba será del 90%. Esta es la opción predeterminada.
  • 95%El nivel de confianza para la prueba será del 95%.
  • 99%El nivel de confianza para la prueba será del 99%.
String
Número máximo de valores atípicos

El número máximo de periodos de tiempo que se pueden declarar como valores atípicos para cada ubicación. El valor predeterminado corresponde a un cinco por ciento (redondeado a la baja) del número de periodos de tiempo del cubo de espacio-tiempo de entrada (siempre se utilizará un valor de al menos 1). El valor no puede superar el 20% del número de periodos de tiempo.

Long

arcpy.geoai.ForecastUsingTimeSeriesModel(in_cube, in_model_definition, out_features, number_of_timesteps_to_forecast, {match_explanatory_variables}, {out_cube}, {outlier_option}, {level_of_confidence}, maximum_number_of_outliers)
NombreExplicaciónTipo de datos
in_cube

Cubo netCDF que contiene la variable que se utilizará para predecir periodos de tiempo futuros. Este archivo debe tener una extensión .nc y se debe haber creado utilizando las herramientas Crear cubo de espacio-tiempo agregando puntos, Crear cubo de espacio-tiempo a partir de ubicaciones definidas o Crear cubo de espacio-tiempo a partir de capa ráster multidimensional.

File
in_model_definition

Archivo de modelo de aprendizaje profundo entrenado (.dlpk o .emd) que se utilizará para hacer predicciones. El modelo se puede entrenar con la herramienta Entrenar con el modelo de previsión de series temporales.

File
out_features

Clase de entidad de salida de todas las ubicaciones en el cubo de espacio-tiempo con valores previstos almacenados como campos. La capa presenta la previsión correspondiente al periodo de tiempo final y contiene gráficos emergentes en los que se muestran las series temporales y las previsiones correspondientes a cada ubicación.

Feature Class
number_of_timesteps_to_forecast

Entero positivo que especifica el número de periodos de tiempo que se emplearán para predecir la variable de análisis. El valor predeterminado es 2. Este valor no puede ser mayor que el 50% de los periodos de tiempo totales del cubo de espacio-tiempo de entrada para la predicción de un solo periodo, y no puede ser mayor que el 50% del valor del parámetro sequence_length en la herramienta Entrenar modelo de predicción de series temporales para la predicción de varios periodos.

Long
match_explanatory_variables
[match_explanatory_variables,...]
(Opcional)

La asignación de los nombres de campo del conjunto de predicciones al conjunto de entrenamiento. Utilice este parámetro si los nombres de campo de los conjuntos de entrenamiento y predicción son diferentes. Los valores son los nombres de campo del dataset de predicción que coinciden con los nombres de campo de los datos de serie temporal de entrada.

Value Table
out_cube
(Opcional)

Un cubo de espacio-tiempo de salida (archivo .nc) que contiene los valores del cubo de espacio-tiempo de entrada con los periodos de tiempo previstos anexados. Utilice la herramienta Visualizar cubo de espacio-tiempo en 3D para ver todos los valores observados y previstos de forma simultánea.

File
outlier_option
(Opcional)

Especifica si se identificarán valores atípicos de series temporales estadísticamente significativos.

  • NONENo se identificarán valores atípicos. Esta es la opción predeterminada.
  • IDENTIFYSe identificarán valores atípicos utilizando la prueba de ESD generalizada.
String
level_of_confidence
(Opcional)

Especifica el nivel de confianza que se utilizará para la prueba de los valores atípicos de series temporales.

  • 90%El nivel de confianza para la prueba será del 90%. Esta es la opción predeterminada.
  • 95%El nivel de confianza para la prueba será del 95%.
  • 99%El nivel de confianza para la prueba será del 99%.
String
maximum_number_of_outliers

El número máximo de periodos de tiempo que se pueden declarar como valores atípicos para cada ubicación. El valor predeterminado corresponde a un cinco por ciento (redondeado a la baja) del número de periodos de tiempo del cubo de espacio-tiempo de entrada (siempre se utilizará un valor de al menos 1). El valor no puede superar el 20% del número de periodos de tiempo.

Long

Muestra de código

Ejemplo de ForecastUsingTimeSeriesModel (script independiente)

El siguiente script muestra cómo utilizar la función ForecastUsingTimeSeriesModel.

# Description: Forecast a time series model on space-time cube data with the trained model 
#              obtained by the TrainTimeSeriesForecastingModel function.

# Import system modules
import arcpy
import os

# Set local variables
datapath  = "path_to_data_for_forecasting" 
out_path = "path_to_gdb_for_forecasting"

model_path = os.path.join(out_path, "model.dlpk")
in_cube = os.path.join(datapath, "test_data")
output_features = os.path.join(out_path, "forecasted_feature.gdb", "forecasted")

# Run Forecast Using Time Series Model 
r = arcpy.geoai.ForecastUsingTimeSeriesModel(
    in_cube,
    model_path,
    output_features,
    number_of_timesteps_to_forecast=2,
    match_explanatory_variables=None
)