From db6c50712ecadaca62658192fe6d9563fcd34590 Mon Sep 17 00:00:00 2001 From: James Hensman Date: Mon, 3 Nov 2014 11:15:40 +0000 Subject: [PATCH 1/2] removing dead bayesopt file --- GPy/inference/optimization/BayesOpt.py | 63 -------------------------- 1 file changed, 63 deletions(-) delete mode 100644 GPy/inference/optimization/BayesOpt.py diff --git a/GPy/inference/optimization/BayesOpt.py b/GPy/inference/optimization/BayesOpt.py deleted file mode 100644 index 2e54a23b..00000000 --- a/GPy/inference/optimization/BayesOpt.py +++ /dev/null @@ -1,63 +0,0 @@ -import numpy as np -from scipy.stats import norm -import matplotlib.pyplot as plt - - -####### Preliminar BO with standad acquisition functions ############################### -# Types of BO -# MM: Maximum (or minimum) mean -# MPI: Maximum posterior improvement -# MUI: Maximum upper interval - -def BOacquisition(X,Y,model,type_bo="MPI",type_objective="max",par_mpi = 0,z_mui=1.96,plot=True,n_eval = 500): - - # Only works in dimension 1 - # Grid where the GP will be evaluated - X_star = np.linspace(min(X)-10,max(X)+10,n_eval) - X_star = X_star[:,None] - - # Posterior GP evaluated on the grid - fest = model.predict(X_star) - - # Calculate the acquisition function - ## IF Maximize - if type_objective == "max": - if type_bo == "MPI": # add others here - acqu = norm.cdf((fest[0]-(1+par_mpi)*max(fest[0])) / fest[1]) - acqu = acqu/(2*max(acqu)) - if type_bo == "MM": - acqu = fest[0]/max(fest[0]) - acqu = acqu/(2*max(acqu)) - if type_bo == "MUI": - acqu = fest[0]+z_mui*np.sqrt(fest[1]) - acqu = acqu/(2*max(acqu)) - optimal_loc = np.argmax(acqu) - x_new = X_star[optimal_loc] - - ## IF Minimize - if type_objective == "min": - if type_bo == "MPI": # add others here - acqu = 1-norm.cdf((fest[0]-(1+par_mpi)*min(fest[0])) / fest[1]) - acqu = acqu/(2*max(acqu)) - if type_bo == "MM": - acqu = 1-fest[0]/max(fest[0]) - acqu = acqu/(2*max(acqu)) - if type_bo == "MUI": - acqu = -fest[0]+z_mui*np.sqrt(fest[1]) - acqu = acqu/(2*max(acqu)) - optimal_loc = np.argmax(acqu) - x_new = X_star[optimal_loc] - - # Plot GP posterior, collected data and the acquisition function - if plot: - plt.plot(X,Y , 'p') - plt.title('Acquisition function') - model.plot() - plt.plot(X_star, acqu, 'r--') - - - # Return the point where we shoould take the new sample - return x_new - ############################################################### - - From 4905348dbe0cb30b93390b99cfeae7b3af0ee39c Mon Sep 17 00:00:00 2001 From: James Hensman Date: Mon, 3 Nov 2014 11:26:31 +0000 Subject: [PATCH 2/2] changed init for mcmc --- GPy/inference/mcmc/__init__.py | 1 + GPy/inference/optimization/__init__.py | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 GPy/inference/mcmc/__init__.py diff --git a/GPy/inference/mcmc/__init__.py b/GPy/inference/mcmc/__init__.py new file mode 100644 index 00000000..956448d4 --- /dev/null +++ b/GPy/inference/mcmc/__init__.py @@ -0,0 +1 @@ +from hmc import HMC diff --git a/GPy/inference/optimization/__init__.py b/GPy/inference/optimization/__init__.py index 1590568f..1a8f043b 100644 --- a/GPy/inference/optimization/__init__.py +++ b/GPy/inference/optimization/__init__.py @@ -1,3 +1,2 @@ from scg import SCG from optimization import * -from hmc import HMC,HMC_shortcut