Training Gaussian process with zero noise on training data

10 views (last 30 days)
Hi,
I would like to use the ftrgp function to fit a Gaussian process with perfectly-known training data. I.e. I would like to force the noise variance to zero. However, as far as I can see, I can only set the initial value of the noise variance, and I can't modify the RegressionGP object. Does this mean that it is not possible to set noise variance to zero? In the GP reference page there is a figure (bottom on the left) where the GP looks to have been trained with zero noise on the training data.
I saw a similar question here, but in the response the solution was to set the initial noise variance to be low. So the solution was only to have low noise, not zero noise.
Can anyone help me with my problem or at least confirm that it is not possible to set noise to zero?
Thanks, William

Answers (1)

Dongyang Li
Dongyang Li on 29 Dec 2021
The noise variance must be positive, but we can force Sigma to be a extrem small number so it is nearly noise free. Try adding these commands
gprMdl = fitrgp(x,y,'SigmaLowerBound',0.00001,'Sigma',0.0001,'ConstantSigma',true);

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!