Prévoir à l’aide d’un modèle de série chronologique (GeoAI)

Synthèse

Prévoit les valeurs de chaque emplacement d’un cube spatio-temporel en utilisant un modèle de prévision de séries chronologiques basé sur le Deep Learning et ayant été entraîné avec l’outil Entraîner le modèle de prévision de séries chronologiques.

Utilisation

  • Vous devez installer la structure de Deep Learning correspondant à Python dans ArcGIS AllSource.

    Découvrir comment installer des structures de Deep Learning pour ArcGIS

  • L’entrée est un fichier de définition de modèle Esri (.emd) ou un fichier de paquetage de Deep Learning (.dlpk), qu’il est possible de créer à l’aide de l’outil Entraîner le modèle de prévision de séries chronologiques.

  • Cet outil accepte les données netCDF créées par les outils Créer un cube spatio-temporel en agrégeant des points, Créer un cube spatio-temporel à partir d’emplacements définis, Créer un cube spatio-temporel à partir d’une couche raster multidimensionnelle et Subdiviser un cube spatio-temporel.

  • Cet outil utilise des modèles de prévision de séries chronologiques basés sur le Deep Learning. Les modèles de Deep Learning sont parfaitement capables d’apprendre et sont adaptés aux séries chronologiques qui suivent des tendances complexes et sont difficiles à modéliser avec des fonctions mathématiques simples. Toutefois, ils nécessitent un plus gros volume de données d’entraînement pour apprendre ces tendances complexes et utilisent davantage de ressources de calcul pour l’entraînement et l’inférence. Une unité de traitement graphique est recommandée pour utiliser cet outil.

  • Le paramètre Outlier Option (Option de point aberrant) peut être utilisé pour détecter des points aberrants statistiquement significatifs dans les valeurs de série chronologique à chaque emplacement.

    En savoir plus sur la détection des points aberrants de série chronologique

  • Pour exécuter cet outil avec une unité de traitement graphique, définissez le paramètre d’environnement Type de processeur sur GPU. Si vous avez plusieurs processeurs, spécifiez plutôt le paramètre d’environnement ID de GPU.

  • Cet outil utilise un modèle de prévision global unique ayant été entraîné sur des données de série chronologique issues de chaque emplacement.

  • La valeur du paramètre Entités en sortie est ajoutée à la fenêtre Contenu avec un rendu basé sur le meilleur intervalle temporel prévu de modèle enregistré.

  • Cet outil génère des messages de géotraitement et des diagrammes contextuels que vous pouvez utiliser pour comprendre et visualiser les résultats prévus. Les messages contiennent des informations sur la structure du cube spatio-temporel et des statistiques récapitulatives des valeurs RMSE. Cliquez sur une entité à l’aide de l’outil de navigation Explorer pour afficher un diagramme linéaire dans la vue Fenêtre contextuelle montrant les valeurs du cube spatio-temporel, les valeurs ajustées et les valeurs prévues pour cet emplacement.

  • Pour en savoir plus sur les exigences relatives à l’exécution de cet outil ainsi que sur les problèmes que vous pouvez rencontrer, consultez la FAQ sur le Deep Learning.

Paramètres

ÉtiquetteExplicationType de données
Données de série chronologique en entrée

Cube netCDF contenant la variable à utiliser afin de prévoir pour les intervalles temporels futurs. Ce fichier doit comporter l’extension .nc et avoir été créé à l’aide de l’outil Créer un cube spatio-temporel en agrégeant des points, Créer un cube spatio-temporel à partir d’emplacements définis ou Créer un cube spatio-temporel à partir d’une couche raster multidimensionnelle.

File
Définition de modèle

Le fichier de modèle de Deep Learning entraîné (.dlpk ou .emd) allant être utilisé pour effectuer les prévisions. Le modèle peut être entraîné à l’aide de l’outil Entraîner le modèle de prévision de séries chronologiques.

File
Entités en sortie

Classe d’entités en sortie de tous les emplacements du cube spatio-temporel avec les valeurs prévues stockées sous forme de champs. La couche affiche la prévision de l’intervalle temporel final et contient des diagrammes contextuels illustrant la série chronologique et les prévisions de chaque emplacement.

Feature Class
Nombre d’intervalles temporels à prévoir

Entier positif spécifiant le nombre d’intervalles temporels à utiliser pour prévoir la variable d’analyse. La valeur par défaut est de 2. Cette valeur ne doit pas être supérieure à 50 pour cent du nombre total d’intervalles temporels dans le cube spatio-temporel en entrée pour la prévision à étape unique et à 50 pour cent de la valeur du paramètre Longueur de séquence dans l’outil Entraîner le modèle de prévision de séries chronologiques pour la prévision en plusieurs étapes.

Long
Apparier les variables explicatives
(Facultatif)

Appariement des noms de champ du jeu de prévision et du jeu d’entraînement. Utilisez ce paramètre si les noms de champ des jeux d’entraînement et de prévision sont différents. Les valeurs sont les noms de champ du jeu de données de prévision qui correspondent aux noms de champ des données de série chronologique en entrée.

Value Table
Cube en sortie
(Facultatif)

Cube spatio-temporel en sortie (fichier .nc) contenant les valeurs du cube spatio-temporel en entrée auxquelles ont été ajoutés les intervalles temporels prévus. L’outil Visualiser le cube spatio-temporel en 3D permet d’examiner simultanément toutes les valeurs observées et prévues.

File
Outlier Option (Option de point aberrant)
(Facultatif)

Indique si les points aberrants de série chronologique statistiquement significatifs sont identifiés.

  • AucunLes points aberrants ne seront pas identifiés. Il s’agit de l’option par défaut.
  • Identify outliers (Identifier les points aberrants)Les points aberrants seront identifiés via le test Generalized ESD (ESD généralisé).
String
Niveau de confiance
(Facultatif)

Spécifie le niveau de confiance qui sera utilisé pour le test des points aberrants de série chronologique.

  • 90 %Le niveau de confiance du test sera de 90 %. Il s’agit de l’option par défaut.
  • 95%Le niveau de confiance du test sera de 95 %.
  • 99%Le niveau de confiance du test sera de 99 %.
String
Maximum Number of Outliers (Nombre maximal de points aberrants)

Nombre maximal de phases pouvant être déclarées comme des points aberrants pour chaque emplacement. La valeur par défaut correspond à 5 % (arrondi à la valeur inférieure) du nombre de phases du cube spatio-temporel en entrée (une valeur minimum de 1 est toujours utilisée). Cette valeur ne peut pas excéder 20 % du nombre d’intervalles temporels.

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)
NomExplicationType de données
in_cube

Cube netCDF contenant la variable à utiliser afin de prévoir pour les intervalles temporels futurs. Ce fichier doit comporter l’extension .nc et avoir été créé à l’aide de l’outil Créer un cube spatio-temporel en agrégeant des points, Créer un cube spatio-temporel à partir d’emplacements définis ou Créer un cube spatio-temporel à partir d’une couche raster multidimensionnelle.

File
in_model_definition

Le fichier de modèle de Deep Learning entraîné (.dlpk ou .emd) allant être utilisé pour effectuer les prévisions. Le modèle peut être entraîné à l’aide de l’outil Entraîner le modèle de prévision de séries chronologiques.

File
out_features

Classe d’entités en sortie de tous les emplacements du cube spatio-temporel avec les valeurs prévues stockées sous forme de champs. La couche affiche la prévision de l’intervalle temporel final et contient des diagrammes contextuels illustrant la série chronologique et les prévisions de chaque emplacement.

Feature Class
number_of_timesteps_to_forecast

Entier positif spécifiant le nombre d’intervalles temporels à utiliser pour prévoir la variable d’analyse. La valeur par défaut est de 2. Cette valeur ne doit pas être supérieure à 50 pour cent du nombre total d’intervalles temporels dans le cube spatio-temporel en entrée pour la prévision à étape unique et à 50 pour cent de la valeur du paramètre sequence_length dans l’outil Entraîner le modèle de prévision de séries chronologiques pour la prévision en plusieurs étapes.

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

Appariement des noms de champ du jeu de prévision et du jeu d’entraînement. Utilisez ce paramètre si les noms de champ des jeux d’entraînement et de prévision sont différents. Les valeurs sont les noms de champ du jeu de données de prévision qui correspondent aux noms de champ des données de série chronologique en entrée.

Value Table
out_cube
(Facultatif)

Cube spatio-temporel en sortie (fichier .nc) contenant les valeurs du cube spatio-temporel en entrée auxquelles ont été ajoutés les intervalles temporels prévus. L’outil Visualiser le cube spatio-temporel en 3D permet d’examiner simultanément toutes les valeurs observées et prévues.

File
outlier_option
(Facultatif)

Indique si les points aberrants de série chronologique statistiquement significatifs sont identifiés.

  • NONELes points aberrants ne seront pas identifiés. Il s’agit de l’option par défaut.
  • IDENTIFYLes points aberrants seront identifiés via le test Generalized ESD (ESD généralisé).
String
level_of_confidence
(Facultatif)

Spécifie le niveau de confiance qui sera utilisé pour le test des points aberrants de série chronologique.

  • 90%Le niveau de confiance du test sera de 90 %. Il s’agit de l’option par défaut.
  • 95%Le niveau de confiance du test sera de 95 %.
  • 99%Le niveau de confiance du test sera de 99 %.
String
maximum_number_of_outliers

Nombre maximal de phases pouvant être déclarées comme des points aberrants pour chaque emplacement. La valeur par défaut correspond à 5 % (arrondi à la valeur inférieure) du nombre de phases du cube spatio-temporel en entrée (une valeur minimum de 1 est toujours utilisée). Cette valeur ne peut pas excéder 20 % du nombre d’intervalles temporels.

Long

Exemple de code

Exemple d’utilisation de la fonction ForecastUsingTimeSeriesModel (script autonome)

Cet exemple illustre l’utilisation de la fonction 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
)