The NoUTurn Sampler: Adaptively Setting Path Lengths in Hamiltonian Monte Carlo
Abstract
Hamiltonian Monte Carlo (HMC) is a Markov chain Monte Carlo (MCMC) algorithm that avoids the random walk behavior and sensitivity to correlated parameters that plague many MCMC methods by taking a series of steps informed by firstorder gradient information. These features allow it to converge to highdimensional target distributions much more quickly than simpler methods such as random walk Metropolis or Gibbs sampling. However, HMC's performance is highly sensitive to two userspecified parameters: a step size {\epsilon} and a desired number of steps L. In particular, if L is too small then the algorithm exhibits undesirable random walk behavior, while if L is too large the algorithm wastes computation. We introduce the NoUTurn Sampler (NUTS), an extension to HMC that eliminates the need to set a number of steps L. NUTS uses a recursive algorithm to build a set of likely candidate points that spans a wide swath of the target distribution, stopping automatically when it starts to double back and retrace its steps. Empirically, NUTS perform at least as efficiently as and sometimes more efficiently than a well tuned standard HMC method, without requiring user intervention or costly tuning runs. We also derive a method for adapting the step size parameter {\epsilon} on the fly based on primaldual averaging. NUTS can thus be used with no handtuning at all. NUTS is also suitable for applications such as BUGSstyle automatic inference engines that require efficient "turnkey" sampling algorithms.
 Publication:

arXiv eprints
 Pub Date:
 November 2011
 arXiv:
 arXiv:1111.4246
 Bibcode:
 2011arXiv1111.4246H
 Keywords:

 Statistics  Computation;
 Computer Science  Machine Learning
 EPrint:
 30 pages, 7 figures