From 397f3ead2cb40fd3486134b4b671ebce426ee237 Mon Sep 17 00:00:00 2001 From: Siivola Eero Date: Wed, 27 Dec 2017 15:25:50 +0200 Subject: [PATCH] Multioutput kernel + initial test --- GPy/kern/__init__.py | 1 + GPy/kern/src/kern.py | 3 +++ GPy/testing/kernel_tests.py | 7 +++++++ 3 files changed, 11 insertions(+) diff --git a/GPy/kern/__init__.py b/GPy/kern/__init__.py index d8239910..96abab39 100644 --- a/GPy/kern/__init__.py +++ b/GPy/kern/__init__.py @@ -42,3 +42,4 @@ from .src.sde_standard_periodic import sde_StdPeriodic from .src.sde_static import sde_White, sde_Bias from .src.sde_stationary import sde_RBF,sde_Exponential,sde_RatQuad from .src.sde_brownian import sde_Brownian +from .src.multioutput_kern import MultioutputKern \ No newline at end of file diff --git a/GPy/kern/src/kern.py b/GPy/kern/src/kern.py index b9971b8c..bac85d58 100644 --- a/GPy/kern/src/kern.py +++ b/GPy/kern/src/kern.py @@ -206,6 +206,9 @@ class Kern(Parameterized): dtheta = self.psicomp.psiDerivativecomputations(self, dL_dpsi0, dL_dpsi1, dL_dpsi2, Z, variational_posterior)[0] self.gradient[:] = dtheta + def reset_gradients(self): + raise NotImplementedError + def gradients_Z_expectations(self, dL_dpsi0, dL_dpsi1, dL_dpsi2, Z, variational_posterior, psi0=None, psi1=None, psi2=None): """ diff --git a/GPy/testing/kernel_tests.py b/GPy/testing/kernel_tests.py index 053fce35..0d4db63b 100644 --- a/GPy/testing/kernel_tests.py +++ b/GPy/testing/kernel_tests.py @@ -482,6 +482,13 @@ class KernelGradientTestsContinuous(unittest.TestCase): k = GPy.kern.StdPeriodic(self.D) k.randomize() self.assertTrue(check_kernel_gradient_functions(k, X=self.X, X2=self.X2, verbose=verbose)) + + def test_MultioutputKern(self): + k1 = GPy.kern.RBF(self.D-1, ARD=True) + k1.randomize() + k2 = GPy.kern.RBF(self.D-1, ARD=True) + k2.randomize() + k = GPy.kern.MultioutputKern([k1,k2],) def test_Precomputed(self): Xall = np.concatenate([self.X, self.X2])