celerite is an algorithm for fast and scalable Gaussian Process (GP) Regression in one dimension and this library, celerite2 is a re-write of the original celerite project to improve numerical stability and integration with various machine learning frameworks. This implementation includes interfaces in Python and C++, with full support for Theano/PyMC3 and JAX.

This documentation won’t teach you the fundamentals of GP modeling but the best resource for learning about this is available for free online: Rasmussen & Williams (2006). Similarly, the celerite algorithm is restricted to a specific class of covariance functions (see the original paper for more information and a recent generalization for extensions to structured two-dimensional data). If you need scalable GPs with more general covariance functions, GPyTorch might be a good choice.

celerite2 is being actively developed in a public repository on GitHub so if you have any trouble, open an issue there.

License & attribution

Copyright 2020 Daniel Foreman-Mackey.

The source code is made available under the terms of the MIT license.

If you make use of this code, please cite the relevant papers: Citing celerite2