Dlaczego prawdopodobieństwo w filtrze Kalmana jest obliczane przy użyciu wyników filtru zamiast wyników płynniejszych?


11

Używam filtra Kalmana w bardzo standardowy sposób. System jest reprezentowany przez równanie stanu i równanie obserwacyjne .xt+1=faxt+vt+1yt=H.xt+ZAzt+wt

Podręczniki uczą, że po zastosowaniu filtru Kalmana i uzyskaniu „prognoz o jeden krok do przodu” (lub „filtrowanego oszacowania”), powinniśmy użyć ich do obliczenia funkcji prawdopodobieństwa:x^t|t-1

fayt|jat-1,zt(yt|jat-1,zt)=det[2)π(H.P.t|t-1H.+R)]-12)exp{-12)(yt-H.x^t|t-1-ZAzt)(H.P.t|t-1H.+R)-1(yt-H.x^t|t-1-ZAzt)}

Moje pytanie brzmi: dlaczego funkcja prawdopodobieństwa jest obliczana przy użyciu „oszacowania filtrowanego” x^t|t-1 a nie „wygładzonego oszacowania” x^t|T. ? Czy x^t|T. jest lepszym oszacowaniem wektora stanu?


Zredagowałem tytuł, aby uzyskać więcej informacji.
Juho Kokkala,

Odpowiedzi:


5

Aby odpowiedzieć na twoje pytanie: możesz użyć gęstości wygładzania. Ale nie musisz. Odpowiedź Jarle Tufto ma rozkład, którego używasz. Ale są też inni.

Korzystanie z Kalman Recursions

Tutaj oceniasz prawdopodobieństwo jako

fa(y1,,yn)=fa(y1)ja=2)nfa(yja|y1,,yja-1).

Jednak średnie i wariancje nie zawsze w pełni definiują rozkłady prawdopodobieństwa w ogóle. Poniżej znajduje się rozkład, którego używasz, aby przejść z filtrowania dystrybucji do prawdopodobieństw warunkowychf ( y i | y 1 , , y i - 1 )fa(xja-1|y1,,yja-1)fa(yja|y1,,yja-1) :

(1)fa(yja|y1,,yja-1)=fa(yja|xja)fa(xja|xja-1)fa(xja-1|y1,,yja-1)rexjarexja-1.

Tutaj to gęstość przejścia stanu ... część modelu, a to gęstość obserwacji ... część modelu ponownie. W swoim pytaniu piszesz je jako if ( y i | x i ) x t + 1 = F x t + v t + 1 y t = H x t + A z t + w tfa(xja|xja-1)fa(yja|xja)xt+1=faxt+vt+1yt=H.xt+ZAzt+wt . To jest to samo.

Gdy pojawi się rozkład predykcji stanu o jeden krok do przodu, jest to obliczanie fa(xja|xja-1)fa(xja-1|y1,,yja-1)rexja-1 . Po ponownej integracji uzyskujesz (1) całkowicie. Zapisujesz tę gęstość całkowicie w swoim pytaniu, i to jest to samo.

Tutaj używasz tylko rozkładów rozkładów prawdopodobieństwa i założeń dotyczących modelu. To obliczenie prawdopodobieństwa jest dokładnym obliczeniem. Nie ma nic uznaniowego, czego można by użyć, aby zrobić to lepiej lub gorzej.

Korzystanie z algorytmu EM

Według mojej wiedzy nie ma innego sposobu oceny prawdopodobieństwa bezpośrednio w tego rodzaju modelu przestrzeni stanów. Nadal jednak można wykonać oszacowanie maksymalnego prawdopodobieństwa, oceniając inną funkcję: można użyć algorytmu EM. W kroku Oczekiwanie (E-krok) obliczasz f ( y 1 , , y n , x 1 , , x n )

fa(x1,,xn|y1,yn)logfa(y1,,yn,x1,,xn)rex1:n=mismooth[logfa(y1,,yn,x1,,xn)].
Tutajfa(y1,,yn,x1,,xn)jest prawdopodobieństwem „kompletnych danych”, a ty bierzesz się za logarytm tego w odniesieniu do gęstości wygładzania połączenia. Często zdarza się, że ponieważ bierzesz dziennik tego pełnego prawdopodobieństwa danych, warunki dzielą się na sumy, a ze względu na liniowość operatora oczekiwania przyjmujesz oczekiwania w odniesieniu do krańcowych rozkładów wygładzania (tych wspominasz w swoim pytaniu).

Inne rzeczy

Czytałem w miejscach, że EM jest „bardziej stabilnym” sposobem na maksymalizację prawdopodobieństwa, ale tak naprawdę nigdy nie widziałem tego argumentu, ani też nie widziałem w ogóle tego słowa „stabilny”, ale też nie mam pojęcia naprawdę zbadałem to dalej. Żaden z tych algorytmów nie omija lokalnych / globalnych prób maksymalnych. Ja osobiście częściej używam Kalmana po prostu z przyzwyczajenia.

Prawdą jest, że wygładzone szacunki stanu mają zwykle mniejszą wariancję niż filtrowanie, więc myślę, że masz rację, jeśli chodzi o to, ale tak naprawdę nie używasz stanów. Prawdopodobieństwo, które próbujesz zmaksymalizować, nie jest funkcją stanów.


Jak różne są KF i EM? W końcu robią to samo w nieco podobny sposób.
Mitch,

1
@Mitch To chyba coś, co zasługuje na coś więcej niż komentarz. Będzie to zależeć od tego, jakiego optymalizatora ogólnego zastosowania używasz z KF i jakiego typu EM używasz. Nie będę zbyt pewny, nie zaglądając w to.
Taylor,

7

Ogólnie, według reguły produktu, dokładne prawdopodobieństwo można zapisać Z założenia modelu przestrzeni stanów wynika, że ​​wektor oczekiwań i macierz wariancji każdego uwarunkowane wcześniejszymi obserwacjami można wyrazić jako i

fa(y1,,yn)=fa(y1)ja=2)nfa(yja|y1,,yja-1).
yja
mi(yja|y1,,yja-1)=mi(H.xt+ZAzt+wt|y1,,yja-1)=H.mi(xt|y1,,yja-1)+ZAzt+miwt=H.x^t|t-1+ZAzt,
V.zar(yja|y1,,yja-1)=V.zar(H.xt+ZAzt+wt|y1,,yja-1)=H.V.zar(xt|y1,,yja-1)H.+V.zarwt=H.P.t|t-1H.+R.
Daje to dokładne prawdopodobieństwo bez obliczania wygładzonych szacunków.

Chociaż oczywiście możesz użyć wygładzonych oszacowań, które faktycznie są lepszymi oszacowaniami nieznanych stanów, nie dałoby to funkcji prawdopodobieństwa. W rezultacie obserwowanej wartości do oszacowania własnej wartości oczekiwanej, więc wydaje się prawdopodobne, że doprowadziłoby to do pewnego błędu w uzyskanych szacunkach. yja


0

Myślę, że lepszą odpowiedzią na to, „dlaczego” rozkład wygładzania nie jest używany (zazwyczaj), jest wydajność. Zasadniczo proste jest obliczenie (wygładzenie) marginalnego prawdopodobieństwa w sensie pominięcia w następujący sposób. Usuń obserwację j, uruchom Kalmana bardziej płynnie dla pozostałych danych. Następnie oceń prawdopodobieństwo niewidzialnego y (j). Powtórz to dla wszystkich j. Zsumuj prawdopodobieństwa dziennika. Szybsze wersje tego działają z (losowymi) blokami przetrzymywanych próbek (jak k-fold CV). Zauważ, że ten schemat wymaga bardziej ogólnej implementacji filtru / wygładzacza Kalmana, który może dowolnie pomijać aktualizacje pomiarowe w razie potrzeby. Przełożenie wstecz / wygładzające nie ma dostępu do pomiarów (algorytm RTS i tak) i pozostaje takie samo.

Jeśli szeregi czasowe są „wystarczająco długie”, prawdopodobnie nie ma pożytecznej korzyści z tego, ponieważ prawdopodobieństwo filtrowania „wypala” jego początkowe przemijanie. Ale jeśli zestaw danych jest krótki, bardziej kosztowne może być prawdopodobieństwo wygładzenia. Wygładzacz o ustalonym opóźnieniu może być rozwiązaniem pośrednim.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.