Skip to main content

Entraîner un modèle de prévision de séries chronologiques (Outils GeoAI)

Résumé

Entraîne un modèle de prévision de séries chronologiques basé sur le Deep Learning avec des données chronologiques issues d’un cube spatio-temporel. Le modèle entraîné peut être utilisé pour prévoir les valeurs de chaque localisation d’un cube spatio-temporel à l’aide de l’outil Prévoir à l’aide d’un modèle de série chronologique.

Les données des séries chronologiques peuvent suivre diverses tendances et avoir plusieurs niveaux de saisonnalité. Les modèles traditionnels de prévision des séries chronologiques basés sur des approches statistiques fonctionnent différemment selon les tendances et modèles de saisonnalité des données. Les modèles de Deep Learning sont parfaitement capables d’apprendre et peuvent fournir des résultats pour différents types de séries chronologiques, à condition que le volume de données d’entraînement soit suffisant.

Cet outil entraîne les modèles de prévision des séries chronologiques à l’aide de divers modèles basés sur le Deep Learning, tels que Fully Connected Network (FCN), Long Short-Term Memory (LSTM), InceptionTime, ResNet et ResCNN. Ces modèles prennent en charge les séries chronologiques multivariées, dans lesquelles le modèle apprend à prévoir les valeurs futures à partir de plusieurs variables dépendantes. Le modèle entraîné est enregistré en tant que fichier de paquetage de Deep Learning (.dlpk) et peut être utilisé pour prévoir les valeurs futures à l’aide de l’outil Prévoir à l’aide d’un modèle de série chronologique.

En savoir plus sur le fonctionnement des modèles de prévision de séries chronologiques

Utilisation

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

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

  • 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.

  • Par rapport aux autres outils de prévision du jeu d’outils Prévision de séries chronologiques, 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 conviennent aux séries chronologiques qui suivent des tendances complexes et sont difficiles à modéliser avec de simples fonctions mathématiques. Toutefois, ils requièrent un volume de données d’entraînement plus important pour apprendre de telles tendances complexes et utilisent davantage de ressources de calcul pour l’entraînement et l’inférence. Un processeur graphique est recommandé pour utiliser cet outil.

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

  • Cet outil permet de modéliser les séries aussi bien univariées que multivariées. Si le cube spatio-temporel possède d’autres variables associées à la variable en cours de prévision, ces variables peuvent être incluses comme variables explicatives pour améliorer la prévision.

  • La prévision de séries chronologiques univariées est estimée exclusivement à l’aide de la méthode en une étape, qui est également la méthode par défaut.

  • La prévision de séries chronologiques multivariées peut être utilisée avec deux approches différentes ; la prévision en une étape et la prévision en plusieurs étapes. Le paramètre Multi-Step (En plusieurs étapes) est activé lorsque plusieurs variables d’entraînement explicatives sont sélectionnées.

  • Dans la méthode à étape unique, le modèle peut être mis à jour avec les nouvelles données à chaque intervalle temporel, ce qui le rend adapté aux applications en temps réel. Toutefois, le modèle étant mis à jour à chaque intervalle temporel, les erreurs de prévision peuvent s’accumuler dans le temps et les prévisions à long termes, devenir moins précises. Si une prévision en plusieurs étapes est utilisée, le modèle prévoit plusieurs points de données futurs au-delà de l’intervalle temporel actuel. Par exemple, si l’objectif est de prévoir les 20 prochains intervalles temporels, le modèle génère immédiatement 20 prévisions consécutives. La prévision en plusieurs étapes permet au modèle de prendre en compte une vue plus vaste des séries chronologiques et de capturer ainsi des tendances et modèles à long terme de manière plus efficace. Le modèle prévoyant plusieurs intervalles temporels d’avance, le potentiel d’accumulation des erreurs est réduit et les prévisions à long terme sont donc plus précises. Toutefois, comme le modèle prévoit immédiatement plusieurs intervalles temporels, il risque de ne pas être aussi agile pour s’adapter aux modifications de données en temps réel. Le choix entre ces deux approches dépend des exigences spécifiques et des caractéristiques de la tâche de prévision des séries chronologiques.

  • Le paramètre Sequence Length (Longueur de séquence) a un impact sur le résultat d’un modèle de prévision de séries chronologiques et peut être défini en tant que nombre d’intervalles temporels passés à utiliser en entrée pour prévoir l’intervalle temporel suivant. Si la longueur de séquence est n, le modèle utilise les n derniers intervalles temporels en entrée pour prévoir le prochain intervalle temporel. La valeur de ce paramètre ne peut pas être supérieure au nombre total d’intervalles temporels en entrée qui restent après l’exclusion des intervalles temporels de validation.

  • Plutôt que de créer un modèle de prévision indépendant à chaque emplacement du cube spatio-temporel, cet outil entraîne un unique modèle de prévision global qui utilise les données d’entraînement de chaque emplacement. Ce modèle global est utilisé pour prévoir les valeurs futures à chaque localisation à l’aide de l’outil Prévoir à l’aide d’un modèle de série chronologique.

  • La valeur du paramètre Output Features (Entités en sortie) est ajoutée à la fenêtre Contents (Contenu) avec un rendu dépendant de l’intervalle temporel prévu final.

  • Des exemples de cas d’utilisation de cet outil incluent l’entraînement d’un modèle pour prévoir la demande de produits de détail en fonction des données de vente historiques, l’entraînement d’un modèle pour prévoir la propagation des maladies ou l’entraînement d’un modèle pour prévoir la génération d’énergie éolienne en fonction des données météorologiques et de production historiques.

  • Il est important de décider du nombre de pas de temps à exclure pour la validation. Plus le nombre d’intervalles temporels exclus est élevé, moins il en reste pour estimer l’EQM de validation. Si trop peu d’intervalles temporels sont exclus, l’estimation de l’EQM de validation utilise une petite quantité de données et peut être trompeuse. Excluez autant d’intervalles temporels que possible tout en en conservant un nombre suffisant pour estimer l’EQM de validation. Conservez au moins autant d’intervalles temporels pour la validation que le nombre d’intervalles temporels que vous avez l’intention de prévoir si le cube spatio-temporel a suffisamment d’intervalles temporels pour le permettre.

  • Pour obtenir des informations sur les exigences relatives à l’exécution de cet outil ainsi que sur les problèmes qui peuvent survenir, reportez-vous à la rubrique Forum aux questions sur le Deep Learning.

Paramètres

Etiqueter Explication Type de données

Données de série chronologique en entrée

Le cube netCDF contient la variable utilisée pour prévoir les intervalles temporels futurs. Ce fichier doit porter l’extension .nc et doit 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

Modèle en sortie

Emplacement du dossier en sortie qui va contenir le modèle entraîné. Le modèle entraîné est enregistré en tant que fichier de paquetage de Deep Learning (.dlpk).

Folder

Variable d'analyse

Variable numérique du jeu de données prévue pour les futurs intervalles temporels.

String

Sequence Length (Longueur de séquence)

Nombre d’intervalles temporels précédents utilisés lors de l’entraînement du modèle. Si les données sont saisonnières (cycles répétitifs), indiquez la durée correspondant à une saison.

  • Si le paramètre Multi-Step (En plusieurs étapes) est désactivé, la valeur de ce paramètre doit être inférieure ou égale au nombre total d’intervalles temporels en entrée restants après l’exclusion de la valeur du paramètre Number of Time Steps to Exclude for Validation (Nombre d’intervalles temporels à exclure pour la validation).

  • Si le paramètre Multi-Step (En plusieurs étapes) est activé, une valeur de 1,5 fois la valeur du paramètre Sequence Length (Longueur de séquence) doit être inférieure ou égale au nombre total d’intervalles temporels après l’exclusion de la valeur du paramètre Number of Time Steps to Exclude for Validation (Nombre d’intervalles temporels à exclure pour la validation).

Long

Variables d’entraînement explicatives

(Facultatif)

Variables indépendantes des données utilisées pour entraîner le modèle. Cochez la case Categorical (Catégorielle) pour les variables qui représentent des classes ou des catégories.

Colonnes de la table de valeurs :

  • VariablesThe name of the variable.

  • CategoricalSpecifies whether a variable represents classes or categories.

Value Table

Max Epochs (Nombre maximal d’époques)

(Facultatif)

Nombre maximal d’époques pour lequel le modèle sera entraîné. La valeur par défaut est 20.

Long

Number Of Time Steps to Exclude for Validation (Nombre d’intervalles temporels à exclure pour la validation)

(Facultatif)

Nombre d’intervalles temporels exclus pour la validation. Par exemple, si la valeur 14 est spécifiée, les 14 dernières lignes du bloc de données sont utilisées en tant que données de validation. La valeur par défaut est de 10 % du nombre total d’intervalles temporels. Idéalement, elle ne doit pas être inférieure à 5 % du nombre total d’intervalles temporels dans le cube temporel en entrée

  • Si le paramètre Multi-Step (En plusieurs étapes) est désactivé, la valeur de ce paramètre doit être inférieure à 25 pour cent du nombre total d’enregistrements dans le cube spatio-temporel en entrée.

  • Si le paramètre Multi-Step (Plusieurs étapes) est activé, la valeur de ce paramètre doit être inférieure ou égale à la moitié de la valeur du paramètre Sequence Length (Longueur de séquence).

Long

Type de modèle

(Facultatif)

Spécifie l’architecture de modèle utilisée pour entraîner le modèle.

  • InceptionTimeArchitecture InceptionTime utilisée pour entraîner le modèle. Il s’agit de l’option par défaut.

  • ResNetArchitecture ResNet utilisée pour entraîner le modèle.

  • ResCNNArchitecture ResCNN utilisée pour entraîner le modèle.

  • FCNArchitecture FCN utilisée pour entraîner le modèle.

  • LSTMArchitecture LSTM utilisée pour entraîner le modèle.

  • TimeSeriesTransformerArchitecture TimeSeriesTransformer utilisée pour entraîner le modèle.

  • TimeMoEArchitecture TimeMoE à utiliser pour entraîner le modèle.

String

Batch Size (Taille de lot)

(Facultatif)

Nombre d’échantillons traités simultanément. La valeur par défaut est de 64.

Selon le processeur graphique de l’ordinateur, ce nombre peut devenir 8, 16, 32, 64, etc.

Long

Arguments du modèle

(Facultatif)

Arguments de modèle supplémentaires utilisés en fonction de chaque modèle. Ces arguments peuvent être utilisés pour ajuster la complexité et la taille du modèle. Pour comprendre l’architecture du modèle, les arguments de modèle pris en charge et leur valeur par défaut, reportez-vous à la rubrique Fonctionnement des modèles de prévision de séries chronologiques.

Colonnes de la table de valeurs :

  • NameThe name of the function argument.

  • ValueThe value of the function argument.

Value Table

Stop training when model no longer improves (Terminer l’entraînement lorsque le modèle ne s’améliore plus)

(Facultatif)

Indique si l’entraînement du modèle s’arrête lorsque la perte de validation n’enregistre pas d’amélioration après cinq époques consécutives.

  • ActivéL’entraînement du modèle s’arrête lorsque la perte de validation n’enregistre pas d’amélioration après cinq époques consécutives. Il s’agit de l’option par défaut.

  • DécochéL’entraînement du modèle continue jusqu’à ce que le nombre maximal d’époques soit atteint.

Boolean

Classe d’entités en sortie

(Facultatif)

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 classe d’entités est créée à l’aide de la prévision du modèle entraîné sur le jeu de données de validation. La sortie affiche la prévision de l’intervalle temporel final et contient des diagrammes contextuels représentant la prévision de séries chronologiques sur le jeu de validation.

Feature Class

Cube en sortie

(Facultatif)

Cube spatio-temporel en sortie (fichier .nc) contenant les valeurs du cube spatio-temporel en entrée, dans lesquelles les valeurs prévues des intervalles temporels de validation correspondants ont été remplacées.

File

Multi-Step (Plusieurs étapes)

(Facultatif)

Indique si une approche en une ou plusieurs étapes est utilisée pour entraîner le modèle de prévision de séries chronologiques multivariées.

  • ActivéL’entraînement du modèle utilise une approche en plusieurs étapes.

  • DécochéL’entraînement du modèle utilise une approche traditionnelle en une étape. Il s’agit de l’option par défaut.

Boolean

Sortie dérivée

Etiqueter Explication Type de données

Fichier de modèle en sortie

Modèle entraîné destiné à être enregistré en tant que fichier de paquetage de Deep Learning (.dlpk) dans le dossier de modèle en sortie.

File

Environnements

Système de coordonnées en sortie, Transformations géographiques, Type de processeur, ID GPU, Générateur de nombres aléatoires

Informations de licence

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