Let us work on getting the NUTS sampler fully stateful in HybridGibbs. This would mean no special case handling for NUTS in HybridGibbs.
Also relates to #474 and #505
Comment
do we lose NUTS step size here (epsilon, etc)? .. if so maybe we can print a warning
I also wonder if setting sampler.step_size = sampler.epsilon would be better than doing nothing, for NUTS. But it could be for another issue. What I mean is something like:
if isinstance(sampler, NUTS):
sampler.initial_point = sampler.current_point
step_size = sampler.step_size
.
.
if not isinstance(sampler, NUTS): # Again, special case for NUTS.
sampler.set_state(sampler_state)
sampler.set_history(sampler_history)
else:
sampler.step_size = step_size
_Originally posted by @amal-ghamdi in https://github.com/CUQI-DTU/CUQIpy/pull/503#discussion_r1750386017_
Let us work on getting the NUTS sampler fully stateful in HybridGibbs. This would mean no special case handling for NUTS in HybridGibbs.
Also relates to #474 and #505
Comment
do we lose NUTS step size here (epsilon, etc)? .. if so maybe we can print a warning
I also wonder if setting sampler.step_size = sampler.epsilon would be better than doing nothing, for NUTS. But it could be for another issue. What I mean is something like: