From ffa1879cfc7cb93b7921e33ce11029bd5efa7f8c Mon Sep 17 00:00:00 2001 From: Nicolo Fusi Date: Fri, 12 Apr 2013 13:32:18 +0100 Subject: [PATCH] added automatic scale_factor to sparse GPs --- GPy/models/sparse_GP.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/GPy/models/sparse_GP.py b/GPy/models/sparse_GP.py index 88abf77d..cebcba0b 100644 --- a/GPy/models/sparse_GP.py +++ b/GPy/models/sparse_GP.py @@ -36,7 +36,7 @@ class sparse_GP(GP): def __init__(self, X, likelihood, kernel, Z, X_variance=None, Xslices=None,Zslices=None, normalize_X=False): self.scale_factor = 100.0# a scaling factor to help keep the algorithm stable - + self.auto_scale_factor = False self.Z = Z self.Zslices = Zslices self.Xslices = Xslices @@ -184,6 +184,8 @@ class sparse_GP(GP): self.kern._set_params(p[self.Z.size:self.Z.size+self.kern.Nparam]) self.likelihood._set_params(p[self.Z.size+self.kern.Nparam:]) self._compute_kernel_matrices() + if self.auto_scale_factor: + self.scale_factor = np.sqrt(self.psi2.sum(0).mean()*self.likelihood.precision) self._computations() def _get_params(self):