Zfit

Latest version: v0.20.3

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

Scan your dependencies

Page 5 of 11

0.10.1

========================

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.

0.10.0

========================

Public release of binned fits and upgrade to Python 3.10 and TensorFlow 2.9.

Major Features and Improvements
-------------------------------
- improved data handling in constructors ``from_pandas`` (which allows now to
have weights as columns, dataframes that are a superset of the obs) and
``from_root`` (obs can now be spaces and therefore cuts can be direcly applied)
- add hashing of unbinned datasets with a ``hashint`` attribute. None if no hash was possible.

Breaking changes
------------------


Deprecations
-------------

Bug fixes and small changes
---------------------------
- SimpleLoss correctly supports both functions with implicit and explicit parameters, also if they
are decorated.
- extended sampling errored for some cases of binned PDFs.
- ``ConstantParameter`` errored when converted to numpy.
- Simultaneous binned fits could error with different binning due to a missing sum over
a dimension.
- improved stability in loss evaluation of constraints and poisson/chi2 loss.
- reduce gradient evaluation time in ``errors`` for many parameters.
- Speedup Parameter value assignement in fits, which is most notably when the parameter update time is
comparably large to the fit evaluation time, such as is the case for binned fits with many nuisance
parameters.
- fix ipyopt was not pickleable in a fitresult
- treat parameters sometimes as "stateless", possibly reducing the number of retraces and reducing the
memory footprint.

Experimental
------------

Requirement changes
-------------------
- nlopt and ipyopt are now optional dependencies.
- Python 3.10 added
- TensorFlow >= 2.9.0, <2.11 is now required and the corresponding TensorFlow-Probability
version >= 0.17.0, <0.19.0

Thanks
------
- YaniBion for discovering the bug in the extended sampling and testing the alpha release
- ResStump for reporting the bug with the simultaneous binned fit

0.9.0a2

========

Major Features and Improvements
-------------------------------
- Save results by pickling, unpickling a frozen (``FitResult.freeze()``) result and using
``zfit.param.set_values(params, result)`` to set the values of ``params``.



Deprecations
-------------
- the default name of the uncertainty methods ``hesse`` and ``errors`` depended on
the method used (such as ``"minuit_hesse"``, ``"zfit_errors"`` etc.) and would be the exact method name.
New names are now 'hesse' and 'errors', independent of the method used. This reflects better that the
methods, while internally different, produce the same result.
To update, use 'hesse' instead of 'minuit_hesse' or 'hesse_np' and 'errors' instead of 'zfit_errors'
or ``"minuit_minos"`` in order to access the uncertainties in the fitresult.
Currently, the old names are still available for backwards compatibility.
If a name was explicitly chosen in the error method, nothing changed.

Bug fixes and small changes
---------------------------
- KDE datasets are now correctly mirrored around observable space limits
- multinomial sampling would return wrong results when invoked multiple times in graph mode due to
a non-dynamic shape. This is fixed and the sampling is now working as expected.
- increase precision in FitResult string representation and add that the value is rounded


Thanks
------
- schmitse for finding and fixing a mirroring bug in the KDEs
- Sebastian Bysiak for finding a bug in the multinomial sampling

0.9.0a0

========

Major Features and Improvements
-------------------------------

- Binned fits support, although limited in content, is here! This includes BinnedData, binned PDFs, and
binned losses. TODO: extend to include changes/point to binned introduction.
- new Poisson PDF
- added Poisson constraint, LogNormal Constraint
- Save results by pickling, unpickling a frozen (``FitResult.freeze()``) result and using
``zfit.param.set_values(params, result)`` to set the values of ``params``.

Breaking changes
------------------

- params given in ComposedParameters are not sorted anymore. Rely on their name instead.
- ``norm_range`` is now called ``norm`` and should be replaced everywhere if possible. This will break in
the future.

Deprecation
-------------

Bug fixes and small changes
---------------------------
- remove warning when using ``rect_limits`` or similar.
- gauss integral accepts now also tensor inputs in limits
- parameters at limits is now shown correctly

Experimental
------------

Requirement changes
-------------------
- add TensorFlow 2.7 support

Thanks
------

0.8.3

===================
- fixate nlopt to < 2.7.1

0.8.2

====================

Bug fixes and small changes
---------------------------
- fixed a longstanding bug in the DoubleCB implementation of the integral.
- remove outdated deprecations

Page 5 of 11

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.