PreliZ

PreliZ: A tool-box for prior elicitation - Published in JOSS (2023)

https://github.com/arviz-devs/preliz

Science Score: 98.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 6 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

bayesian-data-analysis bayesian-statistics prior-distribution prior-elicitation probability-distribution statistics

Keywords from Contributors

closember
Last synced: 4 months ago · JSON representation ·

Repository

Exploring and eliciting probability distributions

Basic Info
Statistics
  • Stars: 145
  • Watchers: 12
  • Forks: 12
  • Open Issues: 14
  • Releases: 37
Topics
bayesian-data-analysis bayesian-statistics prior-distribution prior-elicitation probability-distribution statistics
Created almost 4 years ago · Last pushed 4 months ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation

README.md

Exploring and eliciting probability distributions

PyPi version Build Status codecov Code style: black 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

Owner

  • Name: ArviZ
  • Login: arviz-devs
  • Kind: organization

JOSS Publication

PreliZ: A tool-box for prior elicitation
Published
September 22, 2023
Volume 8, Issue 89, Page 5499
Authors
Alejandro Icazatti ORCID
IMASL-CONICET. Universidad Nacional de San Luis. San Luis, Argentina
Oriol Abril-Pla ORCID
Independent Researcher, Spain, Department of Computer Science, University of Helsinki, Finland
Arto Klami ORCID
Department of Computer Science, University of Helsinki, Finland
Osvaldo A. Martin ORCID
IMASL-CONICET. Universidad Nacional de San Luis. San Luis, Argentina
Editor
Olexandr Konovalov ORCID
Tags
Bayesian statistics prior elicitation

Citation (CITATION.cff)

cff-version: "1.2.0"
authors:
- family-names: Icazatti
  given-names: Alejandro
  orcid: "https://orcid.org/0000-0003-1491-7330"
- family-names: Abril-Pla
  given-names: Oriol
  orcid: "https://orcid.org/0000-0002-1847-9481"
- family-names: Klami
  given-names: Arto
  orcid: "https://orcid.org/0000-0002-7950-1355"
- family-names: Martin
  given-names: Osvaldo A
  orcid: "https://orcid.org/0000-0001-7419-8978"
contact:
- family-names: Martin
  given-names: Osvaldo A
  orcid: "https://orcid.org/0000-0001-7419-8978"
doi: 10.5281/zenodo.8368516
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Icazatti
    given-names: Alejandro
    orcid: "https://orcid.org/0000-0003-1491-7330"
  - family-names: Abril-Pla
    given-names: Oriol
    orcid: "https://orcid.org/0000-0002-1847-9481"
  - family-names: Klami
    given-names: Arto
    orcid: "https://orcid.org/0000-0002-7950-1355"
  - family-names: Martin
    given-names: Osvaldo A
    orcid: "https://orcid.org/0000-0001-7419-8978"
  date-published: 2023-09-22
  doi: 10.21105/joss.05499
  issn: 2475-9066
  issue: 89
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 5499
  title: "PreliZ: A tool-box for prior elicitation"
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.05499"
  volume: 8
title: "PreliZ: A tool-box for prior elicitation"

GitHub Events

Total
  • Create event: 7
  • Release event: 8
  • Issues event: 38
  • Watch event: 55
  • Member event: 1
  • Issue comment event: 123
  • Push event: 111
  • Pull request review event: 101
  • Pull request review comment event: 105
  • Pull request event: 182
  • Fork event: 5
Last Year
  • Create event: 7
  • Release event: 8
  • Issues event: 38
  • Watch event: 55
  • Member event: 1
  • Issue comment event: 123
  • Push event: 111
  • Pull request review event: 101
  • Pull request review comment event: 105
  • Pull request event: 182
  • Fork event: 5

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 579
  • Total Committers: 10
  • Avg Commits per committer: 57.9
  • Development Distribution Score (DDS): 0.321
Past Year
  • Commits: 165
  • Committers: 7
  • Avg Commits per committer: 23.571
  • Development Distribution Score (DDS): 0.467
Top Committers
Name Email Commits
Osvaldo A Martin a****a@g****m 393
Alejandro Icazatti a****i@g****m 113
Rohan Babbar r****8@y****m 58
Oriol Abril-Pla o****a@g****m 6
Nishant Rajadhyaksha 7****1 3
Christine P. Chai s****p@g****m 2
pdb5627 p****7 1
Olexandr Konovalov 5****v 1
Ari Hartikainen a****n 1
Advait 1****4 1

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 110
  • Total pull requests: 626
  • Average time to close issues: 3 months
  • Average time to close pull requests: 1 day
  • Total issue authors: 21
  • Total pull request authors: 9
  • Average comments per issue: 1.5
  • Average comments per pull request: 0.73
  • Merged pull requests: 573
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 27
  • Pull requests: 233
  • Average time to close issues: 9 days
  • Average time to close pull requests: 1 day
  • Issue authors: 11
  • Pull request authors: 7
  • Average comments per issue: 0.74
  • Average comments per pull request: 0.68
  • Merged pull requests: 207
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • aloctavodia (77)
  • aleicazatti (5)
  • rohanbabbar04 (4)
  • jessegrabowski (3)
  • djmannion (3)
  • ricardoV94 (3)
  • jungtaekkim (1)
  • upandacross (1)
  • williambdean (1)
  • andins (1)
  • random-walkie (1)
  • ivaquero (1)
  • hectormz (1)
  • pdb5627 (1)
  • OriolAbril (1)
Pull Request Authors
  • aloctavodia (349)
  • aleicazatti (138)
  • rohanbabbar04 (116)
  • nishant42491 (8)
  • star1327p (5)
  • OriolAbril (5)
  • Advaitgaur004 (2)
  • pdb5627 (2)
  • olexandr-konovalov (1)
Top Labels
Issue Labels
documentation (5) good first issue (4) enhancement (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 32,274 last-month
  • Total dependent packages: 1
  • Total dependent repositories: 3
  • Total versions: 36
  • Total maintainers: 2
pypi.org: preliz

Exploring and eliciting probability distributions.

  • Versions: 36
  • Dependent Packages: 1
  • Dependent Repositories: 3
  • Downloads: 32,274 Last month
Rankings
Dependent repos count: 9.0%
Dependent packages count: 10.0%
Average: 11.1%
Downloads: 14.3%
Maintainers (2)
Last synced: 4 months ago

Dependencies

.github/workflows/publish-to-test-pypi.yml actions
  • actions/checkout master composite
  • actions/setup-python v3 composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/test.yml actions
  • actions/checkout v2 composite
  • codecov/codecov-action v1 composite
  • conda-incubator/setup-miniconda v2 composite
pyproject.toml pypi
  • arviz *
  • ipympl *
  • ipywidgets *
  • matplotlib >=3.5
  • nbclient <0.6,>=0.2
  • numpy >=1.22
  • scipy >=1.9.1
requirements-dev.txt pypi
  • black ==22.3.0 development
  • click ==8.0.4 development
  • ipytest ==0.13.0 development
  • nbconvert ===6.5.4 development
  • nbformat ==5.1.3 development
  • pre-commit >=2.19 development
  • pylint ==2.10.2 development
  • pytest >=4.4.0 development
  • pytest-cov >=2.6.1 development
requirements-docs.txt pypi
  • myst-nb *
  • pydata-sphinx-theme >=0.6.3
  • sphinx >=4
  • sphinx-copybutton *
  • sphinx_thebe *