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

Effective Sample Size & tempering/annealing #222

Open
wants to merge 9 commits into
base: master
Choose a base branch
from
Open

Effective Sample Size & tempering/annealing #222

wants to merge 9 commits into from

Conversation

turion
Copy link
Owner

@turion turion commented May 12, 2023

Right now, the best approach to estimating constant parameters seems to be a stochastic diffusion process that keeps & mutates guesses for these parameters in its state, and lowers its temperature with time. This might be called "tempering" or "annealing" in the literature. There are two open research questions:

  • How should the diffusion rate change? It should probably decrease with time, but also increase when the effective sample size is low. How exactly is maybe a matter of taste
  • How does diffusion work for a generic parameter? One might want to make a random walk/MCMC-step on a prior (or posterior) distribution, then this seems to be RMSMC. But the implementation of mhStep in monad-bayes seems questionable. The other idea would be deriving a diffusion kernel from the parameter type.
  • Probably finish RMSMC #223 first
  • Finish Add effective sample size to Population tweag/monad-bayes#268 first and release

@turion
Copy link
Owner Author

turion commented Jul 21, 2023

when the effective sample size is low

To make this a more relevant criterion, one should first take the whole population PopulationT m everything and project it onto only that parameter, collapsing particles with identical values to one, and then looking at the ESS. But that would require an Eq constraint.

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

Successfully merging this pull request may close these issues.

1 participant