HasGP-0.1: A Haskell library for inference using Gaussian processes



Gaussian Process Library. This module contains assorted functions that support the computation of covariance, constructing covariance matrices etc.

Covariance functions store log parameters. Functions are needed to return the covariance and its derivative. Derivatives are with respect to the actual parameters, NOT their logs.

Copyright (C) 2011 Sean Holden. sbh11@cl.cam.ac.uk.



class CovarianceFunction a whereSource


trueHyper :: a -> DVectorSource

The actual hyperparameter values.

The covariance

covariance :: a -> DVector -> DVector -> DoubleSource

Derivative of covariance with respect to parameters

dCovarianceDParameters :: a -> DVector -> DVector -> DVectorSource

Construct using log parameters.

makeCovarianceFromList :: a -> [Double] -> aSource

Get log parameters.

makeListFromCovariance :: a -> [Double]Source

covarianceMatrix :: CovarianceFunction c => c -> Inputs -> CovarianceMatrixSource

Construct a matrix of covariances from a covariance and a design matrix.

covarianceWithPoint :: CovarianceFunction c => c -> Inputs -> Input -> DVectorSource

Constructs the column vector required when a new input is included. Constructed as a matrix to avoid further work elsewhere.

covarianceWithPoints :: CovarianceFunction c => c -> Inputs -> [Input] -> [DVector]Source

covarianceWithPoint applied to a list of points to produce a list of vectors.