Ich habe eine Frage zur Modellierung kurzer Zeitreihen. Es ist keine Frage, ob man sie modelliert , sondern wie. Welche Methode empfehlen Sie für die Modellierung (sehr) kurzer Zeitreihen (etwa der Länge )? Mit "am besten" meine ich hier die robusteste, die aufgrund der begrenzten Anzahl von Beobachtungen am wenigsten fehleranfällig ist. Bei kurzen Reihen können einzelne Beobachtungen die Prognose beeinflussen. Die Methode sollte daher eine vorsichtige Abschätzung der Fehler und der möglichen Variabilität im Zusammenhang mit der Prognose liefern. Ich interessiere mich generell für univariate Zeitreihen, aber es wäre auch interessant, andere Methoden zu kennen.
35
Mcomp
haben 504 von den 3.003 M3-Reihen (erhältlich im Paket für R) 20 oder weniger Beobachtungen, speziell 55% der jährlichen Reihen. So können Sie die Originalveröffentlichung nachschlagen und sehen, was für jährliche Daten gut funktioniert. Oder stöbern Sie in den ursprünglichen Vorhersagen des M3-Wettbewerbs, die imMcomp
Paket (ListeM3Forecast
) enthalten sind.Antworten:
Es ist sehr üblich , extrem einfache Prognoseverfahren wie „den historischen Durchschnitt prognostizieren“ komplexere Methoden zu entwickeln. Dies gilt umso mehr für kurze Zeitreihen. Ja, im Prinzip können Sie ein ARIMA-Modell oder ein noch komplexeres Modell an 20 oder weniger Beobachtungen anpassen, aber es ist eher wahrscheinlich, dass Sie überanpassen und sehr schlechte Vorhersagen erhalten.
Also: Beginnen Sie mit einem einfachen Benchmark, zB
Bewerten Sie diese anhand von Daten, die außerhalb der Stichprobe liegen. Vergleichen Sie komplexere Modelle mit diesen Benchmarks. Sie werden überrascht sein, wie schwierig es ist, diese einfachen Methoden zu übertreffen. Vergleichen Sie außerdem die Robustheit verschiedener Methoden mit diesen einfachen Methoden, indem Sie beispielsweise nicht nur die durchschnittliche Genauigkeit außerhalb der Stichprobe, sondern auch die Fehlervarianz anhand Ihres bevorzugten Fehlermaßes bewerten .
Ja, wie Rob Hyndman in seinem Beitrag schreibt , auf den Aleksandr verweist, ist das Testen außerhalb der Stichprobe für kurze Serien ein Problem für sich - aber es gibt wirklich keine gute Alternative. ( Verwenden Sie keine In-Sample-Anpassung, da dies kein Hinweis auf die Prognosegenauigkeit ist .) Der AIC hilft Ihnen nicht beim Median und beim Zufallslauf. Sie können jedoch eine zeitreihenübergreifende Validierung verwenden , die sich dem AIC ohnehin annähert.
quelle
Ich nutze eine Frage erneut als Gelegenheit, mehr über Zeitreihen zu erfahren - eines der (vielen) Themen, die mich interessieren. Nach einer kurzen Recherche scheint es für mich mehrere Ansätze zu geben, um kurze Zeitreihen zu modellieren.
Der erste Ansatz besteht darin, standardmäßige / lineare Zeitreihenmodelle (AR, MA, ARMA usw.) zu verwenden, jedoch auf bestimmte Parameter zu achten, wie in diesem Beitrag [1] von Rob Hyndman beschrieben, der keine Einführung in benötigt Zeitreihen und Prognosewelt. Der zweite Ansatz, auf den in den meisten verwandten Literaturstellen Bezug genommen wird, schlägt die Verwendung nichtlinearer Zeitreihenmodelle vor , insbesondere der Schwellenmodelle [2], zu denen das Schwellenautoregressivmodell (TAR) , das selbstverlassende TAR ( SETAR) , autoregressives Schwellendurchschnittsmodell (TARMA) und TARMAX- Modell, das TAR erweitertModell zu exogenen Zeitreihen. Hervorragende Übersichten [4].Informationen zu den nichtlinearen Zeitreihenmodellen, einschließlich Schwellenwertmodellen, finden Sie in diesem Artikel [3] und in diesem Artikel
Schließlich beschreibt eine andere IMHO-bezogene Forschungsarbeit [5] einen interessanten Ansatz, der auf der Volterra-Weiner- Darstellung nichtlinearer Systeme basiert - siehe dies [6] und dies [7]. Es wird argumentiert, dass dieser Ansatz anderen Techniken im Zusammenhang mit kurzen und verrauschten Zeitreihen überlegen ist .
Verweise
quelle
Nein, es gibt keine beste univariate Extrapolationsmethode für eine kurze Zeitreihe mitT≤ 20 Serie. Extrapolationsmethoden benötigen viele, viele Daten.
Die folgenden qualitativen Methoden eignen sich in der Praxis für sehr kurze oder keine Daten:
Eine der besten Methoden, von denen ich weiß, dass sie sehr gut funktionieren, ist die Verwendung von strukturierten Analogien (5. in der obigen Liste), bei denen Sie nach ähnlichen / analogen Produkten in der Kategorie suchen, die Sie prognostizieren möchten, und diese zur Prognose von Kurzzeitprognosen verwenden . In diesem Artikel finden Sie Beispiele und ein SAS-Dokument, in dem erläutert wird, wie dies mit SAS durchgeführt wird. Eine Einschränkung ist, dass analoge Vorhersagen nur funktionieren, wenn Sie gute Analogien haben. Andernfalls können Sie sich auf wertende Vorhersagen verlassen. Hier ist ein weiteres Video der Forecastpro-Software, in dem erläutert wird, wie mit einem Tool wie Forecastpro analoge Prognosen erstellt werden. Die Wahl einer Analogie ist mehr Kunst als Wissenschaft und Sie benötigen Fachwissen, um analoge Produkte / Situationen auszuwählen.
Zwei hervorragende Ressourcen für Kurz- oder Neuproduktprognosen:
Das Folgende ist zum Zwecke der Veranschaulichung. Ich habe gerade das Lesen beendet Signal und Rauschen beendetvon Nate Silver, dass es ein gutes Beispiel für die Immobilienblase und -prognose in den USA und Japan (analog zum US-amerikanischen Markt) gibt. Wenn Sie in der folgenden Tabelle an 10 Datenpunkten anhalten und eine der Extrapolationsmethoden (Exponential Smooting / Ets / Arima ...) verwenden, können Sie sehen, wohin Sie und wo das eigentliche Ende führt. Das Beispiel, das ich vorgestellt habe, ist viel komplexer als die einfache Extrapolation von Trends. Dies ist nur, um die Risiken einer Trendextrapolation unter Verwendung begrenzter Datenpunkte hervorzuheben. Wenn Ihr Produkt ein saisonales Muster aufweist, müssen Sie eine Art analoger Produktsituation für die Prognose verwenden. Ich habe einen Artikel im Journal of Business Research gelesen, der meiner Meinung nach besagt, dass Sie mit analogen Produkten Daten mit größerer Genauigkeit vorhersagen können, wenn Sie 13 Wochen lang Arzneimittel verkaufen.
quelle
Die Annahme, dass die Anzahl der Beobachtungen von entscheidender Bedeutung ist, ergab sich aus einem unredlichen Kommentar von GEP Box zur Mindeststichprobengröße zur Identifizierung eines Modells. Eine differenziertere Antwort ist für mich, dass das Problem / die Qualität der Modellidentifikation nicht allein auf der Stichprobengröße beruht, sondern auf dem Verhältnis von Signal zu Rauschen, das in den Daten enthalten ist. Wenn Sie ein starkes Signal-Rausch-Verhältnis haben, brauchen Sie weniger Beobachtungen. Wenn Sie ein niedriges Signal / Rausch-Verhältnis haben, benötigen Sie mehr Proben zur Identifizierung. Wenn Ihr Datensatz monatlich ist und Sie 20 Werte haben, ist es nicht möglich, ein saisonales Modell empirisch zu identifizieren. Wenn Sie jedoch glauben, dass die Daten saisonal sind, können Sie den Modellierungsprozess durch Angabe eines ar (12) starten und dann eine Modelldiagnose durchführen ( Signifikanztests), um Ihr strukturell mangelhaftes Modell entweder zu reduzieren oder zu erweitern
quelle
Bei sehr begrenzten Daten wäre ich eher geneigt, die Daten mit Bayes'schen Techniken anzupassen.
Stationarität kann im Umgang mit Bayes'schen Zeitreihenmodellen etwas knifflig sein. Eine Möglichkeit besteht darin, Einschränkungen für Parameter zu erzwingen. Oder du konntest nicht. Dies ist in Ordnung, wenn Sie sich nur die Verteilung der Parameter ansehen möchten. Wenn Sie jedoch die Vorhersage für den posterioren Bereich generieren möchten, können viele Prognosen explodieren.
Die Stan-Dokumentation enthält einige Beispiele, in denen die Parameter von Zeitreihenmodellen eingeschränkt werden, um die Stationarität sicherzustellen. Dies ist für die von ihnen verwendeten relativ einfachen Modelle möglich, bei komplizierteren Zeitreihenmodellen ist dies jedoch so gut wie unmöglich. Wenn Sie die Stationarität wirklich erzwingen möchten, können Sie einen Metropolis-Hastings-Algorithmus verwenden und alle unpassenden Koeffizienten herausfiltern. Dies erfordert jedoch die Berechnung einer Vielzahl von Eigenwerten, was die Entwicklung verlangsamt.
quelle
Das Problem, auf das Sie mit Bedacht hingewiesen haben, ist die "Überanpassung", die durch festgelegte listenbasierte Prozeduren verursacht wird. Eine clevere Möglichkeit ist, die Gleichung einfach zu halten, wenn Sie nur eine vernachlässigbare Datenmenge haben. Ich habe nach vielen Monden festgestellt, dass, wenn Sie einfach ein AR (1) -Modell verwenden und die Anpassungsrate (den AR-Koeffizienten) an die Daten belassen, die Dinge einigermaßen gut funktionieren können. Wenn beispielsweise der geschätzte ar-Koeffizient nahe Null ist, bedeutet dies, dass der Gesamtmittelwert angemessen wäre. Wenn der Koeffizient in der Nähe von +1,0 liegt, bedeutet dies, dass der letzte Wert (angepasst für eine Konstante) geeigneter ist. Wenn der Koeffizient in der Nähe von -1,0 liegt, ist das Negativ des letzten Werts (angepasst für eine Konstante) die beste Vorhersage. Wenn der Koeffizient anders ist, bedeutet dies, dass ein gewichteter Durchschnitt der jüngsten Vergangenheit angemessen ist.
Genau damit beginnt AUTOBOX und verwirft dann Anomalien, wenn der geschätzte Parameter bei einer "kleinen Anzahl von Beobachtungen" feinabgestimmt wird.
Dies ist ein Beispiel für die "Kunst der Vorhersage", bei der ein rein datengetriebener Ansatz möglicherweise nicht anwendbar ist.
Es folgt ein automatisches Modell, das für die 12 Datenpunkte ohne Berücksichtigung von Anomalien entwickelt wurde. mit Actual / Fit und Forecast hier und Residual Plot hier
quelle