blackjax
blackjax copied to clipboard
Separate random proposals and the RMH acceptance step
The RMH acceptance step is used by many MCMC algorithms across the library and we should thus be able to import it from a separate module. Should probably go in proposals.py.
We can also refactor the rmh kernel and rename it random_walk. I am not certain we should expose gaussian random walk as it is rather easy to build a random walk from any proposal. TBD.
The idea behind this issue is to be able to use Radford Neal's non reversible update of the value to which we compare the acceptance probability (paper).
This will require some thought to apply everywhere throughout the mcmc module, especially with the progressive sampling schemes. But maybe we don't need to do this yet, applying it to vanilla HMC/GHMC would be a good start.
This is not going to be a breaking change so we can drop this for v1.