pyro-ppl/pyro

Implement Nonparametric Hamiltonian Monte Carlo

Open

#2903 aperta il 15 lug 2021

Vedi su GitHub
 (0 commenti) (0 reazioni) (0 assegnatari)Python (981 fork)batch import
discussionenhancementhelp wanted

Metriche repository

Star
 (8211 star)
Metriche merge PR
 (Merge medio 10g 19h) (1 PR mergiata in 30 g)

Descrizione

This issue proposes adding an implementation of nonparametric Hamiltonian Monte Carlo, a modified version of HMC that provably correctly handles models with stochastic control flow, unlike vanilla HMC.

@fzaiser (one of the paper's authors) has open-sourced a PyTorch reference implementation, and turning this into a Pyro inference algorithm would be a great project for contributors with some preexisting interest in and knowledge of the line of research (on extensions of gradient-based approximate inference algorithms to discontinuous models) embodied in the paper.

Some questions for discussion:

  1. What extra information about the model is necessary to support the algorithms used in the paper's experiments?
  2. Can this information be extracted automatically, or would it require additional user-supplied annotations?
  3. Would it make more sense to implement this functionality in a new MCMC kernel or to modify our existing HMC kernels?
  4. Would NumPyro be a better substrate for this algorithm since Jax does not compile away control flow?

Guida contributor