pyro-ppl/pyro

Implement Nonparametric Hamiltonian Monte Carlo

Open

#2,903 opened on 2021年7月15日

GitHub で見る
 (0 comments) (0 reactions) (0 assignees)Python (8,211 stars) (981 forks)batch import
discussionenhancementhelp wanted

説明

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?

コントリビューターガイド