sequential monte carlo methods - uppsala university · sequential monte carlo methods lecture 14 {...

27
Sequential Monte Carlo methods Lecture 14 – Particle Gibbs Fredrik Lindsten, Link¨ oping University 2019-08-29

Upload: others

Post on 13-Jun-2020

16 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Sequential Monte Carlo methods

Lecture 14 – Particle Gibbs

Fredrik Lindsten, Linkoping University

2019-08-29

Page 2: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Outline – Lecture 14

Aim: Present the particle Gibbs algorithm; a systematic method for

combining particle filters and MCMC within a Gibbs sampling framework.

Outline:

1. The conditional importance sampling kernel

2. The particle Gibbs kernel

3. Ancestor sampling

1/22

Page 3: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Gibbs sampling for nonlinear dynamical systems

Gibbs sampling for dynamical system:

• Draw θ? ∼ p(θ | x0:T , y1:T ), OK!

• Draw x?0:T ∼ p(x0:T | θ?, y1:T ). Hard!

Problem: p(x0:T | θ, y1:T ) not available!

Idea: Approximate p(x0:T | θ, y1:T ) using a particle filter?

Better idea: Sample x?0:T from a Markov kernel κN,θ, constructed using

a particle filter, which has p(x0:T | θ, y1:T ) as a stationary distribution!

2/22

Page 4: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Ex) Epidemiological modelling

Compute p(θ, x0:T | y1:T ), where y1:T = (y1, y2, . . . , yT ) and use it to

compute the predictive distribution.

10 20 30 40 50 60 70 80 900

200

400

600

800

1000

1200

1400

1600

1800

2000

True1 month predictions95 % credibility

Disease activity (number of infected individuals It) over an eight year

period.

Fredrik Lindsten, Michael I. Jordan and Thomas B. Schon. Particle Gibbs with ancestor sam-

pling. Journal of Machine Learning Research (JMLR), 15:2145-2184, June 2014.

3/22

Page 5: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

The conditional importance

sampling kernel

Page 6: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Conditional importance sampling

Simplified setting: Given a target distribution π(x), construct a Markov

kernel κN(x , x?)—using importance sampling—which has stationary

distribution π(x).

Markov kernel = stochastic procedure with input x and output x?.

We define κN(x , x?) by the following “conditional importance sampler”:

Input: x

1. Draw x i ∼ q(x), i = 1, . . . , N − 1

2. Set xN = x

3. Compute w i = π(x i )q(x i ) , i = 1, . . . , N and normalize: w i = w i∑N

j=1 wj

4. Draw b ∼ C({w i}Ni=1)

5. Output: x? = xb

4/22

Page 7: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

ex) Conditional importance sampling illustration

5/22

Page 8: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Validity of the CIS kernel

Thm (stationarity): κN(x , x?) defined by the conditional importance

sampling procedure has π(x) as stationary distribution for any N ≥ 1.

Thm (ergodicity): Under weak conditions, samples generated from

κN(x , x?) converge (at a geometric rate) towards π(x) from any starting

point.

(Proofs as exercises in the practical session.)

6/22

Page 9: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Particle Gibbs

Page 10: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

The particle Gibbs kernel

Let θ be fixed and let x0:T ∈ XT+1 be a given state trajectory, denoted

the reference trajectory.

We want to construct a Markov kernel κN,θ(x0:T , x?0:T ) on XT+1.

Particle Gibbs: Run a particle filter, but at each time step

• sample only N − 1 particles in the standard way.

• set the Nth particle deterministically: xNt = xt and aNt = N.

• At final time t = T , output x?0:T = xb0:T with b ∼ C({w iT}Ni=1)

7/22

Page 11: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

The particle Gibbs algorithm

Algorithm Bootstrap particle filter

1. Initialize (t = 0):

- Draw x i0 ∼ p(x0), i = 1, . . . , N.

Set xN0 = x0.

- Set w i0 =

1N, i = 1, . . . , N.

2. for t = 1 to T :

- Draw ait ∼ C({w jt−1}

Nj=1), i = 1, . . . , N − 1.

- Draw x it ∼ p(xt | xait

t−1, θ), i = 1, . . . , N − 1.

Set xNt = xt and aNt = N.

- Set w it = p(yt | x i

t ), i = 1, . . . , N.

- Normalize the weights: w it =

w it∑N

`=1 w`t

, i = 1, . . . , N.

Draw b ∼ C({w iT}Ni=1) and output x?0:T = xb0:T .

8/22

Page 12: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

The particle Gibbs kernel

5 10 15 20 25 30 35 40 45 50−3

−2

−1

0

1

2

3

Time

Sta

te

• The algorithm stochastically “maps” x0:T into x?0:T .

• Implicitly defines a Markov kernel κN,θ(x0:T , x?0:T ) on XT+1

— the particle Gibbs kernel.

9/22

Page 13: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Particle Gibbs sampler for SSMs

Algorithm Particle Gibbs for parameter inference in SSMs

1. Initialize: Set x0:T [1] and θ[1] arbitrarily

2. For m = 2 to M, iterate:

a. Draw θ[m] ∼ p(θ | x0:T [m − 1], y1:T )

b. Draw x0:T [m] ∼ κN,θ[m](x0:T [m − 1], x?0:T )

10/22

Page 14: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Some properties of the particle

Gibbs kernel

Page 15: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Validity

Stationary distribution: p(x0:T | θ, y1:T ) is a stationary distribution of

the particle Gibbs kernel, for any number of particles N ≥ 1,∫p(x0:T | θ, y1:T )κN,θ(x0:T , x

?0:T )dx0:T = p(x?0:T | θ, y1:T ).

Ergodicity: The particle Gibbs kernel is ergodic for any N ≥ 2 under

weak conditions.

. . . what’s the catch?!?

Scaling: For the mixing rate not to deteriorate as T becomes large,

we need (at least) N ∝ T .

11/22

Page 16: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Path degeneracy for particle Gibbs

5 10 15 20 25 30 35 40 45 50−3

−2

−1

0

1

2

3

Time

Sta

te

The scaling N ∝ T is required to tackle the path degeneracy, since

otherwise

P(X ?t 6= xt)→ 0, as T − t →∞.

13/22

Page 17: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

ex) Particle Gibbs

Stochastic volatility model,

Xt+1 = 0.9Xt + Vt , Vt ∼ N (0,Θ),

Yt = Et exp(12Xt

), Et ∼ N (0, 1).

Consider the ACF of θ[m]− E[Θ | y1:T ].

0 50 100 150 200

0

0.2

0.4

0.6

0.8

1

PG, T = 100

Lag

ACF

N=5N=20N=100N=1000

0 50 100 150 200

0

0.2

0.4

0.6

0.8

1

PG, T = 1000

Lag

ACF

N=5N=20N=100N=1000

14/22

Page 18: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Ancestor sampling

Page 19: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Ancestor sampling

Particle Gibbs:

Let x1:T = (x1, . . . , xT ) be a fixed reference trajectory.

• Sample only N − 1 particles in the standard way.

• Set the Nth particle deterministically: xNt = xt .

• Set aNt = N.

• Sample aNt ∈ {1, . . . , N} with

P(ANt = j

)∝ w j

t−1p(xt | x jt−1, θ).

15/22

Page 20: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Particle Gibbs with ancestor sampling

5 10 15 20 25 30 35 40 45 50−3

−2

−1

0

1

2

3

Time

Sta

te

16/22

Page 21: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

PGAS vs. PG

PGAS

5 10 15 20 25 30 35 40 45 50−3

−2

−1

0

1

2

3

Time

Sta

te

PG

5 10 15 20 25 30 35 40 45 50−3

−2

−1

0

1

2

3

Time

Sta

te

17/22

Page 22: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

ex) Stochastic volatility model, cont’d

Stochastic volatility model,

Xt+1 = 0.9Xt + Vt , Vt ∼ N (0,Θ),

Yt = Et exp(12Xt

), Et ∼ N (0, 1).

Consider the ACF of θ[m]− E[Θ | y1:T ].

0 50 100 150 200

0

0.2

0.4

0.6

0.8

1

PG, T = 1000

Lag

ACF

N=5N=20N=100N=1000

0 50 100 150 200

0

0.2

0.4

0.6

0.8

1

PG-AS, T = 1000

Lag

ACF

N=5N=20N=100N=1000

18/22

Page 23: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Practical considerations

Page 24: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Resampling in the conditional particle filter

Care needs to be taken when implementing the resampling step in the

conditional particle filter!

Common implementation:

a[t,:] <- resampling(w[t-1,:])

a[t,N] <- N

a[t,N] <- N

Low-variance resampling (stratified, systematic, . . . ) can be used, but

require special implementations to maintain the correct stationary dis-

tribution:

Nicolas Chopin and Sumeetpal S. Singh. On Particle Gibbs Sampling. Bernoulli, 21:1855–

1883, 2015.

19/22

Page 25: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Modularity of particle Gibbs

The “kernel view” on particle Gibbs is useful for constructing composite

MCMC schemes.

ex) Multiple dynamical systems

Multiple time series/state space models with shared parameter θ.

Θ

Model 1:

Xt = f1(Xt−1,Vt ,Θ),

Yt = g1(Xt ,Et ,Θ).

Model n:

Xt = fn(Xt−1,Vt ,Θ),

Yt = gn(Xt ,Et ,Θ).

. . .

. . .

1. Use a separate particle Gibbs kernel for each model.

2. Update the parameter using all the models’ state variables.

20/22

Page 26: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

Modularity of particle Gibbs

The “kernel view” on particle Gibbs is useful for constructing composite

MCMC schemes.

ex) Temporal blocking

J1 J3 J5

J2 J4

0 · · · · · · T

• Consider a sub-block of states xs:u

• Sample x?s:u ∼ κs:uN,θ(x0:T , x?s:u) where κs:uN,θ is a particle Gibbs kernel

targeting p(xs:u | θ, xs−1, xu+1, ys:u).

• Only need N ∝ |u − s|

Sumeetpal S. Singh, Fredrik Lindsten, and Eric Moulines. Blocking Strategies and Stability of

Particle Gibbs Samplers. Biometrika, 104:953–969, 2017.21/22

Page 27: Sequential Monte Carlo methods - Uppsala University · Sequential Monte Carlo methods Lecture 14 { Particle Gibbs Fredrik Lindsten, Link oping University 2019-08-29

A few concepts to summarize lecture 14

Particle Gibbs kernel: A Markov kernel on the space of state

trajectories, constructed using a particle filter, which has the exact joint

smoothing distribution as its stationary distribution.

Modularity of particle Gibbs: The particle Gibbs kernel can be used as

a plug-and-play component in other MCMC schemes.

Ancestor sampling: A simple modification of the particle Gibbs

construction, in which the ancestor indices of the input particles are

sampled anew at each time step of the underlying particle filter. This

mitigates the effect of path degeneracy and can therefore (significantly)

improve the ergodicity of the particle Gibbs kernel.

22/22