A Kalman Filter for Robust Outlier Detection Jo-Anne Ting, - - PowerPoint PPT Presentation
A Kalman Filter for Robust Outlier Detection Jo-Anne Ting, - - PowerPoint PPT Presentation
A Kalman Filter for Robust Outlier Detection Jo-Anne Ting, Evangelos Theodorou, Stefan Schaal Computational Learning & Motor Control Lab University of Southern California IROS 2007 October 31, 2007 Outline Motivation Quick review
IROS 2007 2
- Motivation
- Quick review of the Kalman filter
- Robust Kalman filtering with Bayesian weights
- Experimental results
- Conclusions
Outline
IROS 2007 3
- Consider real-time applications where storing data samples may not be a
viable option due to high frequency of sensory data
- In systems where high quality sensory data is needed, reliable detection
- f outliers is essential for optimal performance (e.g. legged locomotion):
- The Kalman filter (Kalman, ’60) is commonly used for real-time tracking,
but it is not robust to outliers!
Motivation
IROS 2007 4
Previous Methods
Complicated resulting parameter estimation for systems with transient disturbances Difficult & involved filter implementation Heavy computation not suitable for real-time applications Need to determine the optimal values of open parameters 1) Use non-Gaussian distributions for random variables (Sorenson & Alspach ’71, West ’82) 2) Model observation & state noise as non-Gaussian, heavy-tailed distributions (Masreliez ’75) 3) Use resampling or numerical integration (Kitagawa ’87) 4) Use a robust least squares approach & model weights with heuristic functions (e.g., Durovic & Kovacevic, ’99) Drawback Robust Kalman filter approach
IROS 2007 5
- Motivation
- Quick review of the Kalman filter
- Robust Kalman filtering with Bayesian weights
- Experimental results
- Conclusions
Outline
IROS 2007 6
- The system equations for the Kalman filter are as follows:
A Quick Review of the Kalman Filter
zk = Ck + vk k = Ak1 + sk
Observation matrix State transition matrix
sk ~ Normal 0,Q
( )
State noise: Observation noise:
vk ~ Normal 0,R
( )
IROS 2007 7
Standard Kalman Filter Equations
Propagation: k
' = A k1
k
' = Ak1AT + Q
Update: Sk
' = Ck ' CT + R
( )
1
Kk
' = k ' CTSk '
k = k
' + Kk ' zk Ck '
( )
k = I Kk
' C
( )k
'
Can use ML framework to estimate system dynamics (Myers & Tapley, 1976)
IROS 2007 8
- Motivation
- Quick review of the Kalman filter
- Robust Kalman filtering with Bayesian weights
- Experimental results
- Conclusions
Outline
IROS 2007 9
- Use a weighted least squares approach & learn the optimal weights:
Robust Kalman Filtering with Bayesian Weights
zk k,wk ~ Normal Ck,R / wk
( )
k k1 ~ Normal Ak1,Q
( )
wk ~ Gamma awk ,bwk
( )
Kalman filter
k1 zk1 zk k
Robust Kalman filter with Bayesian weights
k1 zk1 zk k wk wk1 Qk Qk1 Ck Ck1 Rk Rk1 Ak Ak1
IROS 2007 10
- We can treat this as an EM learning problem (Dempster & Laird, ’77):
- We use a variational factorial approximation of the true posterior
distribution: to get analytically tractable inference (e.g., Ghahramani & Beal, ’00).
Inference Procedure
Q w,
( ) =
Q wi
( )
i=1 N
- Q i i1
( )
i=1 N
- Q 0
( )
Maximize log p 1:k,zi,w1:k
( )
i=1 N
IROS 2007 11
Robust Kalman Filter Equations
Propagation: k
' = Ak k1
k
' = Qk
Update: Sk
' = Ckk ' Ck T + Rk
wk
- 1
Kk
' = k ' Ck TSk '
k = k
' + Kk ' zk Ckk '
( )
k = I Kk
' Ck
( )k
'
Propagation: k
' = A k1
k
' = Ak1AT + Q
Update: Sk
' = Ck ' CT + R
( )
1
Kk
' = k ' CTSk '
k = k
' + Kk ' zk Ck '
( )
k = I Kk
' C
( )k
'
Compare to standard Kalman filter
wk = awk 0 + 1 2 bwk 0 + zk Ckk
( )
T Rk 1 zk Ckk
( )
IROS 2007 12
Important Things to Note
1) Has the same computational complexity as the standard Kalman filter
2) Is principled & easy to implement (no heuristics) 3) Offers a natural framework to incorporate prior knowledge of the presence of outliers
- Our robust Kalman filter:
IROS 2007 13
- Motivation
- Quick review of the Kalman filter
- Robust Kalman filtering with Bayesian weights
- Experimental results
- Conclusions
Outline
IROS 2007 14
Real-time Outlier Detection on LittleDog
Our robust KF performs as well as a hand- tuned KF (that required prior knowledge and, hence, is near-optimal) Outliers
IROS 2007 15
- Motivation
- Quick review of the Kalman filter
- Robust Kalman filtering with Bayesian weights
- Experimental results
- Conclusions
Outline
IROS 2007 16
- We have introduced an outlier-robust Kalman filter that:
1) Is principled & easy to implement 2) Has the same computational complexity as the Kalman filter 3) Provides a natural framework to incorporate prior knowledge of noise
- This framework can be extended to other more complex, nonlinear filters
& methods in order to incorporate automatic outlier detection abilities.
Conclusions
IROS 2007 17
Final Posterior EM Update Equations
E-step: k = wk Ck
TRk 1Ck + Qk 1
( )
1
k = k Qk
1Ak k1 + wk Ck TRk 1zk
( )
wk = awk 0 + 1 2 bwk 0 + zk Ckk
( )
T Rk 1 zk Ckk
( )
M-step: Ck = wi zi i
T i=1 k
- wi
ii
T i=1 k
- 1
Ak = i i1
T i=1 k
- i1i1
T i=1 k
- 1
rkm = 1 k wi zi Ck(m,:)i
( )
2 i=1 k
- qkn = 1
k wi i Ak(n,:)i1
( )
2 i=1 k
- These are computed once for each time step k (e.g.,
Ghahramani & Hinton, 1996) Need to be written in incremental form
IROS 2007 18
Incremental Version of M-step Equations
M-step: Ck =
k wzT
- k
wT
- (
)
1
Ak =
k T
- k
' '
- (
)
1
rkm = 1 k
km wzz
- 2Ck(m,:)
km wz
- + diag Ck(m,:)
k wT
- Ck(m,:)T
{ }
- qkn = 1
k
kn 2
- 2Ak(n,:)
kn '
- + diag Ak(n,:)
k ' '
- Ak(n,:)T
{ }
- Gather sufficient statistics to re-write M-step equations in