v0.1.8
Bug fixes
- Fixed bug when sampling chains in parallel without
multiprocess
installed introduced in v0.1.6 release due to use of non-pickleable local function in default value fortrace_funcs
argument. - Corrected handling of zero and infinity edge cases by
LogRepFloat
class. - Fixed bug in constructing diagonal of
*BlockDiagonalMatrix
classes. - Fixed bug when using
sample_chain
method withdisplay_progress=False
.
Dependency changes and deprecations
- Minimum
numpy
version changed to 1.17 to ensure new-stylenumpy.random.Generator
RNGs are available with use ofnumpy.random.RandomState
instances deprecated.
API changes
tqdm
based progress bar implementationmici.progressbars.TqdmProgressBar
removed as alternative to inbuilt progress bar class.mici.utils.convert_to_arviz_inference_data
helper function removed as traces dictionary can be directly used in most ArviZ API functions and/or explicitly converted to an ArviZInferenceData
container using the inbuilt convert functions.- Logic controlling staging of chain iterations in sampler
sample_chains_with_adaptive_warm_up
methods factored out to 'stager' classes inmici.stagers
module. Thesample_chains_with_adaptive_warm_up
methods now accept a new keyword argumentstager
which replaces the previous windowed-adaptation specificn_init_fast_stage_iter
,n_init_slow_window_iter
,n_final_fast_stage_iter
andslow_window_multiplier
keywords, with these parameters now able to be instead set via the initializer for themici.stagers.WindowedWarmUpStager
class. - Memoizing decorator
multi_cache_in_state
, used to cache outputs of system functions with additionally auxiliary outputs, renamed tocache_in_state_with_aux
.