I am running inference of a nonlinear model as described here it will run (albeit poorly) even with Metropolis-Hastings, and with acceptable results with NUTS and HMC with Dual averaging tuning of path length:
With vanilla (fully manually-tuned parameters, static) HMC, however, despite using the step size (step_size
) and number of leapfrogs (n_steps
) extracted from its dual-averaging counterpart the chain doesn’t move:
The first thing I can think of that is missing for the vanilla HMC is the metric, mass matrix component of the momentum proposal, but I wouldn’t exclude other causes for this failure unless there’s an extreme mismatch between the default covariance matrix and the problem metric.
So the questions are:
- Is it possible to specify the mass matrix for the
HMC
method? - In case that doesn’t solve it, what else could be causing the complete breakdown of inference?