[tune] strict metric checking (#10972)

This commit is contained in:
Kai Fricke
2020-09-24 10:00:48 -07:00
committed by GitHub
parent 5e6b887f2d
commit d9c4dea7cf
12 changed files with 275 additions and 161 deletions
+10
View File
@@ -17,6 +17,12 @@ class SearchAlgorithm:
"""
_finished = False
_metric = None
@property
def metric(self):
return self._metric
def set_search_properties(self, metric: Optional[str], mode: Optional[str],
config: Dict) -> bool:
"""Pass search properties to search algorithm.
@@ -33,6 +39,10 @@ class SearchAlgorithm:
mode (str): One of ["min", "max"]. Direction to optimize.
config (dict): Tune config dict.
"""
if self._metric and metric:
return False
if metric:
self._metric = metric
return True
@property
@@ -70,6 +70,10 @@ class SearchGenerator(SearchAlgorithm):
self._total_samples = 0 # int: total samples to evaluate.
self._finished = False
@property
def metric(self):
return self.searcher.metric
def set_search_properties(self, metric: Optional[str], mode: Optional[str],
config: Dict) -> bool:
return self.searcher.set_search_properties(metric, mode, config)