GaussianProcesses.jl:A Nonparametric Bayes package for the Julia Language

Fairbrother, Jamie and Nemeth, Christopher and Rischard, Maxime and Brea, Johanni and Pinder, Thomas (2018) GaussianProcesses.jl:A Nonparametric Bayes package for the Julia Language. arXiv.

Text (1812.09064v2)
1812.09064v2.pdf - Published Version
Available under License Creative Commons Attribution-NonCommercial.

Download (2MB)


Gaussian processes are a class of flexible nonparametric Bayesian tools that are widely used across the sciences, and in industry, to model complex data sources. Key to applying Gaussian process models is the availability of well-developed open source software, which is available in many programming languages. In this paper, we present a tutorial of the GaussianProcesses.jl package that has been developed for the Julia programming language. GaussianProcesses.jl utilises the inherent computational benefits of the Julia language, including multiple dispatch and just-in-time compilation, to produce a fast, flexible and user-friendly Gaussian processes package. The package provides many mean and kernel functions with supporting inference tools to fit exact Gaussian process models, as well as a range of alternative likelihood functions to handle non-Gaussian data (e.g. binary classification models) and sparse approximations for scalable Gaussian processes. The package makes efficient use of existing Julia packages to provide users with a range of optimization and plotting tools.

Item Type:
Journal Article
Journal or Publication Title:
Additional Information:
32 pages, 10 figures. Updated version includes sparse GPs
ID Code:
Deposited By:
Deposited On:
10 Feb 2020 11:15
Last Modified:
08 May 2021 05:13