From 76a2d4ff1afc62dfed6f30dedfe375b64aa24ce0 Mon Sep 17 00:00:00 2001 From: Zhenwen Dai Date: Thu, 10 Sep 2015 15:22:05 +0100 Subject: [PATCH 1/2] add set_XY test --- GPy/testing/model_tests.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/GPy/testing/model_tests.py b/GPy/testing/model_tests.py index 1cfe8b48..97a47ac8 100644 --- a/GPy/testing/model_tests.py +++ b/GPy/testing/model_tests.py @@ -14,6 +14,12 @@ class MiscTests(unittest.TestCase): self.X = np.random.uniform(-3., 3., (self.N, 1)) self.Y = np.sin(self.X) + np.random.randn(self.N, self.D) * 0.05 self.X_new = np.random.uniform(-3., 3., (self.N_new, 1)) + + def test_setXY(self): + m = GPy.models.GPRegression(self.X, self.Y) + m.set_XY(np.vstack([self.X, np.random.rand(1,self.X.shape[1])]), np.vstack([self.Y, np.random.rand(1,self.Y.shape[1])])) + self.assertTrue(m.checkgrad()) + m.predict(m.X) def test_raw_predict(self): k = GPy.kern.RBF(1) From f573a5349ac3fcaf57bccfac4b0cbe4c949b488b Mon Sep 17 00:00:00 2001 From: Zhenwen Dai Date: Thu, 10 Sep 2015 15:29:28 +0100 Subject: [PATCH 2/2] bug fix for set_XY --- GPy/core/gp.py | 1 + GPy/testing/model_tests.py | 2 ++ 2 files changed, 3 insertions(+) diff --git a/GPy/core/gp.py b/GPy/core/gp.py index 903044b9..f3d1697d 100644 --- a/GPy/core/gp.py +++ b/GPy/core/gp.py @@ -154,6 +154,7 @@ class GP(Model): self.link_parameter(self.X) else: self.X = ObsAr(X) + self._predictive_variable = self.X self.update_model(True) def set_X(self,X): diff --git a/GPy/testing/model_tests.py b/GPy/testing/model_tests.py index 97a47ac8..0b74ddfb 100644 --- a/GPy/testing/model_tests.py +++ b/GPy/testing/model_tests.py @@ -17,7 +17,9 @@ class MiscTests(unittest.TestCase): def test_setXY(self): m = GPy.models.GPRegression(self.X, self.Y) + print m.X.shape, m.Y.shape m.set_XY(np.vstack([self.X, np.random.rand(1,self.X.shape[1])]), np.vstack([self.Y, np.random.rand(1,self.Y.shape[1])])) + m._trigger_params_changed() self.assertTrue(m.checkgrad()) m.predict(m.X)