Skip to content

Commit 5396856

Browse files
committed
Cleanup files from merge
1 parent 990631a commit 5396856

File tree

3 files changed

+121
-1
lines changed

3 files changed

+121
-1
lines changed

autosklearn/util/single_thread_client.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
from typing import Any
33

44
from pathlib import Path
5-
from typing import Any
65

76
import dask.distributed
87

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
import os
2+
import shutil
3+
4+
import numpy as np
5+
6+
from autosklearn.automl_common.common.ensemble_building.abstract_ensemble import (
7+
AbstractEnsemble,
8+
)
9+
from autosklearn.ensemble_builder import EnsembleBuilder
10+
from autosklearn.metrics import make_scorer
11+
12+
import unittest
13+
import unittest.mock
14+
15+
16+
def scorer_function(a, b):
17+
return 0.9
18+
19+
20+
MockMetric = make_scorer("mock", scorer_function)
21+
22+
23+
class BackendMock(object):
24+
def __init__(self, target_directory):
25+
this_directory = os.path.abspath(os.path.dirname(__file__))
26+
shutil.copytree(
27+
os.path.join(this_directory, "data"), os.path.join(target_directory)
28+
)
29+
self.temporary_directory = target_directory
30+
self.internals_directory = os.path.join(
31+
self.temporary_directory, ".auto-sklearn"
32+
)
33+
34+
def load_datamanager(self):
35+
manager = unittest.mock.Mock()
36+
manager.__reduce__ = lambda self: (unittest.mock.MagicMock, ())
37+
array = np.load(
38+
os.path.join(
39+
self.temporary_directory,
40+
".auto-sklearn",
41+
"runs",
42+
"0_3_100.0",
43+
"predictions_test_0_3_100.0.npy",
44+
)
45+
)
46+
manager.data.get.return_value = array
47+
return manager
48+
49+
def load_targets_ensemble(self):
50+
with open(
51+
os.path.join(
52+
self.temporary_directory,
53+
".auto-sklearn",
54+
"predictions_ensemble_true.npy",
55+
),
56+
"rb",
57+
) as fp:
58+
y = np.load(fp, allow_pickle=True)
59+
return y
60+
61+
def save_ensemble(self, ensemble, index_run, seed):
62+
return
63+
64+
def save_predictions_as_txt(self, predictions, subset, idx, prefix, precision):
65+
return
66+
67+
def get_runs_directory(self) -> str:
68+
return os.path.join(self.temporary_directory, ".auto-sklearn", "runs")
69+
70+
def get_numrun_directory(self, seed: int, num_run: int, budget: float) -> str:
71+
return os.path.join(
72+
self.get_runs_directory(), "%d_%d_%s" % (seed, num_run, budget)
73+
)
74+
75+
def get_model_filename(self, seed: int, idx: int, budget: float) -> str:
76+
return "%s.%s.%s.model" % (seed, idx, budget)
77+
78+
79+
def compare_read_preds(read_preds1, read_preds2):
80+
"""
81+
compares read_preds attribute. An alternative to
82+
assert Dict Equal as it contains np arrays, so we have
83+
to use np testing utilities accordingly
84+
"""
85+
86+
# Both arrays should have the same splits
87+
assert set(read_preds1.keys()) == set(read_preds2.keys())
88+
89+
for k, v in read_preds1.items():
90+
91+
# Each split should have the same elements
92+
assert set(read_preds1[k].keys()) == set(read_preds2[k].keys())
93+
94+
# This level contains the scores/ensmebles/etc
95+
for actual_k, actual_v in read_preds1[k].items():
96+
97+
# If it is a numpy array, make sure it is the same
98+
if type(actual_v) is np.ndarray:
99+
np.testing.assert_array_equal(actual_v, read_preds2[k][actual_k])
100+
else:
101+
assert actual_v == read_preds2[k][actual_k]
102+
103+
104+
class EnsembleBuilderMemMock(EnsembleBuilder):
105+
def fit_ensemble(self, selected_keys):
106+
return True
107+
108+
def predict(
109+
self,
110+
set_: str,
111+
ensemble: AbstractEnsemble,
112+
selected_keys: list,
113+
n_preds: int,
114+
index_run: int,
115+
):
116+
np.ones([10000000, 1000000])

test/test_pipeline/test_regression.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,11 @@ def _test_configurations(
247247
"identity" in e.args[0]
248248
):
249249
continue
250+
elif (
251+
"zero-size array to reduction operation maximum which has no "
252+
"identity" in e.args[0]
253+
):
254+
continue
250255
else:
251256
e.args += (f"config={config}",)
252257
raise e

0 commit comments

Comments
 (0)