diff --git a/GPy/core/model.py b/GPy/core/model.py index 46cf6ac9..d10ae84a 100644 --- a/GPy/core/model.py +++ b/GPy/core/model.py @@ -181,7 +181,7 @@ class model(parameterised): else: raise e if len(self.optimization_runs): - i = np.argmax([o.f_opt for o in self.optimization_runs]) + i = np.argmin([o.f_opt for o in self.optimization_runs]) self.expand_param(self.optimization_runs[i].x_opt) else: self.expand_param(initial_parameters) @@ -286,7 +286,7 @@ class model(parameterised): return '\n'.join(s) - def checkgrad(self, verbose=False, include_priors=False, step=1e-6, tolerance = 1e-3, *args): + def checkgrad(self, verbose=False, include_priors=False, step=1e-6, tolerance = 1e-3, return_ratio=False, *args): """ Check the gradient of the model by comparing to a numerical estimate. If the overall gradient fails, invividual components are tested. @@ -306,12 +306,12 @@ class model(parameterised): gradient = self.extract_gradients() numerical_gradient = (f1-f2)/(2*dx) - ratio = (f1-f2)/(2*np.dot(dx,gradient)) + global_ratio = (f1-f2)/(2*np.dot(dx,gradient)) if verbose: - print "Gradient ratio = ", ratio, '\n' + print "Gradient ratio = ", global_ratio, '\n' sys.stdout.flush() - if (np.abs(1.-ratio)