Fonctionnement de l’outil Prévision par lissage exponentiel

L’outil Prévision par lissage exponentiel utilise la méthode de lissage exponentiel Holt-Winters pour décomposer la série chronologique à chaque localisation d’un cube spatio-temporel en composants saisonniers et de tendance afin de prévoir efficacement les intervalles temporels futurs à chaque localisation. La sortie principale est une carte de l’intervalle temporel final prévu, ainsi que des messages d’informations et des diagrammes contextuels. Vous pouvez également créer un cube spatio-temporel contenant les données du cube d’origine en ajoutant les valeurs prévues.

Modèle de lissage exponentiel.

Le modèle de lissage exponentiel permet de prévoir les intervalles temporels futurs.

Applications possibles

Le lissage exponentiel est l’une des méthodes de prévision des séries chronologiques les plus anciennes et les plus étudiées. Cette méthode est la plus efficace lorsque les valeurs des séries chronologiques suivent une tendance graduelle et illustrent le comportement saisonnier dans lequel les valeurs suivent un modèle cyclique répété sur un nombre donné d’intervalles temporels.

Vous pouvez par exemple utiliser cet outil dans les applications suivantes :

  • Un responsable de la santé publique d’une ville peut recourir à cet outil pour prévoir la température d’un centre-ville heure par heure pendant un épisode caniculaire afin de mieux répondre aux maladies qui peuvent se déclarer.
  • Une chaîne de magasins peut utiliser cet outil afin de prévoir la demande pour chaque article chaque jour de la semaine suivante.

Prévision et validation

L’outil génère deux modèles pendant la prévision de chaque série chronologique. Le premier est le modèle de prévision, qui sert à prévoir les valeurs des intervalles temporels futurs. Le second est le modèle de validation, qui sert à valider les valeurs prévues.

Modèle de prévision

Le modèle de prévision est construit en opérant un lissage exponentiel sur les valeurs de la série chronologique à chaque localisation du cube spatio-temporel. Ce modèle est ensuite utilisé pour prévoir les intervalles temporels futurs. L’ajustement du modèle de lissage exponentiel à chaque série chronologique se mesure par la racine carrée de l’erreur quadratique moyenne (EQM) de prévision, qui est égale à la racine carrée de la différence au carré moyenne entre le modèle de lissage exponentiel et les valeurs de la série chronologique.

EQM de prévision, où T est le nombre d’intervalles temporels, ct est la valeur ajustée issue du lissage exponentiel et rt est la valeur brute de la série chronologique à l’instant t.

L’image suivante illustre les valeurs brutes d’une série chronologique et un modèle de lissage exponentiel ajusté à la série chronologique avec les prévisions de deux intervalles temporels futurs. L’EQM de prévision mesure la différence entre les valeurs ajustées du modèle et les valeurs brutes de la série chronologique.

Modèle de prévision de l’outil Prévision par lissage exponentiel

L’EQM de prévision mesure uniquement le degré d’ajustement du modèle de lissage exponentiel avec les valeurs brutes de la série chronologique. Il ne mesure pas la façon dont le modèle de prévision prévoit en réalité les valeurs futures. Il est courant qu’un modèle s’ajuste bien à une série chronologique, mais qu’il ne fournisse pas de prévisions exactes après l’extrapolation. Ce problème est résolu par le modèle de validation.

Modèle de validation

Le modèle de validation permet de déterminer la façon dont le modèle de prévision peut prévoir les valeurs futures de chaque série chronologique. Il est construit en excluant certains des intervalles temporels finaux de chaque série chronologique et en ajustant le modèle de lissage exponentiel aux données non exclues. Ce modèle est ensuite utilisé pour prévoir les valeurs des données qui ont été retenues, et les valeurs prévues sont comparées aux valeurs brutes qui étaient masquées. Par défaut, 10 pour cent des intervalles temporels sont retenus pour validation, mais ce nombre peut évoluer à l’aide du paramètre Numer of Time Steps to Exclude for Validation (Nombre d’intervalles temporels à exclure pour la validation). Le nombre d’intervalles temporels exclus ne peut pas dépasser 25 pour cent du nombre d’intervalles temporels, et aucune validation n’est réalisée si le chiffre 0 est spécifié. L’exactitude des prévisions se mesure en calculant une statistique d’EQM de validation, qui est égale à la racine carrée de la différence au carré moyenne entre les valeurs prévues et brutes des intervalles temporels exclus.

EQM de validation, où T est le nombre d’intervalles temporels, m est le nombre d’intervalles temporels retenus pour la validation, ct est la valeur prévue à partir des T-m premiers intervalles temporels et rt est la valeur brute de la série chronologique retenue pour la validation à l’instant t.

L’image suivante illustre un modèle de lissage exponentiel ajusté à la première moitié d’une série chronologique et utilisé pour prévoir la seconde moitié de la série chronologique. L’EQM de validation mesure la différence entre les valeurs prévues et des valeurs brutes aux intervalles temporels retenus.

Modèle de validation de l’outil Prévision par lissage exponentiel

Le modèle de validation est important car il peut comparer directement les valeurs prévues aux valeurs brutes en vue de mesurer la qualité de prévision du modèle de lissage exponentiel. Même s’il n’est pas réellement utilisé pour prévoir, il permet de justifier le modèle de prévision.

Remarque :

Dans la prévision d’une série chronologique, la validation s’apparente à une technique courante qui s’appelle la validation croisée, même si ce n’est pas tout à fait la même chose. La différence est que la validation de la prévision exclut toujours les intervalles temporels finaux de la validation, tandis que la validation croisée exclut soit un sous-ensemble aléatoire des données, soit chaque valeur séquentiellement.

Interprétation

Vous devez prendre en compte plusieurs facteurs lors de l’interprétation des valeurs d’EQM de prévision et d’EQM de validation.

  • Les valeurs d’EQM ne sont pas directement comparables car elles mesurent différents aspects. L’EQM de prévision mesure l’ajustement du modèle aux valeurs brutes des séries chronologiques et l’EQM de validation mesure la qualité de prévision des valeurs futures du modèle. Comme la racine carrée de l’erreur quadratique moyenne (EQM) de prévision utilise plus de données et qu’elle n’extrapole pas, elle est généralement plus petite que la racine carrée de l’erreur quadratique moyenne (EQM) de validation.
  • Les deux valeurs EQM utilisent les unités des données. Par exemple, si vos données sont des relevés de température en degrés Celsius, une racine carrée de l’erreur quadratique moyenne de validation de 50 est très élevée car cela signifie que les valeurs prévues diffèrent des valeurs réelles d’environ 50 degrés en moyenne. Toutefois, si vos données sont les recettes quotidiennes en dollars américains d’un grand magasin, la même racine carrée de l’erreur quadratique moyenne (EQM) de validation de 50 est très petite car cela signifie que les recettes quotidiennes prévues diffèrent seulement des valeurs réelles de 50 USD par jour en moyenne.

Construction du modèle de lissage exponentiel

Il existe plusieurs types de lissage exponentiel, mais ils séparent tous les séries chronologiques en différents composants. Les valeurs de chaque composant sont estimées en pondérant de façon exponentielle les composants des intervalles temporels précédents de sorte que l’influence de chaque intervalle temporel décroît de façon exponentielle à mesure qu’on progresse dans le temps. Chaque composant est défini de manière récursive via une approche basée sur le modèle espace-état, et chaque composant dépend de tous les autres composants. Tous les paramètres sont estimés sur la base de la probabilité maximale.

Dans cet outil, tous les composants sont additifs : le modèle de prévision est la somme de chaque composant. Si un composant saisonnier est utilisé, l’outil utilise la méthode saisonnière amortie Holt-Winters. Si aucun composant saisonnier n’est utilisé, l’outil utilise la méthode de tendance amortie. Vous trouverez les détails de ces composants et les équations qui définissent les modèles espace-état dans le manuel à la section Références supplémentaires.

Composant de tendance

Le premier composant du modèle de lissage exponentiel est le composant de tendance. Il permet de modéliser les changements systématiques et graduels que subissent les valeurs de la série chronologique. Il est estimé en pondérant de façon exponentielle les valeurs de chaque intervalle temporel de la différence entre sa valeur et la valeur de l’intervalle temporel précédent. Le composant de tendance est utilisé directement en réalisant des prévisions avec la dernière tendance détectée par le modèle. Toutefois, pour empêcher les prévisions de toujours suivre la tendance finale, la tendance est amortie de façon à s’aplatir graduellement avec le temps. L’amortissement aplatit la tendance en multipliant la pente de la valeur de tendance à chaque intervalle temporel par une valeur exponentiellement décroissante. Le niveau d’amortissement est estimé par le modèle. Ainsi, la tendance peut s’aplatir plus rapidement ou plus lentement (ou pas du tout dans les cas les plus extrêmes) pour certains modèles que pour d’autres lorsque vous effectuez des prévisions à plus long terme.

Composant saisonnier

Le second composant du lissage exponentiel est le composant saisonnier, qui permet de modéliser des modèles dans des données qui se répètent sur un certain nombre d’intervalles temporels. La forme et la magnitude du modèle au sein de chaque saison peuvent évoluer au fil du temps, mais la durée d’une saison doit être la même pour l’ensemble de la série chronologique. Par exemple, la température affiche un comportement saisonnier qui correspond aux jours et aux nuits, les températures les plus basses pendant la nuit et les températures les plus élevées pendant le jour. Même si le soleil se lève à différentes heures du jour tout au long de l’année (et donc modifie la forme et la magnitude du modèle de température dans une seule journée), la durée d’une saison est toujours une journée.

Comme pour le composant de tendance, le composant saisonnier d’un intervalle temporel donné est déterminé en pondérant de façon exponentielle les valeurs saisonnières des intervalles temporels précédents. Toutefois, au lieu d’utiliser les intervalles temporels qui se trouvent immédiatement avant, il pondère uniquement les intervalles temporels précédents qui correspondent au même moment dans un cycle saisonnier. Par exemple, si la durée d’une saison est de quatre intervalles temporels, le composant saisonnier pondère de façon exponentielle les valeurs situées 4 intervalles temporels avant, 8 intervalles temporels avant, 12 intervalles temporels avant, et ainsi de suite.

Si vous connaissez le nombre d’intervalles temporels correspondant à une saison dans vos données, vous pouvez le spécifier dans le paramètre Season Length (Durée de la saison). Cette valeur sera utilisée par chaque localisation dans le cube spatio-temporel. Si vous ne connaissez pas la durée d’une saison ou si cette durée est différente selon les localisations, vous pouvez ne pas renseigner la valeur du paramètre. Une durée de saison optimale est alors estimée pour chaque localisation à l’aide de la fonction de densité spectrale. Pour en savoir plus sur cette fonction, reportez-vous à la section Références supplémentaires.

Pour chaque localisation, si la durée optimale de la saison déterminée par l’analyse spectrale est supérieure à 1 et inférieure à un tiers du nombre d’intervalles temporels à la localisation, la durée de la saison est définie sur cette valeur optimale. Sinon, la localisation n’utilise pas de composant saisonnier. La durée de la saison utilisée à la localisation est enregistrée dans le champ Season Length (Durée de la saison) des entités en sortie. Si aucun composant saisonnier n’est utilisé, la valeur de ce champ est égale à 1. Ce processus est synthétisé sur l’image suivante :

Définition du paramètre Durée de la saison.

La durée de la saison peut être spécifiée ou estimée pour chaque localisation.

Composant de niveau

Le composant de niveau du lissage exponentiel représente la valeur de la ligne de base de la série chronologique en tenant compte de la saisonnalité et de la tendance. Lorsque vous ajustez le modèle de prévision au cube spatio-temporel en entrée, le niveau d’un intervalle temporel est calculé en pondérant de façon exponentielle les niveaux précédents tout en intégrant la saisonnalité et la tendance. Lorsque vous réalisez des prévisions pour le futur, le composant de niveau reste égal au composant de niveau de l’intervalle temporel mesuré final, et les prévisions réelles sont en revanche déterminées par les composants de tendance et saisonniers.

Composant résiduel et intervalles de confiance

Le composant final est le composant résiduel (ou erreur résiduelle). Ce composant correspond à la différence entre la valeur réelle et la valeur estimée par tous les autres composants. Il représente l’incertitude et l’erreur restantes dans les données une fois les composants de tendance, de saison et de niveau modélisés. Ce composant est important car il constitue la base des intervalles de confiance.

Pour l’intervalle temporel prévu, l’outil calcule les limites supérieure et inférieure d’un intervalle de confiance de 90 pour cent pour la valeur prévue. La valeur prévue à chaque intervalle temporel représente la meilleure estimation de la valeur future, mais l’intervalle de confiance peut servir à visualiser la plage d’incertitude et de probabilité de la vraie valeur future. Les limites supérieure et inférieure sont enregistrées sous forme de champs et affichées dans des diagrammes contextuels de la fenêtre Output Features (Entités en sortie).

Les intervalles de confiance sont estimés en supposant que les résiduels du modèle sont distribués normalement de façon indépendante et identique. Selon cette hypothèse, vous pouvez déduire les formules des intervalles de confiance. Ces formules et leurs dérivés se trouvent dans le manuel à la section Références supplémentaires.

Visualiser les composants

Vous pouvez visualiser les composants de votre modèle de lissage exponentiel en créant un cube spatio-temporel en sortie. Utilisez ce cube dans l’outil Visualiser le cube spatio-temporel en 3D avec l’option Forecast results (Résultats de prévision) pour le paramètre Display Theme (Thème d’affichage). Un diagramme est créé pour les entités en sortie, et les différents composants du modèle de lissage exponentiel peuvent être activés et désactivés dans la fenêtre Chart Properties (Propriétés du diagramme). Lorsque ces composants sont ajoutés, ils constituent le modèle de prévision et les prévisions des intervalles temporels futurs. L’image suivante présente chaque composant du modèle de lissage exponentiel illustre à la première image de cette rubrique :

Composants du lissage exponentiel.

Le modèle de lissage exponentiel se décompose en plusieurs composants.

Sorties de l'outil

La sortie principale de cet outil est une classe d’entités 2D qui affiche chaque localisation dans le Input Space Time Cube (Cube spatio-temporel en entrée) symbolisé par l’intervalle temporel prévu final avec les prévisions de tous les autres intervalles temporels stockés sous forme de champs. Bien que chaque localisation soit prévue de façon indépendante et que les relations spatiales ne soient pas prises en compte, la carte peut afficher des modèles spatiaux pour les zones présentant des séries chronologiques similaires.

Diagrammes contextuels

Lorsque vous cliquez sur une entité de la carte à l’aide de l’outil de navigation Explore (Explorer), un diagramme s’affiche dans la fenêtre Pop-up (Fenêtre contextuelle). Cette fenêtre indique les valeurs du cube spatio-temporel avec le modèle de lissage exponentiel ajusté, ainsi que les valeurs prévues avec des intervalles de confiance de 90 pour cent pour chaque prévision. Les valeurs du cube spatio-temporel apparaissent en bleu et sont reliées par une ligne bleue. Les valeurs ajustées apparaissent en orange et sont reliées par une ligne pointillée orange. Les valeurs prévues apparaissent en orange et sont reliées par une ligne unie orange qui représente la prévision du modèle. Chaque valeur prévue est entourée de limites de confiance en rouge clair. Vous pouvez survoler n’importe quel point du diagramme pour voir la date et la valeur du point.

Diagramme contextuel de l’outil Prévision par lissage exponentiel

Le diagramme contextuel affiche les valeurs d’origine, les valeurs ajustées, les valeurs prévues et les intervalles de confiance.

Remarque :

Les diagrammes contextuels ne sont pas créés lorsque les entités en sortie sont enregistrées sous forme de shapefile (.shp).

Messages de géotraitement

L’outil fournit un ensemble de messages contenant des informations sur l’exécution de l’outil. Les messages comportent trois sections principales.

La section Input Space Time Cube Details (Détails du cube spatio-temporel en entrée) présente les propriétés du cube spatio-temporel en entrée, ainsi que des informations sur le nombre d’intervalles temporels, le nombre de localisations et le nombre de groupes spatio-temporels. Les propriétés qui s’affichent dans la première section dépendent de la façon dont le cube a été créé à l’origine, et donc les informations varient en fonction du cube.

La section Analysis Details (Détails d’analyse) affiche les propriétés des résultats de prévision, notamment le nombre d’intervalles temporels prévus, le nombre d’intervalles temporels exclus de la validation, le pourcentage de localisations avec saisonnalité et des informations sur les intervalles temporels prévus. Si aucune valeur n’est fournie pour le paramètre Season Length (Durée de la saison), des statistiques de synthèse des durées de saison estimées s’affichent, notamment le minimum, le maximum, la moyenne, la médiane et l’écart type.

La section Summary of Accuracy across Locations (Synthèse de l’exactitude parmi les localisations) présente des statistiques de synthèse de l’EQM de prévision et de l’EQM de validation parmi toutes les localisations. Pour chaque valeur, le minimum, le maximum, la moyenne, la médiane et l’écart type sont indiqués.

Remarque :

Les messages de géotraitement apparaissent au bas de la fenêtre Geoprocessing (Géotraitement) au cours de l’exécution de l’outil. Vous pouvez accéder aux messages en survolant la barre de progression, en cliquant sur le bouton contextuel Ouvrir dans une nouvelle fenêtreou en développant la section des messages dans la fenêtre Géotraitement. Vous pouvez également consulter les messages de l’exécution précédente d’un outil dans l’historique de géotraitement.

Champs des entités en sortie

Outre le paramètre Object ID (ID d’objet), les champs de géométrie et le champ contenant les diagrammes contextuels, la fenêtre Output Features (Entités en sortie) comporte les champs suivants :

  • Location ID (ID de localisation) (LOCATION) : identifiant de la localisation correspondante du cube spatio-temporel.
  • Forecast for (Analysis Variable) in (Time Step) (Prévision de (variable d’analyse) dans (intervalle temporel)) (FCAST_1, FCAST_2, etc.) : valeur prévue de chaque intervalle temporel futur. L’alias de champ présente le nom de la Analysis Variable (Variable d’analyse) et la date de la prévision. Un champ de ce type est créé pour chaque intervalle temporel prévu.
  • High Interval for (Analysis Variable) in (Time Step) (Intervalle élevé de (variable d’analyse) dans (intervalle temporel)) (HIGH_1, HIGH_2, etc.) : limite supérieure d’un intervalle de confiance de 90 pour cent pour la valeur prévue de chaque intervalle temporel futur. L’alias de champ présente le nom de la Analysis Variable (Variable d’analyse) et la date de la prévision. Un champ de ce type est créé pour chaque intervalle temporel prévu.
  • Low Interval for (Analysis Variable) in (Time Step) (Intervalle faible de (variable d’analyse) dans (intervalle temporel)) (LOW_1, LOW_2, etc.) : limite inférieure d’un intervalle de confiance de 90 pour cent pour la valeur prévue de chaque intervalle temporel futur. L’alias de champ présente le nom de la Analysis Variable (Variable d’analyse) et la date de la prévision. Un champ de ce type est créé pour chaque intervalle temporel prévu.
  • Forecast Root Mean Square Error (Racine carrée de l’erreur quadratique moyenne de prévision) (F_RMSE) : EQM de prévision.
  • Validation Root Mean Square Error (Racine carrée de l’erreur quadratique moyenne de validation) (V_RMSE) : EQM de validation. Si aucun intervalle temporel n’est exclu de la validation, ce champ n’est pas créé.
  • Season Length (Durée de la saison) (SEASON) : nombre d’intervalles temporels correspondant à une saison à chaque localisation. La valeur 1 dans ce champ signifie qu’il n’y a pas de saisonnalité.
  • Forecast Method (Méthode de prévision) (METHOD) : champ de texte affichant le modèle utilisé à la localisation. Pour cet outil, la valeur est toujours exponential smoothing (lissage exponentiel). Ce champ vous permet d’identifier les modèles qui sont utilisés dans l’outil Évaluer les prévisions par localisation.

Cube spatio-temporel en sortie

Si un Output Space Time Cube (Cube spatio-temporel en sortie) est spécifié, le cube en sortie contient toutes les valeurs d’origine du cube spatio-temporel en entrée auxquelles sont jointes les valeurs prévues. Ce nouveau cube spatio-temporel peut être affiché à l’aide des outils Visualiser le cube spatio-temporel en 2D ou Visualiser le cube spatio-temporel en 3D et peut être utilisé en entrée pour les outils de la boîte d’outils Exploration des modèles spatio-temporels, comme Analyse de points chauds émergents et Agrégation de séries chronologiques.

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 ensuite la meilleure prévision pour chaque emplacement en utilisant soit l’EQM de prévision soit l’EQM de validation.

Pratiques recommandées et limites

Vous devez prendre en compte plusieurs facteurs lorsque vous choisissez l’outil qui convient et les paramètres à utiliser.

  • 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. Le modèle exponentiel supposant que le comportement saisonnier et la tendance peuvent être séparés, il convient mieux aux données dont les tendances évoluent progressivement et qui suivent des modèles saisonniers cohérents dans le temps. Le composant saisonnier du modèle étant facultatif, cet outil peut être utilisé pour les données qui n’affichent pas la saisonnalité, mais ses performances sont optimales pour le comportement saisonnier.
  • Il est important de bien déterminer le nombre d’intervalles temporels à exclure de la validation. Plus le nombre d’intervalles temporels exclus est important, moins il reste d’intervalles temporels 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 d’intervalles temporels 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.

Ressources supplémentaires

Pour plus d’informations sur les méthodes de prévision avec lissage exponentiel à l’aide d’une approche espace-état, consultez le manuel suivant :

Pour plus d’informations sur la fonction de densité spectrale utilisée pour estimer la durée d’une saison, reportez-vous à la fonction findfrequency dans les références suivantes :

  • Hyndman R, Athanasopoulos G, Bergmeir C, Caceres G, Chhay L, O'Hara-Wild M, Petropoulos F, Razbash S, Wang E, and Yasmeen F (2019). « Forecasting functions for time series and linear models. » R package version 8.7, https://pkg.robjhyndman.com/forecast.
  • Hyndman RJ and Khandakar Y (2008). « Automatic time series forecasting: the forecast package for R. » Journal of Statistical Software, 26(3), pp. 1–22. https://www.jstatsoft.org/article/view/v027i03.

Rubriques connexes