/pybefit

Probabilistic inference for models of behaviour

Primary LanguagePythonMIT LicenseMIT

Probabilistic inference for models of behaviour

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

PyBefit is a Python library for Bayesian analysis of behavioral data. It is based on Pyro/Numpyro a probabilistic programing language, PyTorch, and Jax machine learning libraries.

Requirements

pyro
pytorch
numpyro
jax
[Optional]
 - matplolib
 - seaborn
 - arviz
 - jupyterlab

Installation

To install PyBefit with CPU-only versions of JAX and PyTorch you can run

pip install pip --upgrade
pip install pybefit --upgrade

Conda installation

To install either JAX or Pytorch with Nvidia GPU support we recomment using anaconda package manager. First create pybefit environment and activate it

conda create -n befit python=3.11
conda activate befit

Then follow instructions for installing JAX or Pytorch with GPU support.

Finally install pybefit via pip within the conda environment

pip install pip --upgrade
pip install pybefit --upgrade

For development you can install pybefit directly from repo as follows

git clone https://github.com/dimarkov/pybefit.git
cd pybefit
pip install pip --upgrade
pip install -e .

Examples

PyBefit is used as a basis for several projects:

License

See license