We would very much like to understand some of these
issues ourselves.
The technical issues in diagnosing convergence
presented by adaptive HMC/NUTS are the same as those
presented by Metropolis/Gibbs.
If you've already studied Radford Neal's MCMC handbook
chapter on HMC, you're well on your way to understanding
what's going on. There's then the Hoffman and Gelman
paper on NUTS itself (also on arXiv, though it's about
to come out in JMLR).
The best thing to read next is Michael Betancourt's
arXiv papers on RM-HMC, which discusses the funnel example
(also discussed in the manual) in more detail. The main
pathologies for HMC/NUTS have to do with complex posterior
geometries (high curvature and varying posterior scales).
HMC is rotation invariant (can handle high corelations)
but is not scale invariant (doesn't like badly conditioned
posteriors in the matrix sense). Riemann Manifold HMC,
which we're working on now, is usually slower per iteration,
but can handle more complex posteriors.
Michael's also writing a package for diagnostics, which
should help with this, but isn't quite ready for prime
time (or so I understand --- correct me if I'm wrong here,
Michael).
What we're worried about is the case where the convergence
diagnostics like R-hat are consistent with convergence, but
the sampler hasn't actually converged. One way Michael's
been suggesting dealing with this is to run NUTS, look
at the adapted step size and average (or max) tree depth,
then run basic HMC with a step size 1/2 the size and a
number of steps equal to 2^(depth + 1), where depth is
the max tree depth in the NUTS. This should be substantially
slower, and perhaps require more iterations, but should give
the same answer. If it does, the geometry's probably OK (right,
Michael?).
If you declare variables with constraints and the model
has support in the entire constrained space, then Stan will
deal with the transform to full support on R^N (perhaps for
a different N -- for instance, K-simplexes only need K-1 unconstrained
parameters because the last value is determined by 1 minus
the sum of the others). There's a discussion of how this works
in the manual.
- Bob
> --
> You received this message because you are subscribed to the Google Groups "stan users mailing list" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
stan-users+...@googlegroups.com.
> For more options, visit
https://groups.google.com/groups/opt_out.
>
>