Fast Direct Methods for Gaussian Processes

Sivaram Ambikasaran, Daniel Foreman-Mackey, Leslie Greengard, David W. Hogg, Michael O'Neil
3/24/2014
math.NAastro-ph.IMmath.ST

Official code: SAFRAN-LAB/HODLR (161 stars, last commit 2023-05-06).

Abstract

A number of problems in probability and statistics can be addressed using the multivariate normal (Gaussian) distribution. In the one-dimensional case, computing the probability for a given mean and variance simply requires the evaluation of the corresponding Gaussian density. In the $n$-dimensional setting, however, it requires the inversion of an $n \times n$ covariance matrix, $C$, as well as the evaluation of its determinant, $\det(C)$. In many cases, such as regression using Gaussian processes, the covariance matrix is of the form $C = σ^2 I + K$, where $K$ is computed using a specified covariance kernel which depends on the data and additional parameters (hyperparameters). The matrix $C$ is typically dense, causing standard direct methods for inversion and determinant evaluation to require $\mathcal O(n^3)$ work. This cost is prohibitive for large-scale modeling. Here, we show that for the most commonly used covariance functions, the matrix $C$ can be hierarchically factored into a product of block low-rank updates of the identity matrix, yielding an $\mathcal O (n\log^2 n) $ algorithm for inversion. More importantly, we show that this factorization enables the evaluation of the determinant $\det(C)$, permitting the direct calculation of probabilities in high dimensions under fairly broad assumptions on the kernel defining $K$. Our fast algorithm brings many problems in marginalization and the adaptation of hyperparameters within practical reach using a single CPU core. The combination of nearly optimal scaling in terms of problem size with high-performance computing resources will permit the modeling of previously intractable problems. We illustrate the performance of the scheme on standard covariance kernels.

View on arXivView PDF

Code Implementations(1)

SAFRAN-LAB/HODLROfficial100%

A fast, accurate direct solver and determinant computation for dense linear systems

16153C++, CMakeSep 16, 20133 years agoNOASSERTION
c-plus-plusfast-algorithmshierarchical-matrixkernelmatrices+1 more

Similar Papers

Cite this paper

@article{ambikasaran2014fast,
  title  = {Fast Direct Methods for Gaussian Processes},
  author = {Sivaram Ambikasaran and Daniel Foreman-Mackey and Leslie Greengard and David W. Hogg and Michael O'Neil},
  year   = {2014},
  eprint = {1403.6015},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1403.6015}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1403.6015.svg)](https://codeofpaper.com/paper/1403.6015)

Discussion