Fouriertransformation
Allgemeine Definition der Fouriertransformation
Im Allgemeinen beschreibt die Fouriertransformation ein mathematisches Verfahren, welches ein Signal in seine Frequenzkomponenten zerlegt. Ein Signal ist eine Abfolge von Messwerten, in Bezug auf Forecasting also meist eine Zeitreihe, welche zum Beispiel tägliche Verkaufszahlen oder stündliche Stromlasten beschreibt. Die Fouriertransformation bildet nun das Signal vom Zeitbereich in den Frequenzbereich ab. Der Zeitbereich bezeichnet die klassische Darstellung der Daten in einer Zeitreihe, also Datum als x-Achse und Datenwert als y-Achse. Im Frequenzbereich ändern sich die Achsenbezeichnungen nun. Die horizontale Achse beschreibt hier die Frequenz (wie oft pro Zeiteinheit etwas passiert), während die vertikale Achse zeigt, wie stark diese jeweilige Frequenz im Signal vertreten ist (Amplitude). Ein Ausschlag im Frequenzbereich sagt somit aus, wie oft pro betrachteter Zeiteinheit (z. B. pro Jahr) sich ein bestimmtes Muster wiederholt. Das Ziel dieser Transformation ist, die verborgenen Informationen in einem komplexen Signal sichtbar zu machen, wie beispielsweise periodisch wiederkehrende Muster in Form von Saisonalitäten. Man unterscheidet zudem verschiedene Arten der Fouriertransformation. Generell spricht man von der stetigen Fouriertransformation. Diese transformiert stetige Funktionen, welche aus unendlich vielen kleinen Frequenzen bestehen können. Da Zeitreihen aus endlich vielen abzählbaren Werten bestehen, findet hier die diskrete Fouriertransformation Anwendung. Diese transformiert die Zeitreihen nur in die Frequenzen, welche tatsächlich auffindbar sein können (wie weiter unten erklärt).
Fouriertransformation im Forecasting
Daten im Zeitbereich
Zeitreihen spiegeln meist reale Daten wider. Somit enthalten Zeitreihen oft verrauschte Muster, welche nicht offensichtlich erkennbar sind. Um dennoch beliebige Zeitreihen auf wiederkehrende Muster untersuchen zu können, kann die Fouriertransformation als Werkzeug verwendet werden. Durch die Fouriertransformation wird die Zeitreihe von ihrer natürlichen Darstellung in eine Darstellung der Frequenzen der Zeitreihe transformiert.
Anhand dieser Zeitreihe kann man schon eine jährliche Saisonalität vermuten. Ob hier jedoch noch andere Saisonalitäten existieren, kann auf den ersten Blick nur schwer erkannt werden.
Daten im Frequenzbereich
Durch die Anwendung der Fouriertransformation (in diesem Fall der diskreten Fouriertransformation) wird die Zeitreihe vom Zeitbereich in den Frequenzbereich transformiert. Im Frequenzbereich gehen die Informationen der einzelnen Datenwerte verloren, jedoch werden Informationen über die Häufigkeit der auftretenden Daten pro Zeiteinheit gewonnen. Somit kann man durch das Ablesen der Frequenzen mit großer Amplitude aus der fouriertransformierten Zeitreihe die verschiedenen Saisonalitäten erkennen.
In diesem Beispiel stechen nun 2 Frequenzen klar heraus. Diese Frequenzen zeigen an, dass sich bestimmte Muster in der Zeitreihe zum einen 1-mal jährlich wiederholen und zum anderen 52-mal jährlich wiederholen. Die 1-mal jährliche Wiederholung spiegelt die Jahres-Saisonalität wider, während die 52-fache jährliche Wiederholung auf eine Wochen-Saisonalität hindeutet, da ein Jahr aus ca. 52 Wochen besteht.
Saisonalitäten der Daten
Die im Frequenzbereich der Zeitreihe gefundenen Frequenzen lassen sich nun in Saisonalitäten der Daten übersetzen. Die erste Frequenz mit einer hohen Amplitude lässt auf eine hohe sinusförmige Kurve schließen, welche im Verlauf von einem Jahr eine Schwingung vollzieht, bzw. im Verlauf von zwei Jahren zweimal schwingt.
Die zweite Frequenz, deren Amplitude niedriger als die der ersten Frequenz ist, deutet auf eine sinusförmige Kurve mit kleinerer Auslenkung hin, welche jedoch im Verlauf von einem Jahr 52 Schwingungen vollzieht, bzw. im Verlauf von 3 Monaten 13 Schwingungen absolviert, was in der folgenden Grafik durch den herangezoomten Ausschnitt sichtbar wird.
Funktionsweise der Fouriertransformation
Die Fouriertransformation basiert auf der Tatsache, dass jede periodische Funktion aus Sinus- und Kosinuswellen zusammengesetzt werden kann. Bei der Transformation wird das Gesamtsignal (also in diesem Fall die Zeitreihe) mit jeder theoretisch zur Verfügung stehenden Sinus- und Kosinuswelle verglichen. Hierbei wird das Signal mit einer bestimmten Test-Frequenz multipliziert und anschließend darüber der Durchschnitt über die gesamte Zeitdauer mittels Integral gebildet. Dabei kann es für jede Test-Frequenz zwei mögliche Ausgänge geben:
- Die Test-Frequenz ist nicht im Signal enthalten. Hier laufen die Sinus-/Kosinuswellen des Signals asynchron zu den Wellen der Test-Frequenz. Dadurch entstehen in der Multiplikation positive sowie negative Werte. Über die gesamte Zeitdauer löschen sich diese Werte gegenseitig aus (destruktive Interferenz). Somit wird diese Frequenz im Frequenzbereich einen Wert nahe Null haben.
- Die Test-Frequenz ist im Signal enthalten. Die Test-Frequenz-Welle schwingt mit dem gleichen Rhythmus wie eine im Signal versteckte Komponente. Dadurch verstärken sich die Werte bei der Multiplikation systematisch (konstruktive Interferenz). Das Ergebnis der Frequenz im Frequenzbereich ergibt einen deutlich erkennbaren Wert.
Da ein Signal nicht nur daraus besteht, wie schnell es schwingt, sondern auch wie hoch die Welle ist (Amplitude) und wann sie beginnt (Verschiebung auf der Zeitachse), müssen diese Informationen gleichzeitig erfasst werden. Dafür nutzt die Fouriertransformation die komplexen Zahlen, da hier die Test-Frequenzen als Vektor in einem zweidimensionalen Raum dargestellt werden können. Die Länge des Vektors gibt an, wie stark die Frequenz im Signal vertreten ist (Amplitude). Der Winkel des Vektors enthält Informationen über die Verschiebung auf der Zeitachse (Phase). In der Fouriertransformation werden diese Tests nun für alle Frequenzen durchgeführt. Das Endergebnis ist eine kontinuierliche Funktion (Spektrum), bei welcher jede Frequenz (Position auf der x-Achse) eine zugewiesene Stärke (Amplitude: Höhe des Punktes auf der y-Achse) besitzt. Da es sich hier um einen linearen Prozess handelt, der somit auch umkehrbar ist, gehen dabei keine Informationen verloren. Es wird lediglich die Basis transformiert, wodurch dieselbe Information statt in Zeiteinheiten nun in Frequenzeinheiten ausgedrückt wird.
Diskrete Fouriertransformation
Bei Zeitreihen liegen die Daten in diskreter Form vor. Entweder auf Basis von Stunden, Tagen, Wochen oder in einer anderen Zeiteinheit. Hier wendet man nun zur Erkennung der Frequenzen die diskrete Fouriertransformation an. Der Unterschied zur allgemeinen Fouriertransformation liegt darin, dass es eine Unter- und Obergrenze der Frequenzen gibt und die Schritte zwischen diesen Grenzen spezifisch gewählt werden. Die Untergrenze der Test-Frequenzen ist die Frequenz über den gesamten betrachteten Zeitraum (z. B. bei Jahresbetrachtung: 1-mal pro Jahr). Die Obergrenze hingegen ist gegeben durch die schnellstmögliche Schwingung im jeweiligen Anwendungsfall. Sollte man beispielsweise tägliche Daten haben, ist die schnellste hier wahrnehmbare Schwingung eine zweitägige Schwingung (hoch am ersten Tag, tief am zweiten Tag). Die dazwischen liegenden Test-Frequenzen werden dann in ganzzahligen Schritten zwischen der Unter- und Obergrenze gewählt. Dadurch betrachtet man nur die Frequenzen, welche tatsächlich in der gegebenen Zeitreihe vorkommen können.