This repository includes the official implementation of Actually Sparse Variational Gaussian processes, a sparse variational Gaussian process approximation, that utilises sparse linear algebra to efficiently scale low-dimensional Matern Gaussian processes to large numbers of datapoints.
Our implementation is built upon GPFlow and banded_matrices packages.
If you find this repository useful, please cite our paper
@inproceedings{cunningham2023actually,
title={Actually Sparse Variational Gaussian Processes},
author={Cunningham, Harry Jake and de Souza, Daniel Augusto and Takao, So and van der Wilk, Mark and Deisenroth, Marc Peter},
booktitle={International Conference on Artificial Intelligence and Statistics},
pages={10395--10408},
year={2023},
organization={PMLR}
}
Our package requires installation of a development branch of banded_matrices which is written in C++
- Create fresh conda environement
conda create -n venv python=3.7
conda activate venv
- Install tensorflow=2.4
pip install tensorflow==2.4
- Clone
banded_matrices
package
git clone --branch awav/fix-banded-hashable-tensor https://github.com/secondmind-labs/banded_matrices.git
cd banded_matrices
- Build python
banded_matrices
package (Note that his requires gcc version 7)
python setup.py sdist bdist_wheel
- Install
banded_matrices
package
pip install dist/banded_matrices-0.0.6-*.whl
- Install remaining requirements
pip install -r requirements.txt
pip install -e .