Sbi

Latest version: v0.22.0

Safety actively analyzes 629639 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 6

0.18.0

Breaking changes

- Posteriors saved under `sbi` `v0.17.2` or older can not be loaded under `sbi`
`v0.18.0` or newer.
- `sample_with` can no longer be passed to `.sample()`. Instead, the user has to rerun
`.build_posterior(sample_with=...)`. (573)
- the `posterior` no longer has the the method `.sample_conditional()`. Using this
feature now requires using the `sampler interface` (see tutorial
[here](https://sbi-dev.github.io/sbi/tutorial/07_conditional_distributions/)) (#573)
- `retrain_from_scratch_each_round` is now called `retrain_from_scratch` (598, thanks to jnsbck)
- API changes that had been introduced in `sbi v0.14.0` and `v0.15.0` are not enforced. Using the interface prior to
those changes leads to an error (645)
- prior passed to SNPE / SNLE / SNRE must be a PyTorch distribution (655), see FAQ-7 for how to pass use custom prior.

Major changes and bug fixes

- new `sampler interface` (573)
- posterior quality assurance with simulation-based calibration (SBC) (501)
- added `Sequential Neural Variational Inference (SNVI)` (Glöckler et al. 2022) (609, thanks to manuelgloeckler)
- bugfix for SNPE-C with mixture density networks (573)
- bugfix for sampling-importance resampling (SIR) as `init_strategy` for MCMC (646)
- new density estimator for neural likelihood estimation with mixed data types (MNLE, 638)
- MCMC can now be parallelized across CPUs (648)
- improved device check to remove several GPU issues (610, thanks to LouisRouillard)

Enhancements

- pairplot takes `ax` and `fig` (557)
- bugfix for rejection sampling (561)
- remove warninig when using multiple transforms with NSF in single dimension (537)
- Sampling-importance-resampling (SIR) is now the default `init_strategy` for MCMC (605)
- change `mp_context` to allow for multi-chain pyro samplers (608, thanks to sethaxen)
- tutorial on posterior predictive checks (592, thanks to LouisRouillard)
- add FAQ entry for using a custom prior (595, thanks to jnsbck)
- add methods to plot tensorboard data (593, thanks to lappalainenj)
- add option to pass the support for custom priors (602)
- plotting method for 1D marginals (600, thanks to guymoss)
- fix GPU issues for `conditional_pairplot` and `ActiveSubspace` (613)
- MCMC can be performed in unconstrained space also when using a `MultipleIndependent` distribution as prior (619)
- added z-scoring option for structured data (597, thanks to rdgao)
- refactor c2st; change its default classifier to random forest (503, thanks to psteinb)
- MCMC `init_strategy` is now called `proposal` instead of `prior` (602)
- inference objects can be serialized with `pickle` (617)
- preconfigured fully connected embedding net (644, thanks to JuliaLinhart 624)
- posterior ensembles (612, thanks to jnsbck)
- remove gradients before returning the `posterior` (631, thanks to tomMoral)
- reduce batchsize of rejection sampling if few samples are left (631, thanks to tomMoral)
- tutorial for how to use SBC (629, thanks to psteinb)
- tutorial for how to use SBI with trial-based data and mixed data types (638)
- allow to use a `RestrictedPrior` as prior for `SNPE` (642)
- optional pre-configured embedding nets (568, 644, thanks to JuliaLinhart)

0.17.2

Minor changes

- bug fix for transforms in KDE (552)

0.17.1

Minor changes

- improve kwarg handling for rejection abc and smcabc
- typo and link fixes (549, thanks to pitmonticone)
- tutorial notebook on crafting summary statistics with sbi (511, thanks to ybernaerts)
- small fixes and improved documenentation for device handling (544, thanks to milagorecki)

0.17.0

Major changes

- New API for specifying sampling methods (487). Old syntax:

python
posterior = inference.build_posterior(sample_with_mcmc=True)


New syntax:

python
posterior = inference.build_posterior(sample_with="mcmc") or "rejection"


- Rejection sampling for likelihood(-ratio)-based posteriors (487)
- MCMC in unconstrained and z-scored space (510)
- Prior is now allowed to lie on GPU. The prior has to be on the same device as the one
passed for training (519).
- Rejection-ABC and SMC-ABC now return the accepted particles / parameters by default,
or a KDE fit on those particles (`kde=True`) (525).
- Fast analytical sampling, evaluation and conditioning for `DirectPosterior` trained
with MDNs (thanks jnsbck 458).

Minor changes

- `scatter` allowed for diagonal entries in pairplot (510)
- Changes to default hyperparameters for `SNPE_A` (thanks famura, 496, 497)
- bugfix for `within_prior` checks (506)

0.16.0

Major changes

- Implementation of SNPE-A (thanks famura and theogruner, 474, 478, 480, 482)
- Option to do inference over iid observations with SNLE and SNRE (484, 488)

Minor changes

- Fixed unused argument `num_bins` when using `nsf` as density estimator (465)
- Fixes to adapt to the new support handling in `torch` `v1.8.0` (469)
- More scalars for monitoring training progress (thanks psteinb 471)
- Fixed bug in `minimal.py` (thanks psteinb, 485)
- Depend on `pyknos` `v0.14.2`

0.15.1

- add option to pass `torch.data.DataLoader` kwargs to all inference methods (thanks narendramukherjee, 445)
- fix bug due to release of `torch` `v1.8.0` (451)
- expose `leakage_correction` parameters for `log_prob` correction in unnormalized
posteriors (thanks famura, 454)

Page 2 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.