Wenn Sie ein Einführungsbuch zur Zeitreihenanalyse nachschlagen, finden Sie immer "Grundlagen der Zeitreihenanalyse und Zustandsraummodelle: Theorie und Implementierung, die mit R und Stan gelernt wurden", das sogenannte Hayashimoto. In diesem Buch werden "Zeitreihenanalyse wie AR-Modell und MA-Modell", "Gaußsches lineares Zustandsraummodell" und "Zustandsraummodell durch Bayes'sche Schätzung" sehr detailliert erläutert. ** Die Sprachen R und Stan werden in dem Buch verwendet, was für jemanden wie mich, der nur Python verwenden kann, ein bisschen schmerzhaft ist. ** ** **
Sie können stan jedoch auch mit Python verwenden, um dasselbe wie im Buch beschrieben zu implementieren. ** Daher werde ich die Bayes'sche Schätzung von Hayashimotos Stan einführen, die tatsächlich mit Python implementiert wurde. ** ** **
Die Implementierung erfolgt mit Google Colab. In Google Colab kann es nur durch Importieren mit Pystan verwendet werden. Mit anderen Worten, es sind keine Anfangseinstellungen erforderlich, was sehr praktisch ist. ** Klicken Sie hier für den Code. ** ** ** https://github.com/nakanakana12/hayabusa-bon
Bezüglich des Codes wird auf Github verwiesen, aber hier werde ich nur die Ergebnisse kurz vorstellen.
Das Ergebnis der Schätzung des Zustandsraums des Modells auf lokaler Ebene (zufälliges Gehen mit hinzugefügtem Rauschen) ist wie folgt.
Blau ist der Zustand und Orange ist der beobachtete Wert. Der mit Stan geschätzte 95% -Teil des Staates ist ein blaues Netz. Im Vergleich zu der Grafik im Buch scheint sie korrekt implementiert zu sein.
Im nächsten Kapitel werden wir eine etwas komplexere Gleichung modellieren. Die blaue Linie ist der beobachtete Wert und die orange Linie ist der Wert, wenn kein Prozessfehler vorliegt. Dies ist auch korrekt implementiert.
Ich hoffe es hilft dir sogar ein wenig.
Recommended Posts