Lasrt week, Siddharth Vishwanath and Hyungsuk Tak—whom I first met at an MCQMC session about multimodal sampling at MCqMC 2016 in Stanford, same year as my San Fran’ half-marathon race, most memorable of all my races!)—proposed a Repelling-Attracting Hamiltonian Monte Carlo (raHMC) algorithm, towards sampling from multimodal distributions.
“The success of raHMC for sampling from multimodal distributions crucially hinges on the choice of the [three] tuning parameter[s]”
The concept behind raHMC is to endow an HMC algorithm with an added friction term that slows down moves, except it can get turned into an acceleration effect when the friction coefficient γ becomes negative. In a proposal remindful of leapfrog half-time moves, raHMC proceeds by switching the sign of this coefficient γ half-way of an artificial time parameter T that is representing the inter-simulation time between two successive states of the Markov chain. By this aggregation of opposite forces, the resulting algorithm satisfies the detailed-balance condition, hence is reversible and preserves symplectic structure and volume. If not energy.
“…a direct application of the repelling-attracting mechanism to NUTS may not be straightforward. Lastly, we have not been able to guarantee that raHMC conserves energy”
Given the dependence on the tuning parameters, I fear implementing the algorithm may prove delicate in more complex settings, e.g. when the number of modes is unknown, as the acceleration component is rather blind to the actual target. In addition, the leapfrog integrator may prove quite slow in low density regions, which are visited about half the time.
“This, however, comes at the price of a higher computational cost, as the auto-tuning procedure for raHMC tends to favor longer trajectories, and therefore requires more gradient evaluations per step”
Numerical experiments show, indeed, that the algorithm is much slower than others, as this occurence of a 8.5s execution time for HMC vs a corresponding 1094s for raHM…