pyro-ppl/pyro

Implement Nonparametric Hamiltonian Monte Carlo

Open

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

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

Repository metrics

Stars
 (8,211 stars)
PR merge metrics
 (平均マージ 10d 19h) (30d で 1 merged PR)

説明

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?

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