get_gaussian_process_predictive_distribution - Computes the predictive distribution of a GP


#include "gp/gp_gaussian_processes.h"

Example compile flags (system dependent):
   -L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
  -lKJB                               -lfftw3  -lgsl -lgslcblas -ljpeg  -lSVM -lstdc++                    -lpthread -lSLATEC -lg2c    -lacml -lacml_mv -lblas -lg2c      -lncursesw 

int get_gaussian_process_predictive_distribution
	Vector **mu,
	Matrix **sigma,
	const Vector_vector *train_indices,
	const Vector_vector *train_data,
	double noise_sigma,
	const Vector_vector *test_indices,
	int (*cov_func)(Matrix **,const Vector *,const Vector *,const void *,int),
	const void *hyper_params


This routine computes the predictive distribution of a Gaussian process, whose covariance function is given by cov_func. mu is the mean and sigma is covariance matrix of the distribution. The necessary information to compute the predictive distribution is: train_indices - the indices where the training data comes from train_data - the training data noise_sigma - the variance of the gaussian noise process test_indices - where the prediction will take place. Naturally, the vectors of test_indices must all be of equal length, as must the vectors of train_indices and train_data, and cov_func must return square matrix of dimension d. If the vector pointed to by sample is NULL, then a vector of the appropriate size is created. If it exists, but is the wrong size, then it is recreated. Otherwise, the storage is recycled.


If the routine fails (due to storage allocation, an error in the covariance function, or a mismatch in the sizes of the indices), then ERROR is returned with and error message being set. Otherwise NO_ERROR is returned.


This software is not adequatedly tested. It is recomended that results are checked independantly where appropriate.


Ernesto Brau


Ernesto Brau


fill_covariance_matrix , fill_mean_vector , sample_from_gaussian_process_prior , sample_from_gaussian_process_prior_i , sample_from_gaussian_process_predictive , sample_from_gaussian_process_predictive_i , get_gaussian_process_predictive_distribution_i , get_gaussian_process_posterior_distribution , get_gaussian_process_posterior_distribution_i , compute_gaussian_process_likelihood , compute_gaussian_process_likelihood_i , compute_gaussian_process_marginal_likelihood , compute_gaussian_process_marginal_likelihood_i , compute_gaussian_process_marginal_log_likelihood , compute_gaussian_process_marginal_log_likelihood_i