diff --git a/GPy/likelihoods/Gaussian.py b/GPy/likelihoods/Gaussian.py index b76fd42f..9a992ac1 100644 --- a/GPy/likelihoods/Gaussian.py +++ b/GPy/likelihoods/Gaussian.py @@ -19,12 +19,12 @@ class Gaussian(likelihood): self._std = np.ones((1,D)) self.Y = self.data - # if self.D > self.N: - self.YYT = np.dot(self.Y,self.Y.T) - self.trYYT = np.trace(self.YYT) - # else: - # self.YYT = None - # self.trYYT = None + if D > self.N: + self.YYT = np.dot(self.Y,self.Y.T) + self.trYYT = np.trace(self.YYT) + else: + self.YYT = None + self.trYYT = None self._set_params(np.asarray(variance)) diff --git a/GPy/models/sparse_GP.py b/GPy/models/sparse_GP.py index 3239d462..b822441e 100644 --- a/GPy/models/sparse_GP.py +++ b/GPy/models/sparse_GP.py @@ -49,6 +49,9 @@ class sparse_GP(GP): self.has_uncertain_inputs=True self.X_uncertainty = X_uncertainty + if not self.likelihood.is_heteroscedastic: + self.likelihood.trYYT = np.trace(np.dot(self.likelihood.Y, self.likelihood.Y.T)) # TODO: something more elegant here? + GP.__init__(self, X, likelihood, kernel=kernel, normalize_X=normalize_X, Xslices=Xslices) #normalise X uncertainty also