def check_gradient_correctness(X_new, model, acq_func, y_opt):
    analytic_grad =  gaussian_acquisition_1D(
        X_new, model, y_opt, acq_func)[1]
    num_grad_func = lambda x:  gaussian_acquisition_1D(
        x, model, y_opt, acq_func=acq_func)[0]
    num_grad = optimize.approx_fprime(X_new, num_grad_func, 1e-5)
    assert_array_almost_equal(analytic_grad, num_grad, 4)
def check_gradient_correctness(X_new, model, acq_func, y_opt):
    analytic_grad = gaussian_acquisition_1D(
        X_new, model, y_opt, acq_func)[1]
    num_grad_func = lambda x:  gaussian_acquisition_1D(
        x, model, y_opt, acq_func=acq_func)[0]
    num_grad = optimize.approx_fprime(X_new, num_grad_func, 1e-5)
    assert_array_almost_equal(analytic_grad, num_grad, 3)
Example #3
0
 def evaluate_1_d(x, surrogate_model, y_opt, acq_func_kwargs=None):
     return gaussian_acquisition_1D(
         X=x,
         model=surrogate_model,
         y_opt=y_opt,
         acq_func="EI",
         acq_func_kwargs=acq_func_kwargs,
     )