Exemple #1
0
 def test_reparametrize_02(self):
     np.random.seed(42)
     gradients = np.random.uniform(-1, 1, 6).reshape(3, 1, 2)
     inputs = np.random.uniform(-1, 1, 6).reshape(3, 2)
     fm = FeatureMap(distr='multivariate_normal',
                     bias=np.ones((1, 2)),
                     input_dim=inputs.shape[1],
                     n_features=2,
                     params=np.ones(inputs.shape[1]),
                     sigma_f=1)
     ss = KernelActiveSubspaces(dim=2, feature_map=fm)
     features = ss._reparametrize(inputs, gradients)[1]
     true_features = np.array([[-0.2391454, 0.48143467],
                               [0.42589822, 0.75674833],
                               [-0.37950285, 0.53470539]])
     np.testing.assert_array_almost_equal(features, true_features)
Exemple #2
0
 def test_reparametrize_01(self):
     np.random.seed(42)
     gradients = np.random.uniform(-1, 1, 6).reshape(3, 1, 2)
     inputs = np.random.uniform(-1, 1, 6).reshape(3, 2)
     fm = FeatureMap(distr='multivariate_normal',
                     bias=np.ones((1, 2)),
                     input_dim=inputs.shape[1],
                     n_features=2,
                     params=np.ones(inputs.shape[1]),
                     sigma_f=1)
     ss = KernelActiveSubspaces(dim=2, feature_map=fm)
     pseudo_gradients = ss._reparametrize(inputs, gradients)[0]
     true_pseudo_gradients = np.array([[[-1.17123517, 0.69671587]],
                                       [[0.29308353, 1.12067323]],
                                       [[-0.0036059, -1.75277398]]])
     np.testing.assert_array_almost_equal(pseudo_gradients,
                                          true_pseudo_gradients)