Bonnes pratiques lors de la prévision de séries chronologiques

10

Je travaille depuis des mois sur les prévisions de charge à court terme et l'utilisation des données climatiques / météorologiques pour améliorer la précision. J'ai une formation en informatique et pour cette raison j'essaie de ne pas faire de grosses erreurs et des comparaisons injustes en travaillant avec des outils statistiques comme les modèles ARIMA. J'aimerais connaître votre opinion sur deux ou trois choses:

  1. J'utilise les modèles (S) ARIMA et (S) ARIMAX pour étudier l'effet des données météorologiques sur les prévisions, pensez-vous qu'il serait nécessaire d'utiliser également des méthodes de lissage exponentiel?

  2. Ayant une série chronologique de 300 échantillons quotidiens, je commence à partir des deux premières semaines et j'effectue une prévision à 5 jours à l'avance en utilisant des modèles construits avec la fonction auto.arima R (package de prévision). Ensuite, j'ajoute un autre échantillon à mon jeu de données et je calibre à nouveau les modèles et j'effectue encore 5 jours de prévisions et ainsi de suite jusqu'à la fin des données disponibles. Pensez-vous que cette façon de fonctionner est correcte?

Merci pour vos suggestions, bien que la cible de notre travail soit un article de revue d'ingénierie, j'aimerais faire un travail aussi rigoureux que possible d'un point de vue statistique.

Matteo De Felice
la source
1
Cette question semble être étroitement liée: stats.stackexchange.com/questions/16915/…
whuber
1
Voici une ancienne réponse stats.stackexchange.com/questions/6513/…
bill_080

Réponses:

9
  1. Je pense qu'il vaudrait également la peine d'explorer des modèles de lissage exponentiel. Les modèles de lissage exponentiel sont une classe de modèles fondamentalement différente des modèles ARIMA et peuvent donner des résultats différents sur vos données.

  2. Cela ressemble à une approche valide et est très similaire à la méthode de validation croisée des séries chronologiques proposée par Rob Hyndman .

Je voudrais agréger l'erreur de validation croisée de chaque prévision (lissage exponentiel, ARIMA, ARMAX) puis utiliser l'erreur globale pour comparer les 3 méthodes.

Vous pouvez également envisager une "recherche dans la grille" pour les paramètres ARIMA, plutôt que d'utiliser auto.arima. Dans une recherche de grille, vous exploreriez chaque paramètre possible pour un modèle arima, puis sélectionnez les «meilleurs» en utilisant la précision des prévisions.

Zach
la source
Merci pour la réponse, j'utilise auto.arima avec la recherche STEPWISE désactivée et je pense que de cette manière, il explorera tous les paramètres entre la plage min-max (je n'ai pas encore lu le document Hyndman & Kandahar 2008)
Matteo De Felice
@Matteo De Felice: le problème, c'est l'optimisation de ces paramètres sur la base de l'AIC. Je suggérais qu'il pourrait être utile d'optimiser ces paramètres par leurs performances hors échantillon, que vous pourriez évaluer par validation croisée. De plus, si vous souhaitez comparer d'autres modèles (tels que ETS), vous aurez besoin d'une mesure de performance hors échantillon, car vous ne pouvez pas comparer l'AIC entre différents types de modèles (tels que auto.arima et ets).
Zach
à ce moment j'ai effectué une recherche de grille (en utilisant auto.arima avec stepwise = FALSE) puis j'ai essayé les modèles les plus fréquents afin d'évaluer leurs performances.
Matteo De Felice
@Matteo De Felice: Si vous rencontrez des difficultés pour implémenter la validation croisée des séries chronologiques, cet article de blog pourrait vous aider: robjhyndman.com/researchtips/tscvexample
Zach
Il convient de noter que les modèles ARIMA et ETS ne sont pas fondamentalement différents. En fait, les modèles de lissage exponentiel linéaire sont des cas particuliers des modèles ARIMA. Voir ici: otexts.org/fpp/8/10 .
Verrue