Résumé
Prévoit les valeurs de chaque emplacement d’un cube spatio-temporel grâce à l’ajustement de la courbe.
L’outil ajuste une courbe paramétrique à chaque emplacement du paramètre Input Space Time Cube (Cube spatio-temporel en entrée) et prévoit la série chronologique en extrapolant cette courbe pour les phases futures. Les courbes peuvent être linéaires, paraboliques, en forme de S (Gompertz) ou exponentielles. Vous pouvez utiliser le même type de courbe à chaque emplacement du cube spatio-temporel ou autoriser l’outil à définir le type de courbe qui correspond le mieux à chaque emplacement.
Illustration
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 le plus simple et le plus approprié pour les séries chronologiques qui suivent une tendance prévisible non marquée par une forte saisonnalité. Si vos données suivent une tendance complexe ou affichent des cycles saisonniers marqués, utilisez d’autres outils de prévision.
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 ajustant une courbe aux valeurs de la série chronologique et en extrapolant cette courbe pour les 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 type de courbe choisi pour la précision 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
L’option Auto-Detect (Détection automatique) du paramètre Curve Type (Type de courbe) ajuste les quatre types de courbes à chaque emplacement et identifie celui dont la racine carrée de l’erreur quadratique moyenne de validation est la plus petite. Si aucun intervalle temporel n’est exclu de la validation, la courbe dont la racine carrée de l’erreur quadratique moyenne de prévision est la plus petite est utilisée.
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 contiennent des informations sur la structure du cube spatio-temporel et des statistiques récapitulatives des valeurs RMSE. Si vous cliquez sur une entité à l’aide de l’outil de navigation Explore (Explorer), un diagramme linéaire est affiché dans la fenêtre Pop-up (Fenêtre contextuelle) et indique les valeurs du cube spatio-temporel, la courbe utilisée pour les prévisions et les valeurs prévues 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.
Syntaxe
arcpy.stpm.CurveFitForecast(in_cube, analysis_variable, output_features, {output_cube}, {number_of_time_steps_to_forecast}, {curve_type}, {number_for_validation}, {outlier_option}, {level_of_confidence}, maximum_number_of_outliers)
Paramètre | Explication | Type 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 l’intervalle temporel final et contient des diagrammes contextuels illustrant la série chronologique et les prévisions 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 |
curve_type (Facultatif) | Spécifie le type de courbe utilisé pour prévoir les valeurs du cube spatio-temporel en entrée.
| String |
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.
| String |
level_of_confidence (Facultatif) | Spécifie le niveau de confiance du test des points aberrants de série chronologique
| 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
Le script Python ci-dessous illustre l’utilisation de l’outil CurveFitForecast.
import arcpy
arcpy.env.workspace = "C:/Analysis"
# Forecast four time steps using a linear curve.
arcpy.stpm.CurveFitForecast("Population.nc", "Pop_NONE_ZEROS",
"Analysis.gdb/Forecasts",
"outForecastCube.nc", 4,
"LINEAR", 5)
Le script Python ci-dessous illustre l’utilisation de l’outil CurveFitForecast pour prévoir la population :
# Forecast population levels using curve fitting.
# 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 using auto-detect.
arcpy.stpm.CurveFitForecast("Population.nc", "Pop_NONE_ZEROS",
"Analysis.gdb/Forecasts", "outForecastCube.nc"
3, "AUTO_DETECT", 5, "IDENTIFY", "90%", 4)
# Create a feature class visualizing the forecasts.
# Output can only be viewed in a Scene view.
arcpy.stpm.VisualizeSpaceTimeCube3D("outForecastCube.nc", "Pop_NONE_ZEROS",
"VALUE", "Analysis.gdb/ForecastsFC")
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui
Rubriques connexes
- Présentation de la boîte à outils d'exploration des modèles spatio-temporels
- Présentation du jeu d’outils Prévision de séries chronologiques
- Prévision par lissage exponentiel
- Évaluer les prévisions par emplacement
- Prévision basée sur une forêt
- Comprendre les points aberrants dans les analyses de séries chronologiques
- Fonctionnement de l’outil Prévision par ajustement des courbes
- Rechercher un outil de géotraitement
Vous avez un commentaire à formuler concernant cette rubrique ?