Używanie filtrów Kalmana do przypisywania brakujących wartości w szeregach czasowych

12

Interesuje mnie, w jaki sposób można zastosować filtry Kalmana do przypisania brakujących wartości w danych szeregów czasowych. Czy ma to również zastosowanie, jeśli brakuje kilku kolejnych punktów czasowych? Nie mogę znaleźć dużo na ten temat. Wszelkie wyjaśnienia, komentarze i linki są mile widziane i doceniane!

GS9
źródło
Ten post może Cię zainteresować . Podaje przykład oparty na reprezentacji w przestrzeni stanu modelu ARIMA w celu przypisania brakujących wartości za pomocą filtra Kalmana.
javlacalle
@javlacalle dzięki, już znałem ten post i jest to świetny przykład konkretnej implementacji. Ale jestem raczej zainteresowany teoretycznym tłem.
GS9

Odpowiedzi:

9

Wstęp: Filtrowanie Kalmana :

Filtry Kalmana działają na modelach w przestrzeni stanów (istnieje kilka sposobów, aby je napisać; jest to łatwy w oparciu o Durbina i Koopmana (2012) ; wszystkie poniższe są oparte na tej książce, która jest doskonała):

yt=Zαt+εtεtN(0,H)αt1=Tαt+ηtηtN(0,Q)α1N(a1,P1)

ytαt

αtαtαtN(at,Pt)αtt

ytαt+1

at+1=Tat+Kt(ytZαt)Pt+1=TPt(TKtZ)+Q

Kt

at+1Pt+1ytyt

at+1=TatPt+1=TPtT+Q

αtαt+1

yt


Dane imputujące :

at,Ptt=1,2,,T

y^t=Zat

Jeśli chodzi o odniesienie, Durbin i Koopman (2012) są doskonałe; rozdział 4.10 omawia brakujące obserwacje.

  • Durbin, J., i Koopman, SJ (2012). Analiza szeregów czasowych metodami przestrzeni stanów (nr 38). Oxford University Press.
cfulton
źródło
Zastosowanie płynniejszego rozwiązania byłoby bardziej sensowne dla przypisywania (ponieważ jeden ma już wszystkie (nie brakujące) dane, dlaczego nie wykorzystać również informacji w przyszłych wartościach)
Juho Kokkala
0

Przykład w poście, na który wskazuje javlacalle w komentarzu , pokazuje kolejne brakujące punkty czasowe. Być może zainteresują Cię również odstępy wokół wartości przypisanych (prognozowanych w próbie), których obliczenia znajdują się w niniejszym dokumencie Space State , w sekcji 2.1.

Kolejny interesujący artykuł to ten .

Wayne
źródło