Filtr ARIMA vs Kalman - jak są ze sobą powiązane

10

Kiedy zacząłem czytać o filtrze Kalmana, pomyślałem, że jest to specjalny przypadek modelu ARIMA (a mianowicie ARIMA (0,1,1)). Ale tak naprawdę wydaje się, że sytuacja jest bardziej skomplikowana. Przede wszystkim ARIMA może być używana do przewidywania, a filtr Kalmana służy do filtrowania. Ale czy nie są blisko spokrewnione?

Pytanie: Jaki jest związek między ARIMA a filtrem Kalmana? Czy jeden używa innego? Czy jest jeden szczególny przypadek innego?

hans
źródło
(+1) do odpowiedzi @ ChrisHaug. Aby zobaczyć, jak napisać ARIMA w postaci liniowego modelu przestrzeni stanu Gaussa, zobacz: stats.stackexchange.com/questions/260542/...
Taylor

Odpowiedzi:

19

ARIMA to klasa modeli . Są to procesy stochastyczne, których można użyć do modelowania niektórych danych szeregów czasowych.

Istnieje inna klasa modeli zwana liniowymi modelami Gaussowskiej przestrzeni stanu , czasem tylko modelami przestrzeni stanu . Jest to klasa zdecydowanie większa (każdy model ARIMA jest modelem przestrzeni stanów). Model przestrzeni stanów obejmuje dynamikę nieobserwowanego procesu stochastycznego zwanego stanem oraz rozkład rzeczywistych obserwacji w funkcji stanu.

Filtr Kalmana to algorytm (NIE model), który służy do wykonywania dwóch czynności w kontekście modeli przestrzeni stanów:

  1. Oblicz sekwencję dystrybucji filtrowania. Jest to rozkład obecnego stanu, biorąc pod uwagę wszystkie obserwacje do tej pory, dla każdego okresu. To daje nam oszacowanie nieobserwowalnego stanu w sposób, który nie zależy od przyszłych danych.

  2. Oblicz prawdopodobieństwo danych. To pozwala nam na oszacowanie maksymalnego prawdopodobieństwa i dopasowanie modelu.

Tak więc „ARIMA” i „filtr Kalmana” nie są porównywalne, ponieważ w ogóle nie są tym samym rodzajem obiektu (model vs algorytm). Ponieważ jednak filtr Kalmana można zastosować do dowolnego modelu przestrzeni stanów, w tym ARIMA, w oprogramowaniu typowe jest stosowanie filtra Kalmana do dopasowania modelu ARIMA.

Chris Haug
źródło
2
Jestem pewien, że Twoja odpowiedź jest bardzo poprawna, ale nie mogę powiedzieć, że wiele dla mnie to wyjaśniło. Czy mógłbyś bardziej szczegółowo rozwinąć temat „Jednak ponieważ filtr Kalmana można zastosować do dowolnego modelu przestrzeni stanów, w tym ARIMA, w oprogramowaniu typowe jest stosowanie filtra Kalmana do dopasowania modelu ARIMA”. Przykład zabawki byłby cenny.
hans
aby wyjaśnić odpowiedź: arma to model z parametrami, które można dostosować, aby dopasować dopasowanie. Liniowy filtr Kalmana jako „optymalizator” drugiego rzędu, który minimalizuje błąd resztkowy.
Steven Varga