• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
CRF-Filters: Discriminative Particle Filters for Sequential State Estimation
 

CRF-Filters: Discriminative Particle Filters for Sequential State Estimation

on

  • 1,501 views

Seminar talk on the paper by Limketkai, Fox and Liao.

Seminar talk on the paper by Limketkai, Fox and Liao.

Statistics

Views

Total Views
1,501
Views on SlideShare
1,324
Embed Views
177

Actions

Likes
1
Downloads
14
Comments
0

4 Embeds 177

http://www.hannes-schulz.de 106
http://hannes-schulz.de 63
http://www.lachnuss-zehn.de 7
http://translate.googleusercontent.com 1

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    CRF-Filters: Discriminative Particle Filters for Sequential State Estimation CRF-Filters: Discriminative Particle Filters for Sequential State Estimation Presentation Transcript

    • CRF-F: D P F  S S E B L, D F  L L Hannes Schulz University of Freiburg, ACS Feb 2008
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • Intro Transformation of Directed Model to CRF Application Experimental Results C: S E C D M A  S E ut−2 ut−1 xt−2 xt−1 xt ... ... n 1 2 n zt−1 1 zt 2 zt zt zt−1 zt−1 P (xt |u1:t −1 , z1:t ) = ηP (zt |xt ) P (xt |ut −1 , xt −1 )P (xt −1 |u1:t −2 , z1:t −1 ) dxt −1
    • Intro Transformation of Directed Model to CRF Application Experimental Results D  D M P p (zt |xt ) = n i =1 p (zti |xt ) p (xt +1 |xt , u)
    • Intro Transformation of Directed Model to CRF Application Experimental Results D  D M P p (zt |xt ) = n i =1 p (zti |xt ) p (xt +1 |xt , u) i P (zt |xt) ˆi zt zmax zrand
    • Intro Transformation of Directed Model to CRF Application Experimental Results D  D M P p (zt |xt ) = n i =1 p (zti |xt ) p (xt +1 |xt , u) i P (zt |xt) ˆi zt zmax zrand
    • Intro Transformation of Directed Model to CRF Application Experimental Results D  D M P p (zt |xt ) = n i =1 p (zti |xt ) p (xt +1 |xt , u) i P (zt |xt) ˆi zt zmax δrot2 zrand xt δtrans δrot1 xt−1 u = (δrot1 , δrot2 , δtrans ) executed with gaussian noise
    • Intro Transformation of Directed Model to CRF Application Experimental Results A P   D A p (zti |xt ) are not cond. independent zt xt
    • Intro Transformation of Directed Model to CRF Application Experimental Results A P   D A ut−2 ut−1 xt−2 xt−1 xt p (zti |xt ) are not cond. independent Sensor models can only be ... ... n 1 2 n zt−1 1 2 zt zt−1 zt−1 zt zt generated seperatly for each beam i P (zt |xt) ˆi zt zmax zrand
    • Intro Transformation of Directed Model to CRF Application Experimental Results A P   D A ut−2 ut−1 xt−2 xt−1 xt p (zti |xt ) are not cond. independent Sensor models can only be ... ... n 1 2 n zt−1 1 2 zt zt−1 zt−1 zt zt generated seperatly for each beam Assumption that measurements are independent: “Works i P (zt |xt) ˆi zt zmax surprisingly well”. . . if. . . zrand
    • Intro Transformation of Directed Model to CRF Application Experimental Results A P   D A ut−2 ut−1 xt−2 xt−1 xt p (zti |xt ) are not cond. independent Sensor models can only be ... ... n 1 2 n zt−1 1 2 zt zt−1 zt−1 zt zt generated seperatly for each beam Assumption that measurements are independent: “Works i P (zt |xt) ˆi zt zmax surprisingly well”. . . if. . . increasing uncertainty (tweaking) using every 10th measurement zrand ...
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • Intro Transformation of Directed Model to CRF Application Experimental Results I: CRF Undirected graphical models ut−2 ut−1 xt−2 xt−1 xt zt−1 zt
    • Intro Transformation of Directed Model to CRF Application Experimental Results I: CRF Undirected graphical models Every (possible) dependency ut−2 ut−1 represented by edge xt−2 xt−1 xt zt−1 zt
    • Intro Transformation of Directed Model to CRF Application Experimental Results I: CRF Undirected graphical models Every (possible) dependency ut−2 ut−1 represented by edge Distribution defined over products xt−2 xt−1 xt of functions over cliques zt−1 zt
    • Intro Transformation of Directed Model to CRF Application Experimental Results I: CRF Undirected graphical models Every (possible) dependency ut−2 ut−1 represented by edge Distribution defined over products xt−2 xt−1 xt of functions over cliques zt−1 zt Functions are called clique potentials
    • Intro Transformation of Directed Model to CRF Application Experimental Results I: CRF Undirected graphical models Every (possible) dependency ut−2 ut−1 represented by edge Distribution defined over products xt−2 xt−1 xt of functions over cliques zt−1 zt Functions are called clique potentials Clique potentials represent compatibility of their variables
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • Intro Transformation of Directed Model to CRF Application Experimental Results CRF-M  S E ut−2 ut−1 xt−2 xt−1 xt zt−1 zt T 1 p (x0:T |z1:T , u0:T −1 ) = ϕp (xt , xt −1 , ut −1 )ϕm (xt , zt ) Z (z1:T , u1:T −1 ) t =1
    • Intro Transformation of Directed Model to CRF Application Experimental Results CRF-M  S E ut−2 ut−1 xt−2 xt−1 xt zt−1 zt T 1 p (x0:T |z1:T , u0:T −1 ) = ϕp (xt , xt −1 , ut −1 )ϕm (xt , zt ) Z (z1:T , u1:T −1 ) t =1 Z (·): all trajectories ϕp (·)ϕm (·)
    • Intro Transformation of Directed Model to CRF Application Experimental Results CRF-M  S E ut−2 ut−1 xt−2 xt−1 xt zt−1 zt T 1 p (x0:T |z1:T , u0:T −1 ) = ϕp (xt , xt −1 , ut −1 )ϕm (xt , zt ) Z (z1:T , u1:T −1 ) t =1 Z (·): all trajectories ϕp (·)ϕm (·) How to define ϕp (·) and ϕm (·)?
    • Intro Transformation of Directed Model to CRF Application Experimental Results T P P φp ut −1 = (δrot1 , δtrans , δrot2 ) odometry ut −1 = (δrot1 , δtrans , δrot2 ) derived odometry ˆ ˆ ˆ ˆ δrot2 2 Before: Gaussian noise N uti −1 , σi xt δtrans δrot1 xt−1
    • Intro Transformation of Directed Model to CRF Application Experimental Results T P P φp ut −1 = (δrot1 , δtrans , δrot2 ) odometry ut −1 = (δrot1 , δtrans , δrot2 ) derived odometry ˆ ˆ ˆ ˆ δrot2 2 Before: Gaussian noise N uti −1 , σi xt  (δrot1 − δrot1 )2 ˆ      δtrans   fp (xt , xt −1 , ut −1 ) =  (δtrans − δtrans )2       ˆ      3 features   (δrot2 − δrot2 )2 ˆ     δrot1 xt−1
    • Intro Transformation of Directed Model to CRF Application Experimental Results T P P φp ut −1 = (δrot1 , δtrans , δrot2 ) odometry ut −1 = (δrot1 , δtrans , δrot2 ) derived odometry ˆ ˆ ˆ ˆ δrot2 2 Before: Gaussian noise N uti −1 , σi xt  (δrot1 − δrot1 )2 ˆ      δtrans   fp (xt , xt −1 , ut −1 ) =  (δtrans − δtrans )2       ˆ      3 features   (δrot2 − δrot2 )2 ˆ     δrot1 φp (xt , xt −1 , ut −1 ) = exp wp , fp (xt , xt −1 , ut −1 ) xt−1
    • Intro Transformation of Directed Model to CRF Application Experimental Results T P P φp ut −1 = (δrot1 , δtrans , δrot2 ) odometry ut −1 = (δrot1 , δtrans , δrot2 ) derived odometry ˆ ˆ ˆ ˆ δrot2 2 Before: Gaussian noise N uti −1 , σi xt  (δrot1 − δrot1 )2 ˆ      δtrans   fp (xt , xt −1 , ut −1 ) =  (δtrans − δtrans )2       ˆ      3 features   (δrot2 − δrot2 )2 ˆ     δrot1 φp (xt , xt −1 , ut −1 ) = exp wp , fp (xt , xt −1 , ut −1 ) xt−1 1 (a − a )2 ˆ N a, = exp − σ2 2σ2 Gaussian noise N uti −1 , 1 −2wpi if wp < 0 i
    • Intro Transformation of Directed Model to CRF Application Experimental Results R: S M   N¨ B A  i P (zt |xt) ˆi zt zmax zrand n p (zt |xt ) = p (zti |xt ) i =1
    • Intro Transformation of Directed Model to CRF Application Experimental Results M P φm i P (zt |xt) ˆi zt zmax n     φm (xt , zt ) = exp  wm , fm (zt , xt )  i         i =0 zrand (¬mti ∧ ¬mti )cti (zti − zti )2 ˆ ˆ         i i i        ˆ (¬mt ∧ ¬mt )¬ct      fm (zt , xt ) =  i   (¬mti ∧ mti ) ˆ            ( mti ∧ ¬mti )        ˆ        ( mti ∧ mti ) ˆ  
    • Intro Transformation of Directed Model to CRF Application Experimental Results M P φm i P (zt |xt) ˆi zt zmax n     φm (xt , zt ) = exp  wm , fm (zt , xt )  i         i =0 zrand (¬mti ∧ ¬mti )cti (zti − zti )2 ˆ ˆ         i i i        ˆ (¬mt ∧ ¬mt )¬ct      fm (zt , xt ) =  i   (¬mti ∧ mti ) ˆ            ( mti ∧ ¬mti )        ˆ        ( mti ∧ mti ) ˆ   mti ∈ {1, 0} measured zmax
    • Intro Transformation of Directed Model to CRF Application Experimental Results M P φm i P (zt |xt) ˆi zt zmax n     φm (xt , zt ) = exp  wm , fm (zt , xt )  i         i =0 zrand (¬mti ∧ ¬mti )cti (zti − zti )2 ˆ ˆ         i i i        ˆ (¬mt ∧ ¬mt )¬ct      fm (zt , xt ) =  i   (¬mti ∧ mti ) ˆ            ( mti ∧ ¬mti )        ˆ        ( mti ∧ mti ) ˆ   mti ∈ {1, 0} measured zmax mti ∈ {1, 0} expected zmax ˆ
    • Intro Transformation of Directed Model to CRF Application Experimental Results M P φm i P (zt |xt) ˆi zt zmax n     φm (xt , zt ) = exp  wm , fm (zt , xt )  i         i =0 zrand (¬mti ∧ ¬mti )cti (zti − zti )2 ˆ ˆ         i i i        ˆ (¬mt ∧ ¬mt )¬ct      fm (zt , xt ) =  i   (¬mti ∧ mti ) ˆ            ( mti ∧ ¬mti )        ˆ        ( mti ∧ mti ) ˆ   mti ∈ {1, 0} measured zmax mti ∈ {1, 0} expected zmax ˆ cti ∈ {1, 0} zti − zti < 20cm ˆ
    • Intro Transformation of Directed Model to CRF Application Experimental Results M P φm i P (zt |xt) ˆi zt zmax n     φm (xt , zt ) = exp  wm , fm (zt , xt )  i         i =0 zrand (¬mti ∧ ¬mti )cti (zti − zti )2 ˆ ˆ         i i i        ˆ (¬mt ∧ ¬mt )¬ct      fm (zt , xt ) =  i   (¬mti ∧ mti ) ˆ            ( mti ∧ ¬mti )        ˆ        ( mti ∧ mti ) ˆ   mti ∈ {1, 0} measured zmax mti ∈ {1, 0} expected zmax ˆ cti ∈ {1, 0} zti − zti < 20cm ˆ
    • Intro Transformation of Directed Model to CRF Application Experimental Results M P φm i P (zt |xt) ˆi zt zmax n     φm (xt , zt ) = exp  wm , fm (zt , xt )  i         i =0 zrand (¬mti ∧ ¬mti )cti (zti − zti )2 ˆ ˆ         i i i        ˆ (¬mt ∧ ¬mt )¬ct      fm (zt , xt ) =  i   (¬mti ∧ mti ) ˆ            ( mti ∧ ¬mti )        ˆ        ( mti ∧ mti ) ˆ   mti ∈ {1, 0} measured zmax mti ∈ {1, 0} expected zmax ˆ cti ∈ {1, 0} zti − zti < 20cm ˆ
    • Intro Transformation of Directed Model to CRF Application Experimental Results M P φm i P (zt |xt) ˆi zt zmax n     φm (xt , zt ) = exp  wm , fm (zt , xt )  i         i =0 zrand (¬mti ∧ ¬mti )cti (zti − zti )2 ˆ ˆ         i i i        ˆ (¬mt ∧ ¬mt )¬ct      fm (zt , xt ) =  i   (¬mti ∧ mti ) ˆ            ( mti ∧ ¬mti )        ˆ        ( mti ∧ mti ) ˆ   mti ∈ {1, 0} measured zmax mti ∈ {1, 0} expected zmax ˆ cti ∈ {1, 0} zti − zti < 20cm ˆ
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • Intro Transformation of Directed Model to CRF Application Experimental Results U  CRF    P F At each time step t: Prediction Move particles according to gaussian noise determined by wp Same as sampling from N uti −1 , ˆ 1 i −2wp Correction Particle at xt gets weight φm (xt , zt ) Resample (includes normalization)
    • Intro Transformation of Directed Model to CRF Application Experimental Results U  CRF    P F At each time step t: Prediction Move particles according to gaussian noise determined by wp u Same as sampling from N uti −1 , ˆ 1 i −2wp Correction Particle at xt gets weight φm (xt , zt ) Resample (includes normalization)
    • Intro Transformation of Directed Model to CRF Application Experimental Results U  CRF    P F At each time step t: Prediction Move particles according to gaussian noise determined by wp moved Same as sampling from N uti −1 , ˆ 1 −2wpi particles Correction Particle at xt gets weight φm (xt , zt ) Resample (includes normalization)
    • Intro Transformation of Directed Model to CRF Application Experimental Results U  CRF    P F At each time step t: Prediction Move particles according to gaussian noise determined by wp added Same as sampling from N uti −1 , noise 1 ˆ −2wpi Correction Particle at xt gets weight φm (xt , zt ) Resample (includes normalization)
    • Intro Transformation of Directed Model to CRF Application Experimental Results U  CRF    P F At each time step t: Prediction Move particles according to gaussian noise determined by wp ...sense... Same as sampling from N uti −1 , ˆ 1 −2wpi Correction Particle at xt gets weight φm (xt , zt ) Resample (includes normalization)
    • Intro Transformation of Directed Model to CRF Application Experimental Results U  CRF    P F At each time step t: Prediction Move particles according to gaussian noise determined by wp weights Same as sampling from N uti −1 , ˆ 1 −2wpi Correction Particle at xt gets weight φm (xt , zt ) Resample (includes normalization)
    • Intro Transformation of Directed Model to CRF Application Experimental Results U  CRF    P F At each time step t: Prediction Move particles according to gaussian noise determined by wp resample Same as sampling from N uti −1 , ˆ 1 i −2wp Correction Particle at xt gets weight φm (xt , zt ) Resample (includes normalization)
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • Intro Transformation of Directed Model to CRF Application Experimental Results D     wp  wm Drive around in test area
    • Intro Transformation of Directed Model to CRF Application Experimental Results D     wp  wm Drive around in test area Use high-quality scanmatcher to generate “ground truth” trajectory x∗
    • Intro Transformation of Directed Model to CRF Application Experimental Results D     wp  wm Drive around in test area Use high-quality scanmatcher to generate “ground truth” trajectory x∗ ˆ Using arbitrary weights, generate trajectory x with CRF-filter
    • Intro Transformation of Directed Model to CRF Application Experimental Results D     wp  wm Drive around in test area Use high-quality scanmatcher to generate “ground truth” trajectory x∗ ˆ Using arbitrary weights, generate trajectory x with CRF-filter Use difference of summed features as weight update(−) : wk = wk −1 + α ( f (x∗ , u, z) − f (x, u, z)) ˆ
    • Intro Transformation of Directed Model to CRF Application Experimental Results D     wp  wm Drive around in test area Use high-quality scanmatcher to generate “ground truth” trajectory x∗ ˆ Using arbitrary weights, generate trajectory x with CRF-filter Use difference of summed features as weight update(−) : wk = wk −1 + α ( f (x∗ , u, z) − f (x, u, z)) ˆ Decrease α if new Filter cannot track
    • Intro Transformation of Directed Model to CRF Application Experimental Results D     wp  wm Drive around in test area Use high-quality scanmatcher to generate “ground truth” trajectory x∗ ˆ Using arbitrary weights, generate trajectory x with CRF-filter Use difference of summed features as weight update(−) : wk = wk −1 + α ( f (x∗ , u, z) − f (x, u, z)) ˆ Decrease α if new Filter cannot track loop Adapts weights to task, sensor dependencies/environment, sensor noise, particle filter parameters
    • Intro Transformation of Directed Model to CRF Application Experimental Results L A Averaged Perceptron Algorithm (Collins 2002) for tagging w k = w k −1 + α f (x∗ , u, z) − f (x, u, z) ˆ Proven to converge even in presence of errors in training data Intuition of learning algorithm: If PF works correctly, then f (xn , un−1 , zn ) = ∗ f (xn , un−1 , zn ) ˆ f i occurs less often in x∗ than in x → decrease influence of f i ˆ on particle filter by decreasing w i
    • O 1 I: S E U D M 2 T  D M  CRF Short Introduction to CRF CRF-Model for State Estimation 3 A CRF-Filter Algorithm Learning the Parameters 4 E R
    • Intro Transformation of Directed Model to CRF Application Experimental Results E R Properties of the learned weights Norm of weight vector decreases with number of laser beams in z believes the features/measurements less equivalent to initially introduced “tweaking”?!
    • Intro Transformation of Directed Model to CRF Application Experimental Results E R Properties of the learned weights Norm of weight vector decreases with number of laser beams in z believes the features/measurements less equivalent to initially introduced “tweaking”?! Two specialized CRF-filters compared to generative particle filter trained using expectation maximization Tracking Global Error Localization Accuracy Generative 7.52 cm 30% CRF-Filter 7.07 cm 96%
    • Intro Transformation of Directed Model to CRF Application Experimental Results C 1 A CRF is an alternative, undirected graphical model
    • Intro Transformation of Directed Model to CRF Application Experimental Results C 1 A CRF is an alternative, undirected graphical model 2 CRF-Filters use a continuous CRF for recursive state estimation
    • Intro Transformation of Directed Model to CRF Application Experimental Results C 1 A CRF is an alternative, undirected graphical model 2 CRF-Filters use a continuous CRF for recursive state estimation 3 . . . can be trained to maximize filter performance depending on the task
    • Intro Transformation of Directed Model to CRF Application Experimental Results C 1 A CRF is an alternative, undirected graphical model 2 CRF-Filters use a continuous CRF for recursive state estimation 3 . . . can be trained to maximize filter performance depending on the task 4 . . . can deal with correlated measurements
    • Intro Transformation of Directed Model to CRF Application Experimental Results C 1 A CRF is an alternative, undirected graphical model 2 CRF-Filters use a continuous CRF for recursive state estimation 3 . . . can be trained to maximize filter performance depending on the task 4 . . . can deal with correlated measurements 5 . . . do not explicitly account for dependencies between sensor data