Skip to content

v0.6.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@antoine-dedieu antoine-dedieu released this 10 May 17:01
· 17 commits to main since this release

What has changed

⚠️ This release changes the high-level API ⚠️

Deprecation notice

  • bp.run_bp is deprecated in favor of bp.run. bp.run_bp will be removed in future releases.
  • Dropped support for python 3.7.

New features

Changes

  • Implemented a unified interface for the BP and the SDLP solvers.
    • Solvers can be created via
       inferer = infer.build_inferer(fg.bp_state, backend=BACKEND)
      where BACKEND can be "bp" or "sdlp".
  • Added a run_with_diffs function to the BP solver to monitor BP convergence.
  • Improved the stability of message updates at low temperatures for logical factors and pool factors.
  • Improved the numerical stability of the messages / potentials clipping.
  • Improved the handling of various corner cases, including variables with single state, empty variable groups, energy with infinite potentials, etc..

Examples

  • Updated all example colabs to use the new unified interface.
  • Added a colab notebook which uses the SDLP solver to
    1. Run inference on an Ising Model and compare its results with BP
    2. Extract sparse feature activations from visually complex binary scenes.