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 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
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:
(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.
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
To see what's changed in the latest release, see the CHANGELOG.
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.
PINTS is fully open source. For more information about its license, see LICENSE.
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.