Comment tenir compte de l'impact des vacances dans les prévisions


12

J'ai une série chronologique quotidienne assez prévisible avec une saisonnalité hebdomadaire. Je peux proposer des prédictions qui semblent assez précises (confirmées par validation croisée) quand il n'y a pas de vacances. Cependant, quand il y a des vacances, j'ai les problèmes suivants:

  1. J'obtiens des nombres non nuls pour les vacances dans mes prévisions, même si toutes les vacances historiques sont à 0. Ce n'est vraiment pas le problème principal. Le problème est ...
  2. Étant donné que le traitement qui ne se produit pas les jours fériés "déborde" sur les jours qui suivent les jours fériés, une simple variable muette ne le coupe pas, car ces valeurs aberrantes semblent être innovantes à court terme. S'il n'y avait pas de saisonnalité hebdomadaire, je pourrais peut-être arriver à une estimation pour la distribution des données non traitées sur les vacances au cours des cinq jours environ suivant les vacances (comme suggéré dans Comment créer des variables reflétant l'impact du plomb et du retard des vacances / effets de calendrier dans une analyse chronologique? ). Cependant, la répartition du "débordement" dépend du jour de la semaine où se déroule le jour férié et du fait que le jour férié soit Noël ou Thanksgiving, où les commandes sont passées à un taux inférieur au reste de l'année.

Voici quelques instantanés de ma validation croisée qui montrent le résultat prévu (bleu) par rapport au résultat réel (rouge) pour les vacances qui apparaissent à différents jours de la semaine:

entrez la description de l'image ici

Je crains également que l'impact de Noël dépend du jour de la semaine où il tombe, et je n'ai que six ans environ de données historiques.

Quelqu'un a-t-il des suggestions sur la façon de traiter ces types de valeurs aberrantes innovantes dans le contexte des prévisions? (Malheureusement, je ne peux partager aucune donnée)


1
Cela m'intéresse aussi beaucoup.
EngrStudent

2
Si vous ne pouvez pas publier vos données, alors vous pourriez peut-être publier des données composées similaires à vos données? Dans de nombreux cas, cela facilite des réponses plus pertinentes.
Tim

1
Mettez à l'échelle les données. Le modèle sera le même (juste mis à l'échelle). Vous pouvez même redimensionner les prévisions à votre métrique d'origine.
Tom Reilly

Réponses:


1

Ne pourriez-vous pas créer une variable fictive pour les vacances, une pour les vacances + 1 et une pour les vacances + 2 et les définir uniquement sur 1 tant qu'elles tombent un jour de semaine?

En ce qui concerne Thanksgiving et Noël, l'introduction de variables factices distinctes pour ces vacances semble être votre pire option (puisque vous n'avez que six ans de données). Dans une certaine mesure, cela pourrait cependant être votre seule option - les gens se comportent simplement différemment pendant ces vacances que, par exemple, le 4 juillet (et si vous étudiez, par exemple, les schémas de vente au détail, alors vous devez tout simplement vivre avec ces étant des vacances "spéciales" et voudrait certainement les analyser séparément). Cependant, les idées ci-dessous peuvent vous être utiles:

  • Action de grâces. Le fait qu'il tombe toujours le même jour de la semaine (jeudi) ne devrait-il pas le faciliter? C'est-à-dire qu'un mannequin de Thanksgiving pourrait être réalisable même dans un ensemble de données de six ans car le modèle de jour de semaine sera toujours le même.
  • Noël. Il me semble en regardant votre graphique que le principal problème est que l'effet dure plus longtemps qu'après les autres vacances - si vous définissez "Noël" comme la veille de Noël (24 décembre), ce sera parce que beaucoup de gens resteront également à la maison. Le jour de Noël (25 décembre) (et même le lendemain de Noël (26 décembre) à certains endroits). J'y penserai un peu plus.

J'espère que ça aide.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.