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:
- Sample from $p(x_t|x_{t-1},\theta)$
- Evaluate $p(y|x_t,\phi)$ for each of these proposed $x_t$ from step 1.
- 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?