Beispiel #1
0
 def test_modelrecreation(self):
     par = toy_model()
     pcopy = GPRegression(par.X.copy(),
                          par.Y.copy(),
                          kernel=par.kern.copy())
     np.testing.assert_allclose(par.param_array, pcopy.param_array)
     np.testing.assert_allclose(par.gradient_full, pcopy.gradient_full)
     self.assertSequenceEqual(str(par), str(pcopy))
     self.assertIsNot(par.param_array, pcopy.param_array)
     self.assertIsNot(par.gradient_full, pcopy.gradient_full)
     self.assertTrue(pcopy.checkgrad())
     self.assert_(np.any(pcopy.gradient != 0.0))
     np.testing.assert_allclose(pcopy.param_array,
                                par.param_array,
                                atol=1e-6)
     par.randomize()
     with tempfile.TemporaryFile('w+b') as f:
         par.pickle(f)
         f.seek(0)
         pcopy = pickle.load(f)
     np.testing.assert_allclose(par.param_array, pcopy.param_array)
     np.testing.assert_allclose(par.gradient_full,
                                pcopy.gradient_full,
                                atol=1e-6)
     self.assertSequenceEqual(str(par), str(pcopy))
     self.assert_(pcopy.checkgrad())
Beispiel #2
0
 def test_modelrecreation(self):
     par = toy_model()
     pcopy = GPRegression(par.X.copy(), par.Y.copy(), kernel=par.kern.copy())
     np.testing.assert_allclose(par.param_array, pcopy.param_array)
     np.testing.assert_allclose(par.gradient_full, pcopy.gradient_full)
     self.assertSequenceEqual(str(par), str(pcopy))
     self.assertIsNot(par.param_array, pcopy.param_array)
     self.assertIsNot(par.gradient_full, pcopy.gradient_full)
     self.assertTrue(pcopy.checkgrad())
     self.assert_(np.any(pcopy.gradient!=0.0))
     np.testing.assert_allclose(pcopy.param_array, par.param_array, atol=1e-6)
     par.randomize()
     with tempfile.TemporaryFile('w+b') as f:
         par.pickle(f)
         f.seek(0)
         pcopy = pickle.load(f)
     np.testing.assert_allclose(par.param_array, pcopy.param_array)
     np.testing.assert_allclose(par.gradient_full, pcopy.gradient_full, atol=1e-6)
     self.assertSequenceEqual(str(par), str(pcopy))
     self.assert_(pcopy.checkgrad())
Beispiel #3
0
 def test_add_observer(self):
     par = toy_model()
     par.name = "original"
     par.count = 0
     par.add_observer(self, self._callback, 1)
     pcopy = GPRegression(par.X.copy(), par.Y.copy(), kernel=par.kern.copy())
     self.assertNotIn(par.observers[0], pcopy.observers)
     pcopy = par.copy()
     pcopy.name = "copy"
     self.assertTrue(par.checkgrad())
     self.assertTrue(pcopy.checkgrad())
     self.assertTrue(pcopy.kern.checkgrad())
     import ipdb;ipdb.set_trace()
     self.assertIn(par.observers[0], pcopy.observers)
     self.assertEqual(par.count, 3)
     self.assertEqual(pcopy.count, 6) # 3 of each call to checkgrad
Beispiel #4
0
 def test_add_observer(self):
     par = toy_model()
     par.name = "original"
     par.count = 0
     par.add_observer(self, self._callback, 1)
     pcopy = GPRegression(par.X.copy(),
                          par.Y.copy(),
                          kernel=par.kern.copy())
     self.assertNotIn(par.observers[0], pcopy.observers)
     pcopy = par.copy()
     pcopy.name = "copy"
     self.assertTrue(par.checkgrad())
     self.assertTrue(pcopy.checkgrad())
     self.assertTrue(pcopy.kern.checkgrad())
     import ipdb
     ipdb.set_trace()
     self.assertIn(par.observers[0], pcopy.observers)
     self.assertEqual(par.count, 3)
     self.assertEqual(pcopy.count, 6)  # 3 of each call to checkgrad