Skip to content

Commit bb12e84

Browse files
committed
FIX pickling issue
1 parent e74f84e commit bb12e84

File tree

3 files changed

+29
-28
lines changed

3 files changed

+29
-28
lines changed

autosklearn/automl.py

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -369,7 +369,7 @@ def _fit(self, datamanager):
369369
if time_left_for_smac <= 0:
370370
self._logger.warning("Not starting SMAC because there is no time "
371371
"left.")
372-
self._proc_smac = None
372+
_proc_smac = None
373373
else:
374374
if self._per_run_time_limit is None or \
375375
self._per_run_time_limit > time_left_for_smac:
@@ -380,25 +380,25 @@ def _fit(self, datamanager):
380380
else:
381381
per_run_time_limit = self._per_run_time_limit
382382

383-
self._proc_smac = AutoMLSMBO(config_space=self.configuration_space,
384-
dataset_name=self._dataset_name,
385-
backend=self._backend,
386-
total_walltime_limit=time_left_for_smac,
387-
func_eval_time_limit=per_run_time_limit,
388-
memory_limit=self._ml_memory_limit,
389-
data_memory_limit=self._data_memory_limit,
390-
watcher=self._stopwatch,
391-
start_num_run=num_run,
392-
num_metalearning_cfgs=self._initial_configurations_via_metalearning,
393-
config_file=configspace_path,
394-
smac_iters=self._max_iter_smac,
395-
seed=self._seed,
396-
metadata_directory=self._metadata_directory,
397-
resampling_strategy=self._resampling_strategy,
398-
resampling_strategy_args=self._resampling_strategy_arguments,
399-
acquisition_function=self.acquisition_function,
400-
shared_mode=self._shared_mode)
401-
self._proc_smac.run_smbo()
383+
_proc_smac = AutoMLSMBO(config_space=self.configuration_space,
384+
dataset_name=self._dataset_name,
385+
backend=self._backend,
386+
total_walltime_limit=time_left_for_smac,
387+
func_eval_time_limit=per_run_time_limit,
388+
memory_limit=self._ml_memory_limit,
389+
data_memory_limit=self._data_memory_limit,
390+
watcher=self._stopwatch,
391+
start_num_run=num_run,
392+
num_metalearning_cfgs=self._initial_configurations_via_metalearning,
393+
config_file=configspace_path,
394+
smac_iters=self._max_iter_smac,
395+
seed=self._seed,
396+
metadata_directory=self._metadata_directory,
397+
resampling_strategy=self._resampling_strategy,
398+
resampling_strategy_args=self._resampling_strategy_arguments,
399+
acquisition_function=self.acquisition_function,
400+
shared_mode=self._shared_mode)
401+
self.runhistory_ = _proc_smac.run_smbo()
402402

403403
self._proc_ensemble = None
404404
self._load_models()
@@ -569,8 +569,8 @@ def grid_scores_(self):
569569
scores_per_config = defaultdict(list)
570570
config_list = list()
571571

572-
for run_key in self._proc_smac.runhistory.data:
573-
run_value = self._proc_smac.runhistory.data[run_key]
572+
for run_key in self.runhistory_.data:
573+
run_value = self.runhistory_.data[run_key]
574574

575575
config_id = run_key.config_id
576576
cost = run_value.cost
@@ -583,7 +583,7 @@ def grid_scores_(self):
583583
for config_id in config_list:
584584
scores = [1 - score for score in scores_per_config[config_id]]
585585
mean_score = np.mean(scores)
586-
config = self._proc_smac.runhistory.ids_config[config_id]
586+
config = self.runhistory_.ids_config[config_id]
587587

588588
grid_score = _CVScoreTuple(config.get_dictionary(), mean_score,
589589
scores)
@@ -624,10 +624,10 @@ def cv_results_(self):
624624
mean_fit_time = []
625625
params = []
626626
status = []
627-
for run_key in self._proc_smac.runhistory.data:
628-
run_value = self._proc_smac.runhistory.data[run_key]
627+
for run_key in self.runhistory_.data:
628+
run_value = self.runhistory_.data[run_key]
629629
config_id = run_key.config_id
630-
config = self._proc_smac.runhistory.ids_config[config_id]
630+
config = self.runhistory_.ids_config[config_id]
631631

632632
param_dict = config.get_dictionary()
633633
params.append(param_dict)

autosklearn/smbo.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -616,6 +616,7 @@ def run_smbo(self, max_iters=1000):
616616
break
617617

618618
self.runhistory = smac.solver.runhistory
619+
return runhistory
619620

620621
def choose_next(self, smac):
621622
challengers = []

test/test_automl/test_estimators.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ def test_grid_scores(self):
179179
ensemble_size=0)
180180
cls_ = cls.build_automl()
181181
automl = cls_._automl
182-
automl._proc_smac = unittest.mock.MagicMock()
182+
automl.runhistory_ = unittest.mock.MagicMock()
183183

184184
RunKey = collections.namedtuple(
185185
'RunKey', ['config_id', 'instance_id', 'seed'])
@@ -189,7 +189,7 @@ def test_grid_scores(self):
189189

190190
runhistory = dict()
191191
runhistory[RunKey(1, 1, 1)] = RunValue(1, 1, 1, '')
192-
automl._proc_smac.runhistory.data = runhistory
192+
automl.runhistory_.data = runhistory
193193
grid_scores_ = automl.grid_scores_
194194

195195
self.assertIsInstance(grid_scores_[0], _CVScoreTuple)

0 commit comments

Comments
 (0)