Scalable pythonic fitting#
Getting started
Tutorials
The zfit package is a model fitting library based on TensorFlow and optimised for simple and direct manipulation of probability density functions. The main focus is on the scalability, parallelisation and a user friendly experience framework (no cython, no C++ needed to extend).
This challenging task is tackled by following two basic design pillars:
The skeleton and extension of the code is minimalist, simple and finite: the zfit library is exclusively designed for the purpose of model fitting and sampling, leaving features such as statistical methods or plotting to other libraries.. This design philosophy is well exemplified by examining maximum likelihood fits: zfit works as a backend for likelihood fits and can be integrated to packages such as hepstats and matplotlib
zfit is its design for optimal parallelisation and scalability. Even though the choice of TensorFlow as backend introduces a strong software dependency, its use provides several interesting features in the context of model fitting. It allows to run on CPU, GPU, automatic gradients and many more things.
The zfit package is Free software, using an Open Source license. Both the software and this document are works in progress. Source code can be found in our github page.
Why the name, zfit? Maybe “z” like the “last fitter”? Day Z? Zorro? We don’t know. In the end, it’s a short, catchy name that is easy to remember and type. The rest is history.
Hint
What’s new?: Changelog and other new features of zfit.
Getting started: Installation guide, quickstart and examples.
API reference: Dive deep into the API.
Project: Learn who wrote zfit, how to contribute and other information about the project.
Ask a question: Does exactly what it says on the tin.
If you have suggestions, contact us on our Gitter channel or open an issue on GitHub.
Thanks to pandas for open sourcing pydata-sphinx-theme.