Skip to content

Releases: zfit/zfit

Fix missing dependency

20 Jul 19:58
Compare
Choose a tag to compare

0.15.2 (20 July 2023)

Fix missing attrs dependency

Major Features and Improvements

  • add option full in loss to return the full, unoptimized value (currently not default), allowing for easier statistical tests using the loss

0.15.0

13 Jul 15:00
Compare
Choose a tag to compare

Update to TensorFlow 2.13.x

Requirement changes

  • TensorFlow upgraded to ~=2.13.0
  • as TF 2.13.0 ships with the arm64 macos wheels, the requirement of tensorflow_macos is removed

Thanks

  • Iason Krommydas for helping with the macos requirements for TF

Pin pydantic dependency to < V2

01 Jul 17:03
Compare
Choose a tag to compare

Major Features and Improvements

  • zfit broke for pydantic 2, which upgraded.

Requirement changes

  • restrict pydantic to <2.0.0

Upgrade to Python 3.11

22 Jun 08:27
Compare
Choose a tag to compare

What's Changed

Minor fixes in CB and caching

15 Jun 11:46
Compare
Choose a tag to compare

0.13.2 (15. June 2023)

Bug fixes and small changes

  • fix a caching problem with parameters (could cause issues with larger PDFs as params would be "remembered" wrongly)
  • more helpful error message when jacobian (as used for weighted corrections) is analytically asked but fails
  • make analytical gradient for CB integral work

Minor fix for KDE

20 Apr 17:25
Compare
Choose a tag to compare

0.13.1 (20 Apr 2023)

Bug fixes and small changes

  • array bandwidth for KDE works now correctly

Requirement changes

  • fixed uproot for Python 3.7 to <5

Thanks

  • @schmitse for reporting and solving the bug in the KDE bandwidth with arrays

Last Python 3.7 fixes

19 Apr 12:01
Compare
Choose a tag to compare

Version 0.13.0

Major Features and Improvements

last Python 3.7 version

Bug fixes and small changes

  • SampleData is not used anymore, a Data object is returned (for simple sampling). The create_sampler will still return a SamplerData object though as this differs from Data.

Experimental

  • Added support on a best-effort for human-readable serialization of objects including an HS3-like representation, find a tutorial on serialization here . Most built-in unbinned PDFs are supported. This is still experimental and not yet fully supported. Dumping can be performed safely, loading maybe easily breaks (also between versions), so do not rely on it yet. Everything else - apart of trying to dump - should only be used for playing around and giving feedback purposes.

Requirement changes

  • allow uproot 5 (remove previous restriction)

Thanks

  • to Johannes Lade for the amazing work on the serialization, which made this HS3 implementation possible!

Reproducibility fix

01 Apr 18:31
Compare
Choose a tag to compare

Fix some issues with setting seed globally and locally, fits should now be reproducible.

For all changes, see the changelog

Thanks to @schmitse for discovering the bug

Binned and sampling fixes

17 Mar 01:28
Compare
Choose a tag to compare

Many smaller fixes that are crucial, most notably to avoid a bias in sampling.

Bug fixes and small changes

  • create_extended added None to the name, removed.
  • SimpleConstraint now also takes a function that has an explicit params argument.
  • add name argument to create_extended.
  • adding binned losses would error due to the removed fit_range argument.
  • setting a global seed made the sampler return constant values, fixed (unoptimized but correct). If you ran
    a fit with a global seed, you might want to rerun it.
  • histogramming and limit checks failed due to a stricter Numpy check, fixed.

Thanks

  • @P-H-Wagner for finding the bug in SimpleConstraint.
  • Dan Johnson for finding the bug in the binned loss that would fail to sum them up.
  • Hanae Tilquin for spotting the bug with TensorFlows changed behavior or random states inside a tf.function,
    leading to biased samples whenever a global seed was set.

Reduced memory consumption and convenience functions

15 Sep 12:32
Compare
Choose a tag to compare

Major Features and Improvements

  • reduce the memory footprint on (some) fits, especially repetitive (loops) ones.
    Reduces the number of cached compiled functions. The cachesize can be set with
    zfit.run.set_cache_size(int)
    and specifies the number of compiled functions that are kept in memory. The default is 10, but
    this can be tuned. Lower values can reduce memory usage, but potentially increase runtime.

Bug fixes and small changes

  • Enable uniform binning for n-dimensional distributions with integer(s).
  • Sum of histograms failed for calling the pdf method (can be indirectly), integrated over wrong axis.
  • Binned PDFs expected binned spaces for limits, now unbinned limits are also allowed and automatically
    converted to binned limits using the PDFs binning.
  • Speedup sampling of binned distributions.
  • add to_binned and to_unbinned methods to PDF

Thanks

  • Justin Skorupa for finding the bug in the sum of histograms and the missing automatic
    conversion of unbinned spaces to binned spaces.