You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current setup for using Pyro MCMC methods is a bit of a mess:
we have a pyro-specific MCMC class in sbi/samples/mcmc/mcmc.py [1]
a pyro-specific implementation of a slice-sampler in sbi/samples/mcmc/slice.py [2]
In mcmc_posterior we offer a MCMC sampling via pyro, e.g., pyro slice sampling via [2], and HMC and NUTS as implemented in pyro.
To me it seems we are never using the class defined [1] but instead use from pyro.infer.mcmc.api import MCMC to specify the MCMC kernel (slice, hmc, nuts).
Solution
Define a common interface for pyro MCMC methods in sbi. It should be possible use our own pyro slice sampler, or plug in pyro-based HMC or NUTS (or other pyro samplers). This could include:
get rid of [1]
rename slice.py to slice_pyro.py and add more documentation
rename the keyword in mcmc_posterior to slice_pyro instead of just slice.
Problem
The current setup for using Pyro MCMC methods is a bit of a mess:
sbi/samples/mcmc/mcmc.py
[1]sbi/samples/mcmc/slice.py
[2]In
mcmc_posterior
we offer a MCMC sampling via pyro, e.g., pyro slice sampling via [2], andHMC
andNUTS
as implemented in pyro.To me it seems we are never using the class defined [1] but instead use
from pyro.infer.mcmc.api import MCMC
to specify the MCMC kernel (slice, hmc, nuts).Solution
Define a common interface for pyro MCMC methods in
sbi
. It should be possible use our own pyro slice sampler, or plug in pyro-based HMC or NUTS (or other pyro samplers). This could include:slice.py
toslice_pyro.py
and add more documentationmcmc_posterior
toslice_pyro
instead of justslice
.Related / a subissue of #908
The text was updated successfully, but these errors were encountered: