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

SMC: Allow for different path of distributions other than tempering. #726

Closed
ciguaran opened this issue Aug 23, 2024 · 1 comment
Closed

Comments

@ciguaran
Copy link
Contributor

SMC works by traversing a path of distributions, starting with an initial distribution, and progressively getting closer to a target distribution. There are many ways to construct such path.tempered.pyimplements the tempering approach.

We could for example implement a Partial posteriors path (where the likelihood of each intermediate distribution has more datapoints). Right now, in order to do so, we would need to extend from base.py, loosing all the inner kernel parameters work that happens inside tempered.py.

My proposal is to split tempered.py into two. The first function should do the tempering work, the second function all the wiring for MCMC parameters, and call to base.py. This way implementing other distribution paths doesn't need to handle MCMC kernels construction.

@AdrienCorenflos
Copy link
Contributor

I don't see how you would do data tempering efficiently within JAX but apart from this I'm okay with the suggestion.

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