1. Livres & vidéos
  2. Data Scientist et langage R
  3. Prédire une série temporelle
Extrait - Data Scientist et langage R IA, Machine Learning et Statistiques, Forecast, Tenseur, Gradient, Pytorch, Keras, CNN, LLM, GPT, RAG… (4e édition)
Extraits du livre
Data Scientist et langage R IA, Machine Learning et Statistiques, Forecast, Tenseur, Gradient, Pytorch, Keras, CNN, LLM, GPT, RAG… (4e édition) Revenir à la page d'achat du livre

Prédire une série temporelle

Introduction

Quand des observations évoluent dans le temps, nous les modélisons au travers d’une série temporelle et vérifions si sa séquentialité influence les valeurs des observations.

Les applications de la prévision appliquée aux séries temporelles (forecasting) sont très variées :

  • évolution des variables économiques dans le temps ;

  • évolution des marchés financiers (bourse, Forex...) ;

  • modélisation des processus industriels ;

  • modélisation des processus physiques ;

  • étude de données physiologiques (ECG...) ;

  • évolution des comportements (marketing, politique...).

Indirectement, certains des mécanismes qui permettent d’établir des prédictions sur les séries temporelles se sont avérés être fondamentaux pour la mise au point des techniques d’IA génératives (les LLM comme ChatGPT, Llama...). En effet, le temps s’organise en séquences et les phrases composées de mots, ou même les images, sont des séquences d’information dont le sens dépend des éléments qui les entoure. La notion de convolution, qui d’une certaine façon généralise la notion de filtre, en est un exemple frappant : les CNN (Convolutional Neural Network, ou ConvNET) sont les types de réseaux neuronaux qui ont révolutionné le traitement des images. Nous définirons donc la notion de convolution dès ce chapitre, notion qui sera évoquée à nouveau dans différentes sections de l’ouvrage.

1. Introduction aux séries temporelles

Les séries temporelles ont pour variable sous-jacente une variable temporelle. On peut les considérer comme l’extension d’une liste d’observations indexées par une variable temporelle. À la limite, si les intervalles de temps tendent vers 0, la variable temps qui était discrète peut être définie comme continue. Dans ce cas, on considère la série discrète correspondante comme une série d’observations possibles de la série continue, qui s’avère souvent représenter un système physique (une oscillation, un signal électronique...

Gestion des dates informatiques

Les séries temporelles sont souvent basées sur des dates. Il faut donc comprendre comment les dates sont gérées. Quand vous travaillez sur des séries temporelles multivariées, c’est-à-dire sur plusieurs séries temporelles simples en même temps, une mauvaise synchronisation entre des dates de débuts des séries peut être catastrophique.

L’UTC (Coordinated Universal Time) est le principal standard de temps utilisé dans nos systèmes modernes. Il est basé sur le Temps Atomique International (TAI). C’est le successeur du GMT (Greenwich Mean Time). L’UTC sert de base de référence pour définir les fuseaux horaires à travers le monde. Il ne tient pas compte de l’heure d’été/d’hiver, ce qui fait que, par exemple, l’heure de Paris sera UTC+1 en hiver et UTC+2 en été.

POSIX (Portable Operating System Interface) est une famille de normes spécifiées par l’IEEE pour assurer la portabilité des logiciels entre différents systèmes d’exploitation. Elle est issue du monde Unix, mais s’est généralisée. La norme POSIX utilise UTC comme référence pour définir les fuseaux horaires et les décalages horaires.

L’heure POSIX est une mesure du temps...

Co-intégration de données économiques

Lorsque deux séries temporelles sont cointégrées, elles ont tendance à évoluer ensemble sur le long terme, même si elles peuvent diverger à court terme. Par exemple, l’une peut croître, l’autre décroître, mais de façon "conjointement habituelle". Les séries cointégrées ont en fait une relation d’équilibre à long terme qui les lie. La cointégration est particulièrement utile pour l’analyse des séries temporelles non stationnaires, c’est-à-dire des séries temporelles dont la moyenne et/ou la variance changent au fil du temps. Lorsque deux séries temporelles non stationnaires s’avèrent cointégrées, leur combinaison linéaire est stationnaire, ce qui signifie que leur écart par rapport à leur relation d’équilibre à long terme est stationnaire.

VAR (Vector AutoRegression) est un modèle économétrique utilisé pour analyser et prédire les dynamiques et les interactions entre plusieurs séries temporelles que l’on imagine plus ou moins cointégrées. Il a été introduit par Christopher Sims en 1980.

Le modèle VAR est basé sur l’idée que chaque variable dans un système de séries temporelles peut être expliquée par ses propres valeurs passées ainsi que par les valeurs passées des autres variables du système. En d’autres termes, le modèle VAR capture les relations de cause à effet entre les variables en tenant compte de leur dépendance temporelle.

Un modèle VAR peut être représenté par un système d’équations de régression linéaire, où chaque variable est régressée sur ses propres retards et les retards des autres variables du système.

Ce modèle permet de capturer les relations de causalité entre les variables sans imposer de structure a priori sur le système. Il peut être utilisé pour générer des prévisions à moyen terme, en tenant compte des interactions entre les variables.

Le code suivant va vous plonger...