This is the repository associated to: Non-reversible Gaussian processes for identifying latent dynamical structure in neural data - NeurIPS (2020)
The repo contains three main classes:
- a Kernel class allowing one to build various d-dimensional non-reversible multi-output kernels
- a GPregression class to run GP regression on input data
- a GPFA class to run GPFA with reversible or non-reversible priors
- python-3
- scipy
- autograd
Class for building non-reversible kernels
Example of how to build and sample from a non-time-reversible kernel
python ./examples/draw_samples.py
Using kernel class build N-d multi-output GP non-rev GP.
Here covariances shown for N = 2
and with squared exponentials
marginals and sample draws.
Other marginals are available in class.
Basic class to run GP-regression using non-rev prior
Run GP regression on toy data, optimise and show posterior mean inferred on test data whilst only conditioning on one of the two observed variables.
python ./examples/gpregression_demo.py
a.k.a.: GPFA with non-reversible priors
Run GPFADS to unmix 2 dynamical processes and infer posterior mean on test data.