def test_Kgrad_activation(self): self._cov.act_length = False def func(x, i): self._cov.scale = x[i] return self._cov.K() def grad(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(0) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.0) self._cov.act_scale = False self._cov.act_length = True def func(x, i): self._cov.length = x[i] return self._cov.K() def grad(x, i): self._cov.length = x[i] return self._cov.K_grad_i(0) x0 = np.array([self._cov.length]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.0)
def test_Kgrad(self): def func(x, i): self._cov.scale = x[i] return self._cov.K() def grad(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(0) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0, decimal=5) def func(x, i): self._cov.length = x[i] return self._cov.K() def grad(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(1) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0)
def test_penalty(self): self._cov.setPenalty(10.,2.) def func(x, i): self._cov.scale = x[i] return self._cov.K() def grad(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(0) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0, decimal=5) def func(x, i): self._cov.length = x[i] return self._cov.K() def grad(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(1) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0)
def test_Kgrad_activation(self): self._cov.act_length = False def func(x, i): self._cov.scale = x[i] return self._cov.K() def grad(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(0) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.) self._cov.act_scale = False self._cov.act_length = True def func(x, i): self._cov.length = x[i] return self._cov.K() def grad(x, i): self._cov.length = x[i] return self._cov.K_grad_i(0) x0 = np.array([self._cov.length]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.)
def test_Kgrad(self): def func(x, i): self._cov.scale = x[i] return self._cov.K() def grad(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(0) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.) def func(x, i): self._cov.length = x[i] return self._cov.K() def grad(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(1) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0)
def test_grad_activation(self): gp = self.gp self.Cg._K_act = False def func(x, i): params = gp.getParams() params['covar'] = x gp.setParams(params) return gp.LML() def grad(x, i): params = gp.getParams() params['covar'] = x gp.setParams(params) grad = gp.LML_grad() return grad['covar'][i] x0 = gp.getParams()['covar'] err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal=4) self.Cg._K_act = True self.Cn._K_act = False def func(x, i): params = gp.getParams() params['covar'] = x gp.setParams(params) return gp.LML() def grad(x, i): params = gp.getParams() params['covar'] = x gp.setParams(params) grad = gp.LML_grad() return grad['covar'][i] x0 = gp.getParams()['covar'] err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal=4)
def test_logdet_grad(self): def func(x, i): self.C.setParams(x) return self.C.logdet() def grad(x, i): self.C.setParams(x) return self.C.logdet_grad_i(i) x0 = self.C.getParams() err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal=5)
def test_logdet_grad(self): def func(x, i): self.C.setParams(x) return self.C.logdet() def grad(x, i): self.C.setParams(x) return self.C.logdet_grad_i(i) x0 = self.C.getParams() err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal = 3)
def test_Khess(self): def func(x, i): self._cov.scale = x[i] return self._cov.K_grad_i(0) def grad(x, i): self._cov.scale = x[i] return self._cov.K_hess_i_j(0, 0) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal=5) def func(x, i): self._cov.length = x[i] return self._cov.K_grad_i(0) def grad(x, i): self._cov.length = x[i] return self._cov.K_hess_i_j(0, 1) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal=5) def func(x, i): self._cov.length = x[i] return self._cov.K_grad_i(1) def grad(x, i): self._cov.length = x[i] return self._cov.K_hess_i_j(1, 1) x0 = np.array([self._cov.scale]) err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal=5)
def test_Kgrad(self): cov = self._cov def func(x, i): cov.setParams(x) return cov.K() def grad(x, i): cov.setParams(x) return cov.K_grad_i(i) x0 = cov.getParams() err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.)
def test_softKronKgrad(self): cov = self._cov cov.Iok = self._Iok def func(x, i): cov.setParams(x) return cov.K() def grad(x, i): cov.setParams(x) return cov.K_grad_i(i) x0 = cov.getParams() err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal=5)
def test_Khess(self): cov = self._cov for j in range(cov.getNumberParams()): def func(x, i): cov.setParams(x) return cov.K_grad_i(j) def grad(x, i): cov.setParams(x) return cov.K_hess_i_j(j, i) x0 = cov.getParams() err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.)
def test_Khess(self): cov = self.C for j in range(cov.getNumberParams()): def func(x, i): cov.setParams(x) return cov.K_grad_i(j) def grad(x, i): cov.setParams(x) return cov.K_hess_i_j(j, i) x0 = cov.getParams() err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.)
def test_grad(self): from limix.utils.check_grad import mcheck_grad def func(x, i): params = self.getParams() params['covar'] = x self.setParams(params) return self.LML() def grad(x, i): params = self.getParams() params['covar'] = x self.setParams(params) grad = self.LML_grad() return grad['covar'][i] x0 = self.getParams()['covar'] err = mcheck_grad(func, grad, x0) print err
def test_grad(self): gp = self._gp def func(x, i): params = gp.getParams() params["covar"] = x gp.setParams(params) return gp.LML() def grad(x, i): params = gp.getParams() params["covar"] = x gp.setParams(params) grad = gp.LML_grad() return grad["covar"][i] x0 = gp.getParams()["covar"] err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0.0, decimal=5)
def test_grad_gpbase_missdata(self): gp = self._gpm def func(x, i): params = gp.getParams() params['covar'] = x gp.setParams(params) return gp.LML() def grad(x, i): params = gp.getParams() params['covar'] = x gp.setParams(params) grad = gp.LML_grad() return grad['covar'][i] x0 = gp.getParams()['covar'] err = mcheck_grad(func, grad, x0) np.testing.assert_almost_equal(err, 0., decimal=5)