Microcanonical Hamiltonian Monte Carlo

by   Jakob Robnik, et al.
berkeley college
Stanford University

We develop Microcanonical Hamiltonian Monte Carlo (MCHMC), a class of models which follow a fixed energy Hamiltonian dynamics, in contrast to Hamiltonian Monte Carlo (HMC), which follows canonical distribution with different energy levels. MCHMC tunes the Hamiltonian function such that the marginal of the uniform distribution on the constant-energy-surface over the momentum variables gives the desired target distribution. We show that MCHMC requires occasional energy conserving billiard-like momentum bounces for ergodicity, analogous to momentum resampling in HMC. We generalize the concept of bounces to a continuous version with partial direction preserving bounces at every step, which gives an energy conserving underdamped Langevin-like dynamics with non-Gaussian noise (MCLMC). MCHMC and MCLMC exhibit favorable scalings with condition number and dimensionality. We develop an efficient hyperparameter tuning scheme that achieves high performance and consistently outperforms NUTS HMC on several standard benchmark problems, in some cases by more than an order of magnitude.


Non-Canonical Hamiltonian Monte Carlo

Hamiltonian Monte Carlo is typically based on the assumption of an under...

Hamiltonian Dynamics with Non-Newtonian Momentum for Rapid Sampling

Sampling from an unnormalized probability distribution is a fundamental ...

Hamiltonian Monte Carlo with Asymmetrical Momentum Distributions

Existing rigorous convergence guarantees for the Hamiltonian Monte Carlo...

Sampling from multimodal distributions using tempered Hamiltonian transitions

Hamiltonian Monte Carlo (HMC) methods are widely used to draw samples fr...

Adaptive Tuning for Metropolis Adjusted Langevin Trajectories

Hamiltonian Monte Carlo (HMC) is a widely used sampler for continuous pr...

Optimization via conformal Hamiltonian systems on manifolds

In this work we propose a method to perform optimization on manifolds. W...

Non-reversibly updating a uniform [0,1] value for Metropolis accept/reject decisions

I show how it can be beneficial to express Metropolis accept/reject deci...

Code Repositories

Please sign up or login with your details

Forgot password? Click here to reset