diff --git a/kernel_tuner/strategies/bayes_opt.py b/kernel_tuner/strategies/bayes_opt.py index f155bcd0..c15b5a76 100644 --- a/kernel_tuner/strategies/bayes_opt.py +++ b/kernel_tuner/strategies/bayes_opt.py @@ -268,7 +268,6 @@ def get_hyperparam(name: str, default, supported_values=list()): self.__valid_observations = list() self.unvisited_cache = self.unvisited() time_setup = time.perf_counter_ns() - self.error_message_searchspace_fully_observed = "The search space has been fully observed" # take initial sample if self.num_initial_samples > 0: @@ -569,7 +568,7 @@ def __optimize(self, max_fevals): """Find the next best candidate configuration(s), evaluate those and update the model accordingly.""" while self.fevals < max_fevals: if self.__visited_num >= self.searchspace_size: - raise ValueError(self.error_message_searchspace_fully_observed) + break predictions, _, std = self.predict_list(self.unvisited_cache) hyperparam = self.contextual_variance(std) list_of_acquisition_values = self.__af(predictions, hyperparam) @@ -608,7 +607,7 @@ def __optimize_multi(self, max_fevals): predictions, _, std = self.predict_list(self.unvisited_cache) hyperparam = self.contextual_variance(std) if self.__visited_num >= self.searchspace_size: - raise ValueError(self.error_message_searchspace_fully_observed) + break time_predictions = time.perf_counter_ns() actual_candidate_params = list() actual_candidate_indices = list() @@ -724,7 +723,7 @@ def __optimize_multi_advanced(self, max_fevals, increase_precision=False): if single_af: return self.__optimize(max_fevals) if self.__visited_num >= self.searchspace_size: - raise ValueError(self.error_message_searchspace_fully_observed) + break observations_median = np.median(self.__valid_observations) if increase_precision is False: predictions, _, std = self.predict_list(self.unvisited_cache) @@ -832,7 +831,7 @@ def __optimize_multi_fast(self, max_fevals): predictions, _, std = self.predict_list(self.unvisited_cache) hyperparam = self.contextual_variance(std) if self.__visited_num >= self.searchspace_size: - raise ValueError(self.error_message_searchspace_fully_observed) + break for af in aqfs: if self.__visited_num >= self.searchspace_size or self.fevals >= max_fevals: break @@ -873,7 +872,7 @@ def __optimize_multi_ultrafast(self, max_fevals, predict_eval_ratio=5): eval_start = time.perf_counter() hyperparam = self.contextual_variance(std) if self.__visited_num >= self.searchspace_size: - raise ValueError(self.error_message_searchspace_fully_observed) + break for af in aqfs: if self.__visited_num >= self.searchspace_size or self.fevals >= max_fevals: break