0

I am trying to run a GP classification multi-target task with the GPML Matlab library. I used a sum of two covariance functions - the RBF and Linear. However, my results do not fall nicely within the predictive probabilistic range. I suspect it is something to do with how I am working the covariance function. Any assistance is much appreciated.

% Import data and the results across the 6 frequencies
X = [61 43  72  -5  59  97;
    106 64  2   26  21  -5;
    40  120 48  120 120 28;
    120 79  80  47  32  97;
    73  28  120 72  -5  34;
    -5  -5  -5  24  69  120]

y = [-1 -1  1   -1  -1  1;
    1   -1  -1  -1  -1  -1;
    -1  1   -1  1   1   -1;
    1   1   1   -1  -1  1;
    -1  -1  1   1   -1  -1;
    -1  -1  -1  -1  1   1]

% This is sample test data to run predictions on, the test set
% 6 finely spaced grid
sample = repmat((-5:120)',1,6); 

% Initialise GP
meanfunc = @meanConst;
hyp.mean = 0;

% The covariance function
covfunc = {'covSum', {'covSEiso','covLIN'}}; % sum of linear, RBF
ell = 1.0; % length-scale for covSEiso
hyp.cov = log([ell ell]); % kernel hyperparameters
likfunc = @likErf; % cumulative Gaussian likelihood
    
% Optimise the hyperparameters
hyp = minimize(hyp, @gp, -50, @infLaplace, meanfunc, covfunc, likfunc, X, y);
    
% Run predictions on the sample data
[ymu, ys2, fmu, fs2] = gp(hyp, @infLaplace, meanfunc, covfunc, likfunc, X, y, sample);
    
  • **Update**: I was trying to run this with 84 columns (X) and the corresponding 84-column response set (y). But running this gives me the results I want. Hence, I infer that the GP does not like really wide datasets. – Hossana Twinomurinzi Oct 10 '22 at 04:10

0 Answers0