Interpretation der Zeitreihenzerlegung mit TBATS aus dem R-Prognosepaket

10

Ich möchte die folgenden Zeitreihendaten in saisonale, Trend- und Restkomponenten zerlegen. Die Daten sind ein stündliches Kühlenergieprofil eines Geschäftsgebäudes:

TotalCoolingForDecompose.ts <- ts(TotalCoolingForDecompose, start=c(2012,3,18), freq=8765.81)
plot(TotalCoolingForDecompose.ts)

Kühlenergie-Zeitreihen

Es gibt offensichtliche tägliche und wöchentliche saisonale Effekte, basierend auf den Ratschlägen von: Wie zerlegt man eine Zeitreihe mit mehreren saisonalen Komponenten? Ich habe die tbatsFunktion aus dem forecastPaket verwendet:

TotalCooling.tbats <- tbats(TotalCoolingForDecompose.ts, seasonal.periods=c(24,168), use.trend=TRUE, use.parallel=TRUE)
plot(TotalCooling.tbats)

Was in ... endet:

Geben Sie hier die Bildbeschreibung ein

Was beschreiben die levelund slopeKomponenten dieses Modells? Wie kann ich die trendund remainderKomponenten erhalten, die dem in diesem Paket genannten Dokument ähneln ( De Livera, Hyndman und Snyder (JASA, 2011) )?

cmiller8
quelle
Ich bin schon einmal auf dasselbe Problem gestoßen. Und ich denke hier könnte Trend l + b bedeuten. (In Papierform gibt es ein Modell) Oder Sie können robjhyndman.com/hyndsight/forecasting-weekly-data
user49782
1
Ich habe das gleiche Problem. Ich könnte mich irren, aber um die Residuen zu finden, können Sie Resid (TotalCooling.tbats) verwenden. Die Kurven werden auch durch Plot (Prognose (TotalCooling.tbats, h = 1) $ Residuen) bestätigt. Der Trend ist "Steigung".
Marcodena

Antworten:

5

In den Benutzerkommentaren auf dieser Seite fragt jemand nach der Interpretation des Niveaus und der Steigung sowie nach dem Erhalten des Trends und der Residuen, die die decompose()Funktion bereitstellt. Hyndman bemerkt, dass es keine direkte Übersetzung gibt decompose()und tbats()unterschiedliche Modelle verwendet. Wenn Ihr TBATS-Modell jedoch keine Box-Cox-Transformation aufweist, entspricht das TBATS-Niveau in etwa dem decompose()Trend. Wenn das Modell andererseits die Box-Cox-Transformation anwendet, müssen Sie die Transformation rückgängig machen, bevor Sie die Ebene als (ungefähr) Trend interpretieren. Zumindest interpretiere ich seine Antwort so.

Residuen und Steigungen sind nicht gleich.

Sie können sich vorstellen, dass eine grundlegende Zerlegung eine Trendkomponente, eine saisonale Komponente und eine Restkomponente aufweist.

Sie können den Trend weiter in eine Ebene und eine Steigung aufteilen. Das Niveau ist im Wesentlichen eine Basislinie für den Trend, und die Steigung ist die Änderung pro Zeiteinheit.

Der Grund für die Aufteilung des Trends in ein Niveau und eine Steigung ist, dass einige Modelle ein gedämpftes Wachstum unterstützen. Vielleicht beobachten Sie das aktuelle Wachstum, aber Sie erwarten, dass das Wachstum im Laufe der Zeit allmählich abnimmt, und Sie möchten, dass Ihre Prognosen diese Erwartung widerspiegeln. Das Modell unterstützt dies, indem es Ihnen ermöglicht, das Wachstum zu dämpfen, indem Sie einen Dämpfungsfaktor auf die Steigung anwenden, der gegen Null konvergiert, was bedeutet, dass der Trend gegen seine Niveaukomponente konvergiert.

Es gibt keine einfache Antwort auf die Frage, wie sich Pegel und Steigung verbinden, um den Trend zu erzielen. Dies hängt von der Art des verwendeten Modells ab. Im Allgemeinen kombinieren additive Trendmodelle sie additiv und multiplikative Trendmodelle kombinieren sie multiplikativ. Die gedämpften Modellvarianten kombinieren das Niveau mit einer gedämpften Neigung. Hyndmans Buch " Forecasting with Exponential Smoothing " (ich hoffe, es ist in Ordnung, den Amazon-Link aufzunehmen - ich habe keinerlei Verbindung zum Autor) enthält die genauen Gleichungen pro Modell in Tabelle 2.1.


quelle