def test_compute_k(self): """Tests if k is correctly computed. """ S = self.S_2x3 new_s = np.array([[0, 1, 2]]) exponent = (-self.a_1 * np.power(npla.norm(new_s - S, axis=1), 2) / (2 * (self.sigma_05 ** 2))) expected_k = np.exp(exponent) expected_k = np.array([expected_k]).T crkr = CrKr(S, self.C_2x2, self.D_2x3, self.ridge_factor_05, self.sigma_05, self.a_1) result_k = crkr._compute_k(new_s) assert_equal(expected_k.shape, result_k.shape) assert_true(np.allclose(expected_k, result_k))
def test_compute_k(self): """Tests if k is correctly computed. """ S = self.S_2x3 new_s = np.array([[0, 1, 2]]) exponent = (-self.a_1 * np.power(npla.norm(new_s - S, axis=1), 2) / (2 * (self.sigma_05**2))) expected_k = np.exp(exponent) expected_k = np.array([expected_k]).T crkr = CrKr(S, self.C_2x2, self.D_2x3, self.ridge_factor_05, self.sigma_05, self.a_1) result_k = crkr._compute_k(new_s) assert_equal(expected_k.shape, result_k.shape) assert_true(np.allclose(expected_k, result_k))
def test_delta_mean(self): """Tests if delta mean is correctly computed. """ S = self.S_2x3 C = self.C_2x2 D = self.D_2x3 ridge_factor = self.ridge_factor_05 sigma = self.sigma_05 a = self.a_1 crkr = CrKr(S, C, D, ridge_factor, sigma, a) new_s = np.array([[0, 0, 0]]) k = crkr._compute_k(new_s) K = crkr._compute_K() expected_dm = np.dot(k.T, np.dot(np.linalg.inv(K + ridge_factor * C), D)) assert_true(np.allclose(expected_dm, crkr._delta_mean(k, K)))
def test_delta_variance(self): """Tests if delta variance is correctly computed. """ S = self.S_2x3 C = self.C_2x2 D = self.D_2x3 ridge_factor = self.ridge_factor_05 sigma = self.sigma_05 a = self.a_1 crkr = CrKr(S, C, D, ridge_factor, sigma, a) new_s = np.array([[1, 1, 1]]) k = crkr._compute_k(new_s) K = crkr._compute_K() expected_dv = (a + ridge_factor - np.dot(k.T, np.dot(npla.inv(K + ridge_factor * C), k))) assert_true(np.allclose(expected_dv, crkr._delta_variance(k, K)))