Prévision par lissage exponentiel (Exploration des modèles spatio-temporels)

Résumé

Prévoit les valeurs de chaque emplacement d’un cube spatio-temporel à l’aide de la méthode de lissage exponentiel Holt-Winters, en décomposant la série chronologique au niveau de chaque cube d’emplacement en composants saisonniers et de tendance.

En savoir plus sur le fonctionnement de l’outil Exponential Smoothed Forecasting (Prévision par lissage exponentiel)

Illustration

Illustration de l’outil Prévision par lissage exponentiel
L’outil Prévision par lissage exponentiel permet de prévoir les valeurs des futures phases.

Utilisation

  • Cet outil accepte les fichiers netCDF créés par les outils Créer un cube spatio-temporel en agrégeant des points, Créer un cube spatio-temporel à partir d’entités définies et Créer un cube spatio-temporel à partir d’une couche raster multidimensionnelle.

  • Par rapport aux autres outils de prévision du jeu d’outils Time Series Forecasting (Prévision de séries chronologiques), cet outil est recommandé pour les données dont les tendances sont modérées et qui sont marquées par un fort comportement saisonnier. Lorsque vous utilisez le modèle de lissage exponentiel, on suppose que le comportement saisonnier et la tendance peuvent être séparés ; le modèle convient donc mieux aux données dont les tendances évoluent progressivement et qui suivent des modèles saisonniers cohérents dans le temps.

  • Il est possible de comparer et fusionner plusieurs cubes spatio-temporels prévus à l’aide de l’outil Évaluer les prévisions par emplacement. Cela vous permet de créer plusieurs cubes de prévision à l’aide de différents outils et paramètres de prévision ; l’outil identifie la meilleure prévision pour chaque emplacement à l’aide de la racine carrée de l’erreur quadratique moyenne (RMSE) ou racine carrée de l’erreur quadratique moyenne de validation.

  • Pour chaque emplacement du paramètre Input Space Time Cube (Cube spatio-temporel en entrée), l’outil génère deux modèles qui répondent à des objectifs différents.

    • Forecast model (Modèle de prévision) : ce modèle permet de prévoir les valeurs du cube spatio-temporel en lissant de manière exponentielle les valeurs de la série chronologique et en étendant ce lissage aux phases futures. L’adéquation du modèle de prévision aux valeurs du cube spatio-temporel est mesurée grâce à la valeur EQM prévue.
    • Validation model (Modèle de validation) : ce modèle permet de valider le modèle de prévision et de tester la précision de ses prévisions des valeurs. Si un nombre supérieur à zéro est spécifié pour le paramètre Number of Time Steps to Exclude for Validation (Nombre de phases à exclure de la validation), ce modèle est ajusté aux phases inclues et permet de prévoir les valeurs des phases exclues. Cela vous permet d’examiner la précision du modèle pour la prévision des valeurs. L’adéquation des valeurs prévues par rapport aux valeurs exclues est mesurée grâce à la valeur EQM de validation.

    En savoir plus sur le modèle de prévision, le modèle de validation et les statistiques EQM

  • Les valeurs du paramètre Output Features (Entités en sortie) sont ajoutées à la fenêtre Contents (Contenu) avec un rendu dépendant de la phase finale prévue.

  • Cet outil génère des messages de géotraitement et des diagrammes contextuels pour aider à comprendre et visualiser les résultats prévus. Les messages renferment des informations sur la structure du cube spatio-temporel ainsi que des statistiques synthétiques sur les valeurs EQM et la durée des saisons. Cliquer sur une entité à l’aide de l’outil de navigation Explore (Explorer) affiche un diagramme linéaire dans la fenêtre contextuelle montrant les valeurs du cube spatio-temporel, les valeurs ajustées de la forêt, les valeurs prévues et les bornes de confiance pour cet emplacement.

  • 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

  • Il est important de bien déterminer le nombre d’intervalles temporels à exclure de la validation. Plus le nombre de pas de temps exclus est élevé, moins il reste de pas de temps pour estimer le modèle de validation. Toutefois, si le nombre d’intervalles temporels exclus est insuffisant, la racine carrée de l’erreur quadratique moyenne de validation est estimée à l’aide d’une petite quantité de données et peut être trompeuse. Il est recommandé d’exclure autant de phases que possible tout en en conservant un nombre suffisant pour estimer le modèle de validation. Il est également recommandé de conserver au moins autant d’intervalles temporels pour la validation que pour la précision, si votre cube spatio-temporel dispose d’un nombre suffisant d’intervalles temporels pour le permettre.

  • Le modèle de lissage exponentiel suppose que tous les composants sont additifs et linéaires. Une tendance amortie est toujours utilisée et la saisonnalité additive est prise en charge, mais non requise. Les intervalles de confiance sont construits selon la supposition que les résiduels sont additifs et normalement distribués.

    En savoir plus sur les composants du modèle de lissage exponentiel

Syntaxe

arcpy.stpm.ExponentialSmoothingForecast(in_cube, analysis_variable, output_features, {output_cube}, {number_of_time_steps_to_forecast}, season_length, {number_for_validation}, {outlier_option}, {level_of_confidence}, maximum_number_of_outliers)
ParamètreExplicationType de données
in_cube

Cube netCDF contenant la variable à prévoir pour les futures phases. 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
analysis_variable

Variable numérique du fichier netCDF à prévoir pour les futurs intervalles temporels.

String
output_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 la phase finale et contient les diagrammes contextuels affichant les séries chronologiques, les prévisions et les bornes de confiance à 90 % de chaque emplacement.

Feature Class
output_cube
(Facultatif)

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

File
number_of_time_steps_to_forecast
(Facultatif)

Entier positif spécifiant le nombre d'intervalles temporels à prévoir. 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. La valeur par défaut est un intervalle temporel.

Long
season_length

Nombre d’intervalles temporels correspondant à une saison à chaque emplacement. S’il existe plusieurs saisons dans les données, il est recommandé d’utiliser la saison la plus longue afin de générer le résultat le plus fiable. Si aucune valeur n’est spécifiée, une durée de saison est estimée par l’outil à chaque emplacement, à l’aide d’une fonction de densité spectrale.

Long
number_for_validation
(Facultatif)

Nombre d’intervalles temporels à la fin de chaque série chronologique à exclure de la validation. La valeur par défaut est de 10 pour cent (arrondie à la valeur inférieure) du nombre d’intervalles temporels et cette valeur ne peut pas être supérieure à 25 pour cent du nombre d’intervalles temporels. Spécifiez la valeur 0 pour ne pas exclure d’intervalles temporels.

Long
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 du test des points aberrants de série chronologique

  • 90%Le niveau de confiance du test est de 90 %. Il s’agit de l’option par défaut.
  • 95%Le niveau de confiance du test est de 95 %.
  • 99%Le niveau de confiance du test est 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 de phases.

Long

Exemple de code

Exemple 1 d'utilisation de l'outil ExponentialSmoothingForecast (fenêtre Python)

Le script Python ci-dessous illustre l’utilisation de l’outil ExponentialSmoothingForecast.

import arcpy
arcpy.env.workspace = "C:/Analysis"
# Forecast four time steps using exponential smoothing.
arcpy.stpm.ExponentialSmoothingForecast("Temperature.nc","Temp_NONE_ZEROS", 
                                        "Analysis.gdb/Forecasts", 
                                        "outForecastCube.nc", 4, 2, 5)
Exemple 2 d'utilisation de l'outil ExponentialSmoothingForecast (script autonome)

Le script Python ci-dessous illustre l’utilisation de l’outil ExponentialSmoothingForecast pour prévoir la température.

# Forecast temperature using exponential smoothing.
# Import system modules.
import arcpy
# Set property to overwrite existing output.
arcpy.env.overwriteOutput = True
# Set workspace.
workspace = r"C:\Analysis"
arcpy.env.workspace = workspace
# Forecast three time steps.
arcpy.stpm.ExponentialSmoothingForecast("Temperature.nc","Temp_NONE_ZEROS", 
                                        "Analysis.gdb/Forecasts", 
                                        "outForecastCube.nc", 3, 2, 5,
                                        "IDENTIFY", "90%", 4)
# Create a feature class visualizing the forecasts.
arcpy.stpm.VisualizeSpaceTimeCube3D("outForecastCube.nc", "Temp_NONE_ZEROS", 
                                    "VALUE", "Analysis.gdb/ForecastsFC")

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes