All Projects → pints-team → Pints

pints-team / Pints

Licence: other
Probabilistic Inference on Noisy Time Series

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Pints

Uncertainty Baselines
High-quality implementations of standard and SOTA methods on a variety of tasks.
Stars: ✭ 278 (+133.61%)
Mutual labels:  bayesian-methods
Deepbayes
Bayesian methods in deep learning Summer School
Stars: ✭ 15 (-87.39%)
Mutual labels:  bayesian-methods
Nimble
The base NIMBLE package for R
Stars: ✭ 95 (-20.17%)
Mutual labels:  bayesian-methods
Probability
Probabilistic reasoning and statistical analysis in TensorFlow
Stars: ✭ 3,550 (+2883.19%)
Mutual labels:  bayesian-methods
Probabilistic Programming And Bayesian Methods For Hackers
aka "Bayesian Methods for Hackers": An introduction to Bayesian methods + probabilistic programming with a computation/understanding-first, mathematics-second point of view. All in pure Python ;)
Stars: ✭ 23,912 (+19994.12%)
Mutual labels:  bayesian-methods
Bayesian Machine Learning
Notebooks about Bayesian methods for machine learning
Stars: ✭ 1,202 (+910.08%)
Mutual labels:  bayesian-methods
multi channel bpr
Implementation of Bayesian Personalized Ranking (BPR) for Multiple Feedback Channels
Stars: ✭ 25 (-78.99%)
Mutual labels:  bayesian-methods
Pymc3 vs pystan
Personal project to compare hierarchical linear regression in PyMC3 and PyStan, as presented at http://pydata.org/london2016/schedule/presentation/30/ video: https://www.youtube.com/watch?v=Jb9eklfbDyg
Stars: ✭ 110 (-7.56%)
Mutual labels:  bayesian-methods
Rhat ess
Rank-normalization, folding, and localization: An improved R-hat for assessing convergence of MCMC
Stars: ✭ 19 (-84.03%)
Mutual labels:  bayesian-methods
Probflow
A Python package for building Bayesian models with TensorFlow or PyTorch
Stars: ✭ 95 (-20.17%)
Mutual labels:  bayesian-methods
Edward2
A simple probabilistic programming language.
Stars: ✭ 419 (+252.1%)
Mutual labels:  bayesian-methods
Edward
A probabilistic programming language in TensorFlow. Deep generative models, variational inference.
Stars: ✭ 4,674 (+3827.73%)
Mutual labels:  bayesian-methods
Forneylab.jl
Julia package for automatically generating Bayesian inference algorithms through message passing on Forney-style factor graphs.
Stars: ✭ 87 (-26.89%)
Mutual labels:  bayesian-methods
Rstanarm
rstanarm R package for Bayesian applied regression modeling
Stars: ✭ 285 (+139.5%)
Mutual labels:  bayesian-methods
Toolbox
A Java Toolbox for Scalable Probabilistic Machine Learning
Stars: ✭ 105 (-11.76%)
Mutual labels:  bayesian-methods
Bayesab
🐢 bayesAB: Fast Bayesian Methods for A/B Testing
Stars: ✭ 273 (+129.41%)
Mutual labels:  bayesian-methods
Da Tutorials
Course on data assimilation (DA)
Stars: ✭ 43 (-63.87%)
Mutual labels:  bayesian-methods
Rethinking Pyro
Statistical Rethinking with PyTorch and Pyro
Stars: ✭ 116 (-2.52%)
Mutual labels:  bayesian-methods
Loo
loo R package for approximate leave-one-out cross-validation (LOO-CV) and Pareto smoothed importance sampling (PSIS)
Stars: ✭ 106 (-10.92%)
Mutual labels:  bayesian-methods
Bayesian Cognitive Modeling In Pymc3
PyMC3 codes of Lee and Wagenmakers' Bayesian Cognitive Modeling - A Pratical Course
Stars: ✭ 93 (-21.85%)
Mutual labels:  bayesian-methods

Unit tests on multiple python versions Unit tests on multiple operating systems codecov Functional testing code Functional testing results binder readthedocs BCH compliance

What is Pints?

PINTS (Probabilistic Inference on Noisy Time-Series) is a framework for optimisation and Bayesian inference on ODE models of noisy time-series, such as arise in electrochemistry and cardiac electrophysiology.

PINTS is described in this publication in JORS, and can be cited using the information given in our CITATION file. More information about PINTS papers can be found in the papers directory.

Using PINTS

PINTS can work with any model that implements the pints.ForwardModel interface. This has just two methods:

n_parameters() --> Returns the dimension of the parameter space.

simulate(parameters, times) --> Returns a vector of model evaluations at
                                the given times, using the given parameters

Experimental data sets in PINTS are defined simply as lists (or arrays) of times and corresponding experimental values. If you have this kind of data, and if your model (or model wrapper) implements the two methods above, then you are ready to start using PINTS to infer parameter values using optimisation or sampling.

A brief example is shown below:
An example of using PINTS in an optimisation
(Left) A noisy experimental time series and a computational forward model. (Right) Example code for an optimisation problem. The full code can be viewed here but a friendlier, more elaborate, introduction can be found on the examples page.

A graphical overview of the methods included in PINTS can be viewed here.

Examples and documentation

PINTS comes with a number of detailed examples, hosted here on github. In addition, there is a full API documentation, hosted on readthedocs.io.

Installing PINTS

The latest release of PINTS can be installed without downloading (cloning) the git repository, by opening a console and typing

$ pip install --upgrade pip
$ pip install pints

Note that you'll need Python 3.5+ (preferred), or failing that, Python 2.7.

If you prefer to have the latest cutting-edge version, you can instead install from the repository, by typing

$ git clone https://github.com/pints-team/pints.git
$ cd pints
$ pip install -e .[dev,docs]

To uninstall again, type:

$ pip uninstall pints

What's new in this version of PINTS?

To see what's changed in the latest release, see the CHANGELOG.

Contributing to PINTS

If you'd like to help us develop PINTS by adding new methods, writing documentation, or fixing embarassing bugs, please have a look at these guidelines first.

License

PINTS is fully open source. For more information about its license, see LICENSE.

Get in touch

Questions, suggestions, or bug reports? Open an issue and let us know.

Alternatively, feel free to email us at pints at maillist.ox.ac.uk.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].