Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AbstractMCMC/Turing integration #51

Open
THargreaves opened this issue Aug 6, 2024 · 1 comment
Open

AbstractMCMC/Turing integration #51

THargreaves opened this issue Aug 6, 2024 · 1 comment

Comments

@THargreaves
Copy link
Collaborator

I wanted to open this issue to have a place to discuss the ways in which SSMProblems must be designed to integrate effectively with AbstractMCMC/Turing.

A few notes on the PMCMC side of things:

PMMH

For PMMH the only requirement is that our filtering algorithm returns an unbiased estimate of the marginal likelihood.

PMMH is also commonly used to jointly infer parameters and trajectories in which case it makes sense for the filtering algorithm to also return a sampled trajectory along with the likelihood.

We could use the AbstractMCMC interface here, but it seems a bit strange since each sample is independent of the last.

PG

The terminology for particle Gibbs is a bit inconsistent between publications. I think the terminology that is most convenient for us is that the particle Gibbs algorithm is split up into too alternating steps:

  • Conditional-SMC: sample a trajectory conditioned on the current parameters θ, the observations, and a reference trajectory (this is called particle Gibbs in AdvancedPS)
  • Parameter update: sample new parameters θ, given the reference trajectory and observations

The parameter update step is fiddly. Sometimes there is a closed form, often one uses MH within Gibbs. Chopin's particles here, let's the user define an update_theta function to do this.

It makes sense to use AbstractMCMC for the C-SMC samples since these form a Markov chain

@yebai
Copy link
Member

yebai commented Aug 6, 2024

We are adding (abstract) Gibbs sampling to AbstractMCMC, so we might be able to use it for both the C-SMC step and the update_theta step.

cc @sunxd3 @torfjelde

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants