Ich habe das ARIMA (5,1,2) -Modell mit der auto.arima()
Funktion in R angepasst und anhand der Reihenfolge können wir sagen, dass dies kein bestes Modell für die Prognose ist. Wenn in der Datenreihe Ausreißer vorhanden sind, wie kann ein Modell an solche Daten angepasst werden?
r
time-series
forecasting
outliers
arima
Anthony
quelle
quelle
Antworten:
Michael Chernick weist Sie in die richtige Richtung. Ich würde auch die Arbeit von Ruey Tsay betrachten, die zu diesem Wissensbestand beiträgt. Sehen Sie hier mehr .
Sie können nicht mit den heutigen automatisierten Computeralgorithmen konkurrieren. Sie suchen nach vielen Möglichkeiten, sich den Zeitreihen zu nähern, die Sie nicht berücksichtigt und oft in keinem Papier oder Buch dokumentiert haben. Wenn man fragt, wie eine ANOVA durchgeführt werden soll, kann beim Vergleich mit verschiedenen Algorithmen eine genaue Antwort erwartet werden. Wenn man die Frage stellt, wie ich Mustererkennung mache, sind viele Antworten möglich, da Heuristiken beteiligt sind. Ihre Frage betrifft die Verwendung von Heuristiken.
Der beste Weg, um ein ARIMA-Modell anzupassen, wenn Ausreißer in den Daten vorhanden sind, besteht darin, mögliche Naturzustände zu bewerten und den Ansatz auszuwählen, der für einen bestimmten Datensatz als optimal erachtet wird. Ein möglicher Naturzustand ist, dass der ARIMA-Prozess die Hauptquelle für erklärte Variationen ist. In diesem Fall würde man den ARIMA-Prozess über die acf / pacf-Funktion "vorläufig identifizieren" und dann die Residuen auf mögliche Ausreißer untersuchen. Ausreißer können Impulse sein, dh einmalige Ereignisse ODER saisonale Impulse, die durch systematische Ausreißer mit einer bestimmten Häufigkeit angezeigt werden (z. B. 12 für monatliche Daten). Eine dritte Art von Ausreißer besteht darin, dass man einen zusammenhängenden Satz von Impulsen hat, die jeweils das gleiche Vorzeichen und die gleiche Größe haben. Dies wird als Schritt- oder Pegelverschiebung bezeichnet. Nachdem die Residuen aus dem vorläufigen ARIMA-Prozess untersucht wurden, kann die empirisch identifizierte deterministische Struktur vorläufig hinzugefügt werden, um ein vorläufiges kombiniertes Modell zu erstellen. Wenn die primäre Variationsquelle nicht eine der vier Arten oder "Ausreißer" ist, ist es besser, sie von Anfang an (zuerst) zu identifizieren und dann die Residuen aus diesem "Regressionsmodell" zur Identifizierung der stochastischen (ARIMA) Struktur zu verwenden . Jetzt werden diese beiden alternativen Strategien etwas komplizierter, wenn ein "Problem" vorliegt, bei dem sich die ARIMA-Parameter im Laufe der Zeit ändern oder sich die Fehlervarianz im Laufe der Zeit aufgrund einer Reihe möglicher Ursachen ändert, möglicherweise aufgrund der Notwendigkeit gewichteter kleinster Quadrate oder einer Leistungstransformation wie Protokolle / Wechselwirkungen usw. Eine weitere Komplikation / Möglichkeit besteht darin, wie und wann der Beitrag von vom Benutzer vorgeschlagenen Prädiktorserien zur Bildung eines nahtlos integrierten Modells zu bilden ist, das Speicher, Kausale und empirisch identifizierte Dummy-Serien enthält. Dieses Problem wird weiter verschärft, wenn Trendreihen am besten mit Indikatorreihen der Form modelliert werden0 , 0 , 0 , 0 , 1 , 2 , 3 , 4 , . . . oder und Kombinationen von Pegelverschiebungsreihen wie . Vielleicht möchten Sie versuchen, solche Prozeduren in R zu schreiben, aber das Leben ist kurz. Ich würde mich freuen, Ihr Problem tatsächlich zu lösen und in diesem Fall zu demonstrieren, wie das Verfahren funktioniert. Bitte senden Sie die Daten oder senden Sie sie an [email protected]1 , 2 , 3 , 4 , 5 , . . . n 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1
Zusätzlicher Kommentar nach Erhalt / Analyse der Daten / Tagesdaten für einen Wechselkurs / 18 = 765 Werte ab dem 1.1.2007
Die Daten hatten eine ACF von:
Bei der Identifizierung eines Arma-Modells der Form und einer Anzahl von Ausreißern zeigt der ACF der Residuen Zufälligkeit an, da die ACF-Werte sehr klein sind. AUTOBOX hat eine Reihe von Ausreißern identifiziert:( 1 , 1 , 0 ) ( 0 , 0 , 0 )
Das endgültige Modell:
schloss die Notwendigkeit einer Varianzstabilisierungs-Augmentation a la TSAY ein, bei der Varianzänderungen in den Residuen identifiziert und einbezogen wurden. Das Problem, das Sie bei Ihrem automatischen Lauf hatten, war, dass das von Ihnen verwendete Verfahren wie ein Buchhalter den Daten glaubt, anstatt sie über die Interventionserkennung (auch bekannt als Ausreißererkennung) herauszufordern. Ich habe eine vollständige Analyse geschrieben hier .
quelle
Es gibt (noch) kein bereites robustes Gegenstück zur Arima-Funktion in R ; sollte man erscheinen, wird es aufgeführt werden hier . Möglicherweise besteht eine Alternative darin, die Beobachtungen, die in Bezug auf eine einfache univariate Ausreißererkennungsregel abweichen, herabzusetzen, aber ich sehe auch keine Bereitschaft, Pakete zum Ausführen einer gewichteten ARMA-Regression zu verwenden. Eine andere mögliche Alternative wäre dann, die Randpunkte zu Winsorisieren:
quelle
Es gibt eine umfangreiche Literatur zu robusten Zeitreihenmodellen. Martin und Yohai gehören zu den Hauptverantwortlichen. Ihre Arbeit reicht bis in die 1980er Jahre zurück. Ich habe selbst an der Erkennung von Ausreißern in Zeitreihen gearbeitet, aber Martin war wirklich einer der vielen Mitwirkenden sowohl bei der Erkennung von Ausreißern als auch bei der Parameterschätzung bei Vorhandensein von Ausreißern oder Residuen mit starkem Schwanz in Zeitreihen.
quelle
Ist der Zweck Ihres Modells, den Verlauf vorherzusagen oder zu analysieren? Wenn dies nicht für Prognosen gedacht ist und Sie wissen, dass dies die Ausreißer sind, fügen Sie einfach die Dummy-Variable hinzu, die in diesen Daten 1 und in anderen Daten 0 ist. Auf diese Weise kümmern sich die Dummy-Koeffizienten um die Ausreißer, und Sie können die anderen Koeffizienten im Modell interpretieren.
Wenn dies für Prognosen gedacht ist, müssen Sie sich zwei Fragen stellen: Werden diese Ausreißer erneut auftreten? Wenn ja, muss ich sie berücksichtigen?
Nehmen wir zum Beispiel an, Ihre Datenreihen haben Ausreißer, als die Brüder Lehman ausfielen. Es ist ein Ereignis, das Sie natürlich nicht vorhersagen können, aber Sie können es nicht einfach ignorieren, da so etwas in Zukunft passieren wird. Wenn Sie den Dummy für Ausreißer einsetzen, entfernen Sie effektiv die Unsicherheit dieses Ereignisses aus der Fehlervarianz. Ihre Prognose wird das Endrisiko unterschätzen - vielleicht keine gute Sache für das Risikomanagement. Wenn Sie jedoch die Basisprognose des Umsatzes erstellen möchten, funktioniert der Dummy, da Sie nicht am Schwanz interessiert sind, sondern an den wahrscheinlichsten Szenarien - Sie müssen also das unvorhersehbare Ereignis für nicht berücksichtigen dieser Zweck.
Daher wirkt sich der Zweck Ihres Modells auf den Umgang mit Ausreißern aus.
quelle