Analyse und Prognose von Zeitreihen

Inhaltsverzeichnis:

Analyse und Prognose von Zeitreihen
Analyse und Prognose von Zeitreihen
Anonim

Seit vielen Jahren haben Menschen Wetterbedingungen, wirtschaftliche und politische Ereignisse und Sportergebnisse vorhergesagt, kürzlich wurde diese umfangreiche Liste mit Kryptowährungen aufgefüllt. Für die Vorhersage vielseitiger Ereignisse gibt es viele Möglichkeiten, Vorhersagen zu entwickeln. Zum Beispiel Intuition, Expertenmeinungen, die Verwendung früherer Ergebnisse zum Vergleich mit traditionellen Statistiken und Zeitreihenprognosen sind nur eine davon, während die modernste und genaueste Art von Prognosen mit einem breiten Anwendungsspektrum ist.

Zeitreihenmethode

Zeitreihenmethode
Zeitreihenmethode

Eine Zeitreihenmethode (TS) ist ein Datensatz, der Informationen über einen bestimmten Zeitraum sammelt. Es gibt spezielle Methoden zum Extrahieren dieses Typs:

  • linear und nichtlinear;
  • parametrisch und nichtparametrisch;
  • eindimensional und mehrdimensional.

Vorhersagezeit-Serie bringt eine einzigartige Reihe von Funktionen mit sich, um die heutigen Herausforderungen zu meistern. Die Modellierung beruht auf Lernen, um die treibende Kraft hinter Datenänderungen zu ermitteln. Der Prozess ergibt sich aus langfristigen Trends, saisonalen Effekten oder unregelmäßigen Schwankungen, die für TS charakteristisch sind und in anderen Analysearten nicht zu sehen sind.

Maschinelles Lernen ist ein Zweig der Informatik, in dem Algorithmen aus Daten kompiliert werden und künstliche neuronale Netze, Deep Learning, Assoziationsregeln, Entscheidungsbäume, Reinforcement Learning und Bayes'sche Netze umfassen. Eine Vielzahl von Algorithmen bietet Optionen zum Lösen von Problemen, und jeder hat seine eigenen Anforderungen und Kompromisse in Bezug auf Dateneingabe, Geschwindigkeit und Genauigkeit der Ergebnisse. Diese werden zusammen mit der Genauigkeit der endgültigen Vorhersagen gewichtet, wenn der Benutzer entscheidet, welcher Algorithmus für die untersuchte Situation am besten geeignet ist.

Time Series Forecasting entlehnt Anleihen aus dem Bereich der Statistik, bietet aber neue Ansätze zur Problemmodellierung. Das Hauptproblem für maschinelles Lernen und Zeitreihen ist das gleiche – neue Ergebnisse auf der Grundlage bereits bekannter Daten vorherzusagen.

Das Ziel des Vorhersagemodells

Zweck des Vorhersagemodells
Zweck des Vorhersagemodells

TS ist eine Reihe von Datenpunkten, die in regelmäßigen Abständen gesammelt werden. Sie werden analysiert, um einen langfristigen Trend zu bestimmen, die Zukunft vorherzusagen oder eine andere Art von Analyse durchzuführen. Es gibt 2 Dinge, die TS von einem normalen Regressionsproblem unterscheiden:

  1. Sie hängen von der Zeit ab. Sodie Grundannahme eines linearen Regressionsmodells, dass die Beobachtungen unabhängig sind, trifft in diesem Fall nicht zu.
  2. Neben einem steigenden oder fallenden Trend weisen die meisten TS eine Art Saisonalität auf, d. h. Änderungen, die für einen bestimmten Zeitraum spezifisch sind.

Das Ziel eines Zeitreihen-Prognosemodells ist es, eine genaue Prognose nach Bedarf zu geben. Die Zeitreihe hat die Zeit (t) als unabhängige Variable und als zielabhängige Variable. In den meisten Fällen ist die Prognose ein bestimmtes Ergebnis, zum Beispiel der Verkaufspreis eines Hauses, das Sportergebnis des Wettbewerbs, die Ergebnisse des Handels an der Börse. Die Vorhersage stellt den Median und den Mittelwert dar und enthält ein Konfidenzintervall, das ein Konfidenzniveau im Bereich von 80–95 % ausdrückt. Wenn sie in regelmäßigen Abständen aufgezeichnet werden, werden die Prozesse als Zeitreihen bezeichnet und auf zwei Arten ausgedrückt:

  • eindimensional mit einem Zeitindex, der eine implizite Ordnung erzeugt;
  • ein Satz mit zwei Dimensionen: Zeit mit einer unabhängigen Variablen und einer weiteren abhängigen Variablen.

Das Erstellen von Features ist eine der wichtigsten und zeitaufwändigsten Aufgaben beim angewandten maschinellen Lernen. Zeitreihenprognosen schaffen jedoch keine Merkmale, zumindest nicht im herkömmlichen Sinne. Dies gilt insbesondere dann, wenn Sie das Ergebnis mehrere Schritte im Voraus vorhersagen möchten und nicht nur den nächsten Wert.

Dies bedeutet nicht, dass Funktionen vollständig deaktiviert sind. Sie sollten aus folgenden Gründen nur mit Vorsicht verwendet werden:

  1. Unklar, was Zukunft wirklich istWerte gelten für diese Funktionen.
  2. Wenn die Objekte vorhersehbar sind und einige Muster aufweisen, können Sie für jedes von ihnen ein Vorhersagemodell erstellen.

Beachten Sie jedoch, dass die Verwendung von Vorhersagewerten als Merkmale Fehler in die Zielvariable propagiert und zu Fehlern oder verzerrten Vorhersagen führt.

Zeitreihenkomponenten

Zeitreihenkomponenten
Zeitreihenkomponenten

Trend liegt vor, wenn die Reihe im Laufe der Zeit zunimmt, abnimmt oder auf einem konstanten Niveau bleibt, also wird sie als Funktion genommen. Saisonalität bezieht sich auf eine Eigenschaft einer Zeitreihe, die periodische Muster aufweist, die sich mit einer konstanten Häufigkeit (m) wiederholen, z. B. bedeutet m=12, dass sich das Muster alle zwölf Monate wiederholt.

Dummy-Variablen ähnlich der Saisonalität können als binäre Funktion hinzugefügt werden. So können Sie beispielsweise Feiertage, Sonderveranst altungen, Marketingaktionen berücksichtigen, unabhängig davon, ob es sich um einen ausländischen Wert handelt oder nicht. Beachten Sie jedoch, dass diese Variablen bestimmte Muster aufweisen müssen. Die Anzahl der Tage kann jedoch auch für zukünftige Zeiträume leicht berechnet werden und beeinflusst Zeitreihenprognosen, insbesondere im Finanzbereich.

Zyklen sind Jahreszeiten, die nicht zu einer festen Rate stattfinden. Zum Beispiel spiegeln die jährlichen Reproduktionsattribute des Kanadischen Luchses saisonale und zyklische Muster wider. Sie wiederholen sich nicht in regelmäßigen Abständen und können auch bei einer Häufigkeit von 1 (m=1) auftreten.

Verzögerte Werte -Als Prädiktoren können nacheilende Werte einer Variablen einbezogen werden. Einige Modelle wie ARIMA, Vector Autoregression (VAR) oder Autoregressive Neural Networks (NNAR) funktionieren auf diese Weise.

Die Komponenten der interessierenden Variablen sind sehr wichtig für die Zeitreihenanalyse und -prognose, um ihr Verh alten und ihre Muster zu verstehen und das geeignete Modell auswählen zu können.

Datensatzattribute

Datensatzattribute
Datensatzattribute

Sie sind es vielleicht gewohnt, Tausende, Millionen und Milliarden von Datenpunkten in maschinelle Lernmodelle einzugeben, aber dies ist für Zeitreihen nicht erforderlich. Tatsächlich kann je nach Häufigkeit und Art der Variablen mit kleinen und mittleren TS gearbeitet werden, was kein Nachteil der Methode ist. Darüber hinaus bietet dieser Ansatz tatsächlich eine Reihe von Vorteilen:

  1. Solche Informationen entsprechen den Fähigkeiten eines Heimcomputers.
  2. Führen Sie in einigen Fällen Zeitreihenanalysen und -prognosen unter Verwendung des gesamten Datensatzes durch, nicht nur einer Stichprobe.
  3. Die TS-Länge ist nützlich, um Diagramme zu erstellen, die analysiert werden können. Dies ist ein sehr wichtiger Punkt, da Programmierer in der Analysephase auf Grafiken angewiesen sind. Das bedeutet nicht, dass sie nicht mit großen Zeitreihen arbeiten, aber zunächst sollten sie in der Lage sein, mit kleineren TS umzugehen.
  4. Jeder Datensatz, der ein zeitbezogenes Feld enthält, kann von der Zeitreihenanalyse und -prognose profitieren. Wenn der Programmierer jedoch über einen größeren Datensatz verfügt, kann die DB (TSDB)könnte besser geeignet sein.

Einige dieser Sätze stammen aus aufgezeichneten Ereignissen mit Zeitstempel, Systemprotokollen und Finanzdaten. Da TSDB nativ mit Zeitreihen arbeitet, ist dies eine großartige Gelegenheit, diese Technik auf große Datensätze anzuwenden.

Maschinelles Lernen

Maschinelles Lernen (ML) kann herkömmliche Zeitreihen-Prognosemethoden übertreffen. Es gibt eine Menge Studien, die Methoden des maschinellen Lernens mit klassischeren statistischen Methoden für TS-Daten vergleichen. Neuronale Netze sind eine der Technologien, die umfassend erforscht wurden und TS-Ansätze anwenden. Verfahren des maschinellen Lernens führen die Rangliste für die Datenerhebung auf Basis von Zeitreihen an. Diese Sets haben sich als effektiv erwiesen und übertreffen reine TS-Sets gegen M3 oder Kaggle.

MO hat seine eigenen spezifischen Probleme. Das Entwickeln von Funktionen oder das Generieren neuer Prädiktoren aus einem Datensatz ist ein wichtiger Schritt dafür und kann einen enormen Einfluss auf die Leistung haben und ein notwendiger Weg sein, um Trend- und Saisonalitätsprobleme von TS-Daten anzugehen. Außerdem haben einige Modelle Probleme damit, wie gut sie zu den Daten passen, und wenn dies nicht der Fall ist, verpassen sie möglicherweise den Haupttrend.

Zeitreihen und maschinelle Lernansätze sollten nicht isoliert voneinander existieren. Sie können miteinander kombiniert werden, um die Vorteile jedes Ansatzes zu nutzen. Prognosemethoden und Zeitreihenanalysen eignen sich gut zur Zerlegung von Daten in Trend- und Saisondaten. Elemente. Diese Analyse kann dann als Eingabe für ein ML-Modell verwendet werden, das Trend- und Saisonalitätsinformationen in seinem Algorithmus enthält und so das Beste aus beiden Welten bietet.

Die Problemstellung verstehen

Als Beispiel betrachten wir TS im Zusammenhang mit der Vorhersage der Fahrgastzahlen auf einem neuen Hochgeschwindigkeitszug. Beispiel: Sie haben Daten aus 2 Jahren (August 2016 – September 2018) und mit diesen Daten müssen Sie die Anzahl der Passagiere für die nächsten 7 Monate vorhersagen, wobei Sie Daten aus 2 Jahren (2016–2018) auf Stundenebene haben Anzahl der reisenden Passagiere, und es ist notwendig, ihre Anzahl in der Zukunft zu schätzen.

Teilmenge des Datensatzes für Prognosen mit Zeitreihen:

  1. Erstellen einer Zug- und Testdatei für die Simulation.
  2. Die ersten 14 Monate (Aug 2016 - Okt 2017) werden als Trainingsdaten verwendet und die nächsten 2 Monate (Nov 2017 - Dez 2017) sind Testdaten.
  3. Datensatz täglich aggregieren.
Aggregation von Datensätzen
Aggregation von Datensätzen

Führen Sie eine Datenvisualisierung durch, um zu sehen, wie sie sich über einen bestimmten Zeitraum ändert.

Datenvisualisierung
Datenvisualisierung

Konstruktionsmethode Naive Approach

Die in diesem Fall für die TS-Vorhersage verwendete Bibliothek ist statsmodels. Es muss installiert werden, bevor einer dieser Ansätze angewendet werden kann. Vielleicht ist statsmodels bereits in der Python-Umgebung installiert, unterstützt aber keine MethodenVorhersage, also müssen Sie es aus dem Repository klonen und von der Quelle installieren.

Sequenzierung
Sequenzierung

Für dieses Beispiel bedeutet dies, dass die Coin-Reisepreise von Anfang an und über den gesamten Zeitraum stabil sind. Diese Methode geht davon aus, dass der nächste erwartete Punkt gleich dem zuletzt beobachteten Punkt ist und wird als naiver Ansatz bezeichnet.

Naive Methode
Naive Methode

Berechnen Sie nun die Standardabweichung, um die Genauigkeit des Modells anhand des Testdatensatzes zu testen. Aus dem RMSE-Wert und der obigen Grafik können wir schließen, dass Naive nicht für Optionen mit hoher Volatilität geeignet ist, aber für stabile Optionen verwendet wird.

Einfacher mittlerer Stil

Um die Methode zu demonstrieren, wird ein Diagramm gezeichnet, wobei angenommen wird, dass die Y-Achse den Preis und die X-Achse die Zeit (Tage) darstellt.

Einfacher mittlerer Stil
Einfacher mittlerer Stil

Daraus können wir schließen, dass der Preis zufällig mit einem kleinen Spielraum steigt und fällt, so dass der Durchschnittswert konstant bleibt. In diesem Fall können Sie den Preis der nächsten Periode vorhersagen, ähnlich dem Durchschnitt aller vergangenen Tage.

Diese Vorhersagemethode mit dem erwarteten Durchschnitt zuvor beobachteter Punkte wird als einfache Durchschnittsmethode bezeichnet.

In diesem Fall werden zuvor bekannte Werte genommen, der Durchschnitt berechnet und als nächster Wert genommen. Das ist natürlich nicht exakt, aber ziemlich nah dran, und es gibt Situationen, in denen diese Methode am besten funktioniert.

Einfaches MediumMethode
Einfaches MediumMethode

Basierend auf den in der Grafik angezeigten Ergebnissen funktioniert diese Methode am besten, wenn der Durchschnittswert über jeden Zeitraum konstant bleibt. Die naive Methode ist zwar besser als der Durchschnitt, aber nicht für alle Datensätze. Es wird empfohlen, jedes Modell Schritt für Schritt auszuprobieren und zu sehen, ob es das Ergebnis verbessert oder nicht.

Modell des gleitenden Durchschnitts

Modell des gleitenden Durchschnitts
Modell des gleitenden Durchschnitts

Anhand dieses Charts können wir schließen, dass die Preise in der Vergangenheit mehrfach deutlich gestiegen sind, nun aber stabil sind. Um die vorherige Mittelungsmethode zu verwenden, müssen Sie den Durchschnitt aller vorherigen Daten nehmen. Die Preise der ersten Periode werden die Prognose der nächsten Periode stark beeinflussen. Nehmen Sie daher als Verbesserung gegenüber dem einfachen Durchschnitt den Durchschnitt der Preise nur für die letzten paar Zeiträume.

Diese Prognosetechnik wird als Moving-Average-Technik bezeichnet, die manchmal auch als "Moving Window" der Größe "n" bezeichnet wird. Unter Verwendung eines einfachen Modells wird der nächste Wert in TS vorhergesagt, um die Genauigkeit der Methode zu überprüfen. Naive übertrifft für diesen Datensatz eindeutig sowohl den Durchschnitt als auch den gleitenden Durchschnitt.

Es gibt eine Variante der Prognose nach der Methode der einfachen exponentiellen Glättung. Bei der Methode des gleitenden Durchschnitts werden die vergangenen "n" Beobachtungen gleich gewichtet. In diesem Fall können Situationen auftreten, in denen jedes der vergangenen 'n' die Prognose auf seine eigene Weise beeinflusst. Diese Variante, die vergangene Beobachtungen unterschiedlich gewichtet, nennt man Methodegewichteter gleitender Durchschnitt.

Extrapolation von Mustern

Eine der wichtigsten Eigenschaften, die zur Berücksichtigung von Zeitreihen-Prognosealgorithmen erforderlich sind, ist die Fähigkeit, Muster außerhalb des Trainingsdatenbereichs zu extrapolieren. Viele ML-Algorithmen verfügen nicht über diese Fähigkeit, da sie in der Regel auf eine Region beschränkt sind, die durch die Trainingsdaten definiert ist. Daher sind sie nicht für TS geeignet, deren Zweck es ist, das Ergebnis in die Zukunft zu projizieren.

Eine weitere wichtige Eigenschaft des TS-Algorithmus ist die Möglichkeit, Konfidenzintervalle zu erh alten. Während dies die Standardeigenschaft für TS-Modelle ist, haben die meisten ML-Modelle diese Fähigkeit nicht, da sie nicht alle auf statistischen Verteilungen basieren.

Glauben Sie nicht, dass nur einfache statistische Methoden verwendet werden, um TS vorherzusagen. So ist es überhaupt nicht. Es gibt viele komplexe Ansätze, die in speziellen Fällen sehr nützlich sein können. Generalized Autoregressive Conditional Heteroscedasticity (GARCH), Bayesian und VAR sind nur einige davon.

Es gibt auch neuronale Netzwerkmodelle, die auf Zeitreihen angewendet werden können, die verzögerte Prädiktoren verwenden und Funktionen wie die Autoregression neuronaler Netzwerke (NNAR) verarbeiten können. Es gibt sogar Zeitreihenmodelle, die dem komplexen Lernen entlehnt sind, insbesondere in der Familie rekurrenter neuronaler Netze wie LSTM- und GRU-Netze.

Schätzungsmetriken und Restdiagnosen

Die häufigsten Vorhersagemetriken sindrms bedeutet, was viele Leute beim Lösen von Regressionsproblemen verwenden:

  • MAPE weil es skalenunabhängig ist und das Verhältnis von Fehler zu tatsächlichen Werten in Prozent darstellt;
  • MASE, das zeigt, wie gut die Vorhersage im Vergleich zur naiven durchschnittlichen Vorhersage abschneidet.

Sobald eine Prognosemethode angepasst wurde, ist es wichtig zu evaluieren, wie gut sie die Modelle erfassen kann. Obwohl die Bewertungsmetriken dabei helfen, festzustellen, wie nahe die Werte an den tatsächlichen Werten liegen, bewerten sie nicht, ob das Modell zum TS passt. Reste sind eine gute Möglichkeit, dies zu bewerten. Da der Programmierer versucht, TS-Muster anzuwenden, kann er erwarten, dass sich Fehler wie „weißes Rauschen“verh alten, da sie etwas darstellen, das vom Modell nicht erfasst werden kann.

"Weißes Rauschen" muss folgende Eigenschaften haben:

  1. Residuen unkorreliert (Acf=0)
  2. Residuen folgen einer Normalverteilung mit Nullmittelwert (unverzerrt) und konstanter Varianz.
  3. Wenn eine der beiden Eigenschaften fehlt, kann das Modell verbessert werden.
  4. Die Nullmittelwert-Eigenschaft kann einfach mit dem T-Test getestet werden.
  5. Die Eigenschaften von Normalität und konstanter Varianz werden mithilfe eines Histogramms von Residuen oder eines geeigneten univariaten Normalitätstests visuell kontrolliert.

ARIMA-Modell

ARIMA - AutoRegressive Integrated Moving-Average-Modell, ist eine der beliebtesten Methoden, die hauptsächlich in der TS-Prognose verwendet werdendurch Datenautokorrelation zur Erstellung hochwertiger Modelle.

Bei der Auswertung von ARIMA-Koeffizienten ist die Hauptannahme, dass die Daten stationär sind. Das bedeutet, dass Trend und Saisonalität die Varianz nicht beeinflussen können. Die Qualität des Modells kann beurteilt werden, indem der zeitliche Verlauf der tatsächlichen Werte mit den vorhergesagten Werten verglichen wird. Liegen beide Kurven nahe beieinander, kann davon ausgegangen werden, dass das Modell zum analysierten Fall passt. Es sollte alle Trends und Saisonalitäten offenlegen, falls vorhanden.

Die Analyse der Residuen sollte dann zeigen, ob das Modell passt: Zufällige Residuen bedeuten, dass es genau ist. Das Anpassen von ARIMA mit den Parametern (0, 1, 1) ergibt dieselben Ergebnisse wie die exponentielle Glättung, und die Verwendung der Parameter (0, 2, 2) ergibt doppelte exponentielle Glättungsergebnisse.

Zeitreihenalgorithmen in SQL Server
Zeitreihenalgorithmen in SQL Server

Du kannst auf die ARIMA-Einstellungen in Excel zugreifen:

  1. Excel starten.
  2. Finde XL MINER in der Symbolleiste.
  3. Wählen Sie im Menüband ARIMA aus dem Dropdown-Menü aus.

Zusammenfassung der Fähigkeiten des ARIMA-Modells:

  1. ARIMA - Autoregressiver integrierter gleitender Durchschnitt.
  2. Prognosemodell, das in der Zeitreihenanalyse verwendet wird.
  3. ARIMA-Parametersyntax: ARIMA (p, d, q) wobei p=Anzahl autoregressiver Terme, d=Anzahl saisonaler Unterschiede und q=Anzahl gleitender Durchschnittsterme.

Algorithmen in SQL Server

Das Durchführen von Kreuzvorhersagen ist einer der wichtigstenMerkmale von Zeitreihen bei der Prognose von Finanzaufgaben. Wenn zwei verwandte Serien verwendet werden, kann das resultierende Modell verwendet werden, um die Ergebnisse einer Serie basierend auf dem Verh alten der anderen vorherzusagen.

SQL Server 2008 verfügt über leistungsstarke neue Zeitreihenfunktionen, die es zu erlernen und zu verwenden gilt. Das Tool verfügt über leicht zugängliche TS-Daten, eine benutzerfreundliche Oberfläche zum Simulieren und Reproduzieren von Algorithmusfunktionen und ein Erklärungsfenster mit einem Link zu serverseitigen DMX-Abfragen, damit Sie verstehen können, was im Inneren vor sich geht.

Marktzeitreihen sind ein breites Gebiet, auf das Deep-Learning-Modelle und -Algorithmen angewendet werden können. Banken, Broker und Fonds experimentieren jetzt mit ihrem Einsatz von Analysen und Prognosen für Indizes, Wechselkurse, Futures, Kryptowährungspreise, Staatsaktien und mehr.

Bei der Zeitreihenprognose findet das neuronale Netzwerk vorhersagbare Muster, indem es die Strukturen und Trends der Märkte untersucht, und gibt Händlern Ratschläge. Diese Netzwerke können auch dabei helfen, Anomalien wie unerwartete Spitzen, Rückgänge, Trendänderungen und Pegelverschiebungen zu erkennen. Viele Modelle künstlicher Intelligenz werden für Finanzprognosen verwendet.

Empfohlen: