Skip to main content

Exploring and eliciting probability distributions

PyPi version Build Status codecov Ruff DOI

Overview

Prior elicitation refers to the process of transforming the knowledge of a particular domain into well-defined probability distributions. Specifying useful priors is a central aspect of Bayesian statistics. PreliZ is a Python package aimed at helping practitioners choose prior distributions by offering a set of tools for the various facets of prior elicitation. It covers a range of methods, from unidimensional prior elicitation on the parameter space to predictive elicitation on the observed space. The goal is to be compatible with probabilistic programming languages (PPL) in the Python ecosystem like PyMC and PyStan, while remaining agnostic of any specific PPL.

A good companion for PreliZ is PriorDB, a database of prior distributions for Bayesian analysis. It is a community-driven project that aims to provide a comprehensive collection of prior distributions for a wide range of models and applications.

The Zen of PreliZ

  • Being open source, community-driven, diverse and inclusive.
  • Avoid fully-automated solutions, keep the human in the loop.
  • Separate tasks between humans and computers, so users can retain control of important decisions while numerically demanding, error-prone or tedious tasks are automatized.
  • Prevent users to become overconfident in their own opinions.
  • Easily integrate with other tools.
  • Allow predictive elicitation.
  • Having a simple and intuitive interface suitable for non-specialists in order to minimize cognitive biases and heuristics.
  • Switching between different types of visualization such as kernel density estimates plots, quantile dotplots, histograms, etc.
  • Being agnostic of the underlying probabilistic programming language.
  • Being modular.

Documentation

The PreliZ documentation can be found in the official docs.

Installation

Last release

PreliZ is available for installation from PyPI. The latest version (base set of dependencies) can be installed using pip:

pip install preliz

To make use of the interactive features, you can install the optional dependencies:

  • For JupyterLab:
pip install "preliz[full,lab]"
  • For Jupyter Notebook:
pip install "preliz[full,notebook]"

PreliZ is also available through conda-forge.

conda install -c conda-forge preliz

Development

The latest development version can be installed from the main branch using pip:

pip install git+git://github.com/arviz-devs/preliz.git

Citation

If you find PreliZ useful in your work, we kindly request that you cite the following paper:

@article{Icazatti_2023,
author = {Icazatti, Alejandro and Abril-Pla, Oriol and Klami, Arto and Martin, Osvaldo A},
doi = {10.21105/joss.05499},
journal = {Journal of Open Source Software},
month = sep,
number = {89},
pages = {5499},
title = {{PreliZ: A tool-box for prior elicitation}},
url = {https://joss.theoj.org/papers/10.21105/joss.05499},
volume = {8},
year = {2023}
}

Contributions

PreliZ is a community project and welcomes contributions. Additional information can be found in the Contributing Readme

Code of Conduct

PreliZ wishes to maintain a positive community. Additional details can be found in the Code of Conduct

Donations

PreliZ, as other ArviZ-devs projects, is a non-profit project under the NumFOCUS umbrella. If you want to support PreliZ financially, you can donate here.

Sponsors

NumFOCUS

Release files for preliz 0.28.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for preliz 0.28.0
File Size Uploaded
preliz-0.28.0.tar.gz 461.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for preliz 0.28.0
File Interpreter ABI Platform
preliz-0.28.0-py3-none-any.whl Python 3 none any Details

Total release size:988.7 kB

Release files / preliz-0.28.0.tar.gz

Download URL preliz-0.28.0.tar.gz
Size 461.0 kB
Tags Source
SHA-256 checksum
How to use checksums
cca19395c2d647613a85ada114c5e3cc63b801dedcb49654cf97de7694a9cc37
BLAKE2b-256 checksum
How to use checksums
b6c7e5d865cc78b7c692599f8f5c7b1d8429c9a2e1616e41d79655ddbf699066
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / preliz-0.28.0-py3-none-any.whl

Download URL preliz-0.28.0-py3-none-any.whl
Size 527.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c3bd9edec7b5b527255d1931ee6ee1c7d93cada2e2671fb2dc6a2fda146a41de
BLAKE2b-256 checksum
How to use checksums
1b1e28d8ed4d6babee6b368029c0a62ab923eb61468ca9b78d2b6189f551d2b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.28.0 This release

2 release files

0.27.0

2 release files

0.25.0

2 release files

0.22.0

2 release files

0.20.0

2 release files

0.19.0

2 release files

0.18.0

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.3

2 release files

0.0.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page