Blogeinträge
share

Die Crux mit den Wochenvorhersagen

In der Welt der Prognosen stößt man immer wieder auf die Anforderung, Wochendaten vorherzusagen, etwa im Zusammenhang mit Absatz- oder Nachfragemengen, Material- oder Kapazitätsbedarfen. Dabei stellt man schnell fest, dass sich Wochendaten anders verhalten als andere Granularitäten. Warum ist das eigentlich so? Was unterscheidet Wochendaten von den meisten anderen Granularitäten und wie kann man damit umgehen?

Liebe Besucher des ProgBlogs,

das Schöne an der Vorhersage von Zeitreihen ist, dass wenn man ein paar wenige Voraussetzungen beachtet, es beinahe egal ist mit welcher Art von Zeitreihe man es zu tun hat. Die Daten sind erstmal nichts anderes als Daten und ihre Bedeutung ist nahezu nebensächlich. Achtet man darauf, dass alle Beobachtungen geordnet und mit den gleichen zeitlichen Abständen versehen sind, möglichst nicht fehlen und die gleiche Granularität haben, so kann man damit beginnen die Zeitreihe zu analysieren.

Saisonalität als wichtige Modellkomponente

Ein wichtiges Charakteristikum einer Zeitreihe ist ihre Saisonalität. Nicht jede Zeitreihe besitzt sie, aber falls doch, dann sollte sie im Vorhersagemodell Beachtung finden. Wenn man um ihre Existenz oder die zugehörige Länge nicht weiß, gibt es die Möglichkeit diese automatisch identifizieren oder schätzen lassen. In den meisten Fällen ist jedoch eine Saisonlänge (bspw. die Saisonlänge 12 bei Monatsdaten für ein Jahr) klar ersichtlich und kann entsprechend im Vorhersagemodell eingestellt werden.

Betrachten wir ein Beispiel aus dem Kurzfristprognosebereich. Die Modellierung erfolgt auf Stundenbasis. 24 Stunden ergeben einen Tag und wir können eine Saisonalität der Länge 24 modellieren und/oder der Länge 168, falls das Saisonalitätsmuster sich zusätzlich auf eine Woche erstreckt. Detaillierter zu werden ist i.A. auch kein Problem. Vier Einheiten à 15 Minuten passen exakt in eine Stunde. Eine Tagessaisonalität ist mit genau 96 Zeiteinheiten à 15 Minuten abbildbar, ebenso wie eine Wochensaisonalität der Länge 672. Ausgenommen an zwei Tagen im Jahr, wenn die Uhr von Winter- auf Sommer- bzw. von Sommer- auf Winterzeit umgestellt wird, sind die Zeitabschnitte also immer exakt gleich lang und perfekt ineinander verschachtelbar.

Unwesentlich komplizierter wird es schon mit Monatsdaten. Unsere Monate haben bekanntlich unterschiedlich viele Tage - mal 31, mal 30 und im Falle des Februars sogar nur 28 bzw. 29. Nehmen wir an, wir haben es mit einem produzierenden Gewerbe zu tun, welches Tag und Nacht - egal ob Wochentag, Wochenende oder Feiertag - die Produktionsanlagen laufen lässt, und wir betrachten die Gesamtproduktion. Dann wird im Juni allein aufgrund dessen, dass der Monat einen Tag weniger hat, ca. 3,2 % weniger als im Juli produziert. Im 28-tägigen Februar sind es bereits etwa 9,7 % - üblicherweise ein wesentlicher Unterschied. Dennoch sind diese Gegebenheiten in der Zeitreihenanalyse gut zu handhaben: Eine Saisonkomponente der Länge 12 im Vorhersagemodell erlaubt uns, monatliche Unterschiede abzufangen und in die Prognose einzurechnen. Problem gelöst. Quartalsdaten sind von der gleichen, vergleichsweise harmlosen, Kategorie.

Eigenartige Wochendaten

Alle bisher erwähnten Saisonlängen haben die angenehme Eigenschaft, dass sie ganzzahlig sind, d.h. ein Zyklus beispielsweise nach exakt 24 Stunden wieder von vorne losgeht. Bei Wochendaten allerdings gerät man in ein Problem. Es fängt schon damit an, dass vier Wochen eben nicht einen Monat bilden (außer meist im Februar). Ebenso wenig passen die Wochen in ein Jahr: 365 Tage entsprechen 52 Wochen und einem Tag. Im Kalender wird deshalb das Jahr meist in 52 und hin und wieder in 53 Wochen unterteilt. Man hat es also streng genommen mit einer nicht-ganzzahligen Jahressaison von 52,14 bzw. (in Schaltjahren) 52,29 Wochen zu tun. Wie geht man damit um?

Verschiedene Lösungsvorschläge existieren in Literatur und Praxis und je nach Datenbeschaffenheit und der eigenen Vorstellung über die zu verwendenden Prognosemethoden kommen unterschiedliche in Frage. Wir stellen im Folgenden einige Möglichkeiten vor, die übrigens für Tagesdaten, die ähnliche Charakteristiken wie Wochendaten aufweisen, gleichermaßen Anwendung finden können.

Fall 1: Vorhersagemethoden, die mit nicht-ganzzahligen Saisonlängen umgehen können

An dieser Stelle ist die Auswahl an Methoden, die überhaupt angewendet werden können, zunächst klein. Eine Möglichkeit zur Verarbeitung von nicht-ganzzahligen Saisonlängen ist TBATS, wie in De Livera et al. (2011) beschrieben. Die Methode basiert auf Fouriertransformation und verwendet trigonometrische Funktionen, um komplexe Saisonkomponenten zu modellieren.

Die Idee der Fouriertransformation kann allerdings auch in anderen Vorhersageverfahren genutzt werden. Der australische Statistiker Rob J. Hynmand (2014) beschreibt in seinem Blog neben TBATS eine Methode, bei der die Saisonfiguren mittels einer Fouriertransformation zunächst umgeformt und dann als Regressoren in einem ARIMA-Modell (ohne Saison) verwendet werden. Diese Idee können wir natürlich weiterspinnen und die transformierten Daten überall dort, wo Regressoren verarbeitet werden können, einpflegen. In Frage kommen dann neben ARIMA- auch Regressions- und Machine-Learning-Verfahren sowie exponentielle Glättung mit Kovariaten.

Fall 2: Vorhersagemethoden, die mit Saisonalitäten flexibel umgehen können

Regressions- oder Machine-Learning-Verfahren können voll flexibel für die Modellierung von Saisonalitäten herangezogen werden. Wenn auch nicht ursprünglich für Zeitreihen gedacht, können wir diese bei geschickter, wenn auch etwas aufwändiger, Handhabung für Zeitreihen anwenden. Zur Modellierung einer Saison können dabei beispielsweise Dummy-Variablen dienen, die den jeweiligen Zeitpunkt in der Saison repräsentieren. So kann auch die Kalenderwoche (KW) 53 separat modelliert werden. Grundvoraussetzung dafür, dass das funktioniert, ist allerdings, dass der Datensatz mindestens zwei Mal die KW 53 hat, wobei diese Zeitreihenlänge tatsächlich eher knapp bemessen ist.

Fall 3: Vorhersagemethoden, die nur mit ganzzahligen Saisonlängen umgehen können

Zur Gruppe an Vorhersagemethoden, die eine ganzzahlige Saisonlänge verarbeiten, gehören die klassischen Zeitreihenverfahren, darunter ARIMA oder die exponentielle Glättung. Wenn wir auf diese Verfahren für die Vorhersage nicht verzichten möchten, so bietet sich folgende Lösung an:

Für eine einfache Möglichkeit, eine ganzzahlige Saisonlänge zu erreichen, runden wir die mittlere Wochenanzahl pro Jahr, (365/7 * 3 + 366/7)/4 = 52,18, auf 52. Wir wenden die Saisonlänge 52 auf die Wochendaten entweder an wie sie sind oder verändern die Zeitreihenhistorie, indem wir die 53. KW aus der Datenhistorie löschen. Die Konsequenz daraus ist, dass wir immerhin KW 1 mit KW 1, KW 2 mit KW 2, …, KW 52 mit KW 52 in Beziehung setzen. Wenn auch nicht perfekt, so überschneiden sich die Wochen doch weitgehend. Nur alle paar Jahre machen wir einen größeren Fehler.

Der Anwendungsfall entscheidet

Insgesamt lässt sich also über Wochenvorhersagen sagen: Die vorgeschlagenen Methoden haben alle ihre Vor- und Nachteile, die wir hier teilweise angedeutet haben, die teilweise aber auch deutlich komplexer sind und nicht zuletzt vom individuellen Anwendungsfall abhängen.

Übrigens: Wenn vermutlich keine Jahressaisonalität vorliegt und es für die Prognose nicht ausschlaggebend ist, wo man sich im Jahr befindet, sondern in erster Linie, wie sich die jüngere Vergangenheit verhalten hat, so kann man sich die Mühe sparen und die Wochenzeitreihe nur als einfache Aneinanderreihung von Wochendaten sehen - egal, welche Kalenderwoche jeweils dahintersteckt.

Wenn es uns unsere Zeitzählung bei der Modellierung auch das eine oder andere Mal etwas schwerer macht, so hat sie doch auch ihre positiven Seiten: Wären unsere Wochen nicht so, wie sie sind, würde der eigene Geburtstag nicht wenigstens alle paar Jahre auf ein Wochenende fallen. Und das wäre doch sehr schade.

Haben Sie Fragen oder Anregungen zum heutigen Blogbeitrag? Dann hinterlassen Sie uns einfach einen Kommentar auf Twitter, LinkedIn oder Xing oder schreiben Sie uns eine E-Mail an business.development@prognostica.de.

Infobox:

Fouriertransformation: Im Rahmen einer Fouriertransformation wird ein über die Zeit beobachtetes Signal als Summe trigonometrischer Funktionen (Sinus, Cosinus) beschrieben. Das funktioniert besonders gut im Falle periodischer Phänomene, wie z.B. Schwingungen. Im Zeitreihenkontext sind dies zumeist periodisch wiederkehrende Muster in Form von Saisonalitäten, die mit Hilfe dieser Transformation gefiltert, geglättet und analysiert werden können.

ARIMA: Ein ARIMA-Modell (ARIMA = Autoregressive integrated moving average) ist ein Modell zur Analyse und Prognose von Zeitreihen, in das vergangene Werte der Zeitreihe selbst sowie vergangene Fehlerterme eingehen. Die Analyse kann hierbei statt auf den Rohdaten auch auf (mehrfach) differenzierten Daten stattfinden. Saisonalitäten sowie exogene Einflussgrößen können in ARIMA-Modellen ebenfalls mitmodelliert werden.

Exponentielle Glättung: Das Verfahren der exponentiellen Glättung ist ein bewährtes Verfahren zur Analyse und Prognose von Zeitreihen, welches Niveau-, Trend- und (multiple) Saisonkomponenten in Betracht ziehen kann. Hierbei werden weiter zurückliegende Zeitreihenwerte üblicherweise weniger stark gewichtet als die jüngere Historie. Die Erweiterung “Exponentielle Glättung mit Kovariaten” kann zusätzlich mit exogenen Einflussgrößen umgehen.


Literaturnachweis:
De Livera, Alysha M., Rob J. Hyndman, and Ralph D. Snyder. “Forecasting time series with complex seasonal patterns using exponential smoothing.” Journal of the American Statistical Association 106.496 (2011): 1513-1527.
Rob J. Hyndman “Forecasting weekly data”, unter: https://robjhyndman.com/hyndsight/forecasting-weekly-data/ (abgerufen am 27.06.2019).

Vorheriger Eintrag: Daten unter Strom

Um über weitere Beiträge, bevorstehende Events und neue Produkte der prognostica informiert zu bleiben, melden Sie sich für unseren Newsletter an:

Jetzt für den Newsletter anmelden

Kontakt

prognostica GmbH
Berliner Platz 6
D-97080 Würzburg
P: +49 931 497 386 0

Ihr Partner für Predictive Analytics und Data Science.

Weitere Angaben, u. a. zum Datenschutz, finden Sie in unserem Impressum und unserer Datenschutzerklärung.

Folgen Sie uns!

© 2019 prognostica GmbH