I'm trying to understand how to employ MCMC moves in a sequential Monte Carlo procedure for estimating static parameters as in the setting described by Chopin. He proposes, for example, the usage of a Metropolis-Hastings kernel admitting the posterior $\pi_n$ as invariant distribution.

My problem is that, as far as I understood it, for finding the acceptance probability in such a MH kernel I would have to calculate $p(y_1,\dots,y_n|\Theta')$, $y_i$ being the observations made thus far and $\Theta'$ a new particle drawn from a proposal distribution. When my observations are i.i.d this will boil down to evaluating an $n$-fold product of likelihoods for every particle at every iteration. But, because $\Theta'$ is a completely new particle, I can't calculate this sequentially, and would rather have to evaluate the full product at every time step. Effectively, this would render the algorithm useless for any large set of observations.

Did I get something wrong? what can I do to circumvent the problem?


At any "time" point $t$, you have $\theta$ samples targeting $p(\theta \mid y_{1:t})$, and you use those samples to target $p(\theta \mid y_{1:t+1})$, and so on and so forth. This sort of thing also goes by the name of data annealing.

It appears you’re correct about the move step being the slow part. He says “[n]ote that, when the rejuvenation is performed by such a kernel, a browse through the whole past subsample is needed in the computation of $\pi_{n+p}(\theta_j^p)$, which appears in the acceptance probability.”

With independent observations, though, this step is easily parallelized, and you would need to do it fewer times than when using a regular MH approach. Finally, depending on your model, you might have sufficient statistics available that can be computed recursively and stored and used in the calculation of the acceptance ratio.

| cite | improve this answer | |
  • $\begingroup$ Thanks for your answer! You're correct in the algorithm itself, but my question is related to what Chopin calls the "Move Kernel". Basically, it is about step 3 in the algorithm of section 4. Because we're targeting a static parameter distribution, they introduce the kernel move as rejuvenation step. He goes on to talk about the coice of the move kernel in 4.2, which is where he mentions a MH Kernel and where my problem comes in. While the particle system can be updated sequentially as you described, I dont see how this would work well together with a MH Kernel in the rejuvenation step $\endgroup$ – noosesan May 3 '19 at 8:56
  • $\begingroup$ @noosesan see edit $\endgroup$ – Taylor May 3 '19 at 12:15
  • $\begingroup$ thanks I believe that answers it: there's no generic way to do it sequentially then.. I do have finite experiment outcomes though so I can speed it up a little by just storing the exponents I need in the likelihood computation. Do you maybe have some reference for the sufficient statistics part? I haven't heard of that before $\endgroup$ – noosesan May 3 '19 at 21:04
  • $\begingroup$ @noosesan no, sorry, I I haven't read that in any paper talking about this technique. $\endgroup$ – Taylor May 4 '19 at 18:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.