I want to calculate the marginal likelihood $p(y|\Theta)$ of the parameters of a Markov state space model with unknown parameters $\Theta$ that I am trying to estimate the marginal likelihood (marginal over latent states) using a bootstrap particle filter.

More specifically, lets say I know the initial state of my system $x_0$ and have a transition kernel $p(x_t|x_{t-1},\theta)$ that depends on some parameters $\theta$ that are unknown. Further, I have a measurement model $p(y_t|x_t,\phi)$ that depends on some other parameters $\phi$, which I'm also trying to estimate.

Then, with $\Theta = \{\theta,\phi\}$, my current understanding is that to calculate $p(y|\Theta)$, I iterate over all time points, the following operations:

  1. Sample from $p(x_t|x_{t-1},\theta)$
  2. Evaluate $p(y|x_t,\phi)$ for each of these proposed $x_t$ from step 1.
  3. Weight each particle according to $p(y_t|x_t,\phi)$, normalise weights, and resample them (yielding a sample with uniform weights from $p(x_{t}|y_{1:t})$ ).

Then, lets say my bootstrap particle filter has $P$ particles, my understanding is that

$p(y|\Theta) \approx \prod_{t=1}^{T} \frac{1}{P}\sum_{p=1}^{P}p(y_t|x^p_t,\phi)$

where the inner sum is over the particles proposed (at step 1) using $p(x_t|x_{t-1},\theta)$

is this correct?

  • 1
    $\begingroup$ Yes, that is the correct expression for the likelihood estimate. I would say, though, that after resampling, you have samples approximately distributed according to the filtering distribution. $\endgroup$
    – Taylor
    May 2, 2019 at 3:08
  • $\begingroup$ yep I agree. This was a typo! Thanks! $\endgroup$ May 2, 2019 at 12:12


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.