def test_rff_feature_map_grad_single_equals_feature_map_derivative_d():
    D = 2
    m = 3
    omega = np.random.randn(D, m)
    u = np.random.uniform(0, 2 * np.pi, m)
    x = np.random.randn(D)
    
    grad = rff_feature_map_grad_single(x, omega, u)
    
    grad_manual = np.zeros((D, m))
    for d in range(D):
        grad_manual[d, :] = rff_feature_map_grad_d(x, omega, u, d)
    
    assert_allclose(grad_manual, grad)
Beispiel #2
0
def test_rff_feature_map_grad_single_equals_feature_map_derivative_d():
    D = 2
    m = 3
    omega = np.random.randn(D, m)
    u = np.random.uniform(0, 2 * np.pi, m)
    x = np.random.randn(D)

    grad = rff_feature_map_grad_single(x, omega, u)

    grad_manual = np.zeros((D, m))
    for d in range(D):
        grad_manual[d, :] = rff_feature_map_grad_d(x, omega, u, d)

    assert_allclose(grad_manual, grad)
    def grad(self, x):
        if self.theta is None:
            raise RuntimeError("Model not fitted yet.")

        grad = rff_feature_map_grad_single(x, self.omega, self.u)
        return np.dot(grad, self.theta)
Beispiel #4
0
 def grad(self, x):
     if self.theta is None:
         raise RuntimeError("Model not fitted yet.")
     
     grad = rff_feature_map_grad_single(x, self.omega, self.u)
     return np.dot(grad, self.theta)