Als ich anfing, über Kalman-Filter zu lesen, dachte ich, dass es sich um einen Sonderfall des ARIMA-Modells handelt (nämlich ARIMA (0,1,1)). Aber tatsächlich scheint die Situation komplizierter zu sein. Zunächst kann ARIMA zur Vorhersage und Kalman-Filter zur Filterung verwendet werden. Aber sind sie nicht eng miteinander verwandt?
Frage: Wie ist die Beziehung zwischen ARIMA und Kalman-Filter? Benutzt einer den anderen? Ist ein Sonderfall ein anderer?
Antworten:
ARIMA ist eine Klasse von Modellen . Dies sind stochastische Prozesse, mit denen Sie einige Zeitreihendaten modellieren können.
Es gibt eine andere Klasse von Modellen, die als lineare Gaußsche Zustandsraummodelle bezeichnet werden , manchmal nur Zustandsraummodelle . Dies ist eine streng größere Klasse (jedes ARIMA-Modell ist ein Zustandsraummodell). Ein Zustandsraummodell beinhaltet eine Dynamik für einen nicht beobachteten stochastischen Prozess, der als Zustand bezeichnet wird , und eine Verteilung für Ihre tatsächlichen Beobachtungen als Funktion des Zustands.
Der Kalman-Filter ist ein Algorithmus (KEIN Modell), der verwendet wird, um zwei Dinge im Kontext von Zustandsraummodellen zu tun:
Berechnen Sie die Reihenfolge der Filterverteilungen. Dies ist die Verteilung des aktuellen Zustands unter Berücksichtigung aller bisherigen Beobachtungen für jeden Zeitraum. Dies gibt uns eine Schätzung des nicht beobachtbaren Zustands in einer Weise, die nicht von zukünftigen Daten abhängt.
Berechnen Sie die Wahrscheinlichkeit der Daten. Dies ermöglicht es uns, eine Maximum-Likelihood-Schätzung durchzuführen und das Modell anzupassen.
"ARIMA" und "Kalman-Filter" sind also nicht vergleichbar, da sie überhaupt nicht die gleiche Art von Objekt sind (Modell gegen Algorithmus). Da der Kalman-Filter jedoch auf jedes Zustandsraummodell angewendet werden kann, einschließlich ARIMA, ist es in der Software typisch, den Kalman-Filter für ein ARIMA-Modell zu verwenden.
quelle