Connexion Contactez-Nous

Comment choisir le bon modèle de série temporelle pour vos prédictions ?

by Guillaume Saupin

#modèles #prédictions #data #tech

Choisir le bon modèle pour prédire une série temporelle est ardu. Voici un tour d'horizon des caractéristiques à prendre en compte dans son choix de solution.

  1. Chaque série temporelle est différente
  2. La continuité des données
  3. Les données indépendantes du temps
  4. Le volume de données
  5. La stationnarité des données
  6. Alors, comment choisir le bon modèle ?

Choisir le bon modèle pour prédire avec précision une série temporelle est ardue. Il existe de nombreuses possibilités, et sans une bonne expertise sur le sujet, on peut vite se retrouver noyé dans l’espace des possibles. Dans cet article, Guillaume Saupin nous détaille les grandes caractéristiques à considérer pour se diriger rapidement vers la bonne solution.

Chaque série temporelle est différente

Malheureusement, lorsque vous êtes confronté à des données du monde réel, vous vous rendez rapidement compte que vous n'êtes jamais deux fois devant le même type de données, surtout lorsqu'il s'agit de séries temporelles. Cela implique qu'il n'existe pas de solution unique pour construire des modèles générant à coup sûr des prédictions précises. Cependant, il existe quelques caractéristiques qui peuvent être facilement identifiées et exploitées pour vous aider à converger plus rapidement vers le bon modèle.

La continuité des données

Lorsque l’on pense aux séries temporelles, on considère généralement qu'il s'agit de données continues et sans interruption. Regardons la vérité en face : c’est rarement aussi simple.

Prenons par exemple les données recueillies sur les éoliennes. Certaines turbines, pour économiser l'énergie, n'enregistrent pas de données lorsqu'il n'y a pas de vent. De même, lorsque ces éoliennes sont situées dans des zones peu peuplées où la connexion à internet n'est pas stable, les pertes de connexion sont fréquentes. Cela entraîne fréquemment des pertes dans les données.

Le traitement des données non continues ne peut pas se faire avec le même type de modèles que pour les données continues. Des méthodes telles que ARIMA, SARIMA, Exponential Smooth pourraient ne pas fonctionner. Les méthodes de Gradient Boosting comme CatBoost sont alors de bonnes alternatives.

Les données indépendantes du temps

Un autre aspect à prendre en compte lorsque l'on traite des séries temporelles est qu'il est généralement nécessaire d’enrichir le modèle avec des données exogènes, indépendantes du temps, pour atteindre un niveau de précision élevé.

La question est alors de savoir comment intégrer ces données indépendantes du temps dans un modèle, justement basé sur le temps. La réponse courte est qu'il n'est pas toujours nécessaire de s'appuyer sur un modèle temporel pour atteindre un bon niveau de précision. Dans ces cas, un prétraitement efficace et astucieux des données, pour extraire les caractéristiques liées au temps, couplé à des algorithmes de régression comme SVR, peut donner d’excellents résultats.

Le volume de données

Un autre point évident à prendre en compte est la quantité de données que vous traitez. Vous ne pourrez pas entraîner des réseaux neuronaux LSTM avec seulement quelques centaines de points de données. Les besoins de ces derniers en volume de données sont de plusieurs ordres de grandeur plus importants.

La stationnarité des données

Enfin, vous devrez considérer la stationnarité de vos données. C'est-à-dire regarder si la moyenne et la déviation de la quantité à prévoir changent dans le temps. Si c'est le cas, il peut être nécessaire de prétraiter vos données, en utilisant généralement une différenciation temporelle pour s'en assurer.

Alors, comment choisir le bon modèle ?

Vous pouvez utiliser le schéma simple ci-dessous. Il est basé sur notre expérience en la matière et facilite le choix du bon modèle en fonction de la nature de vos données :

C’est un bon départ pour obtenir un modèle correct.

Pour aller au-delà, et monter plus haut dans les niveaux de précision, il faudra avoir recours à une approche plus complexe, mixant des modèles différents suivant des regroupements réalisés en amont, ou partir sur des réseaux de neurones complexes, architecturés pour identifier ces regroupements et construire automatiquement les features adéquates.

En combinant toutes ces étapes dans un seul et unique problème d’optimisation global, il devient alors inutile de choisir un modèle. La machine s’en charge pour vous.

---

Article publié le 29 octobre 2020 dans la revue Towards Data Science

Guillaume Saupin ?

Inscrivez-vous à la newsletter