@@ 77-108 (lines=32) @@ | ||
74 | assert diff_time1 < 0.5 |
|
75 | ||
76 | ||
77 | def test_memory_warm_start(): |
|
78 | data = load_breast_cancer() |
|
79 | X, y = data.data, data.target |
|
80 | ||
81 | def objective_function(para): |
|
82 | dtc = DecisionTreeClassifier( |
|
83 | max_depth=para["max_depth"], |
|
84 | min_samples_split=para["min_samples_split"], |
|
85 | ) |
|
86 | scores = cross_val_score(dtc, X, y, cv=5) |
|
87 | ||
88 | return scores.mean() |
|
89 | ||
90 | search_space = { |
|
91 | "max_depth": np.arange(1, 10), |
|
92 | "min_samples_split": np.arange(2, 20), |
|
93 | } |
|
94 | ||
95 | c_time1 = time.time() |
|
96 | opt0 = RandomSearchOptimizer(search_space) |
|
97 | opt0.search(objective_function, n_iter=300) |
|
98 | diff_time1 = time.time() - c_time1 |
|
99 | ||
100 | c_time2 = time.time() |
|
101 | opt1 = RandomSearchOptimizer(search_space) |
|
102 | opt1.search(objective_function, n_iter=300, memory_warm_start=opt0.search_data) |
|
103 | diff_time2 = time.time() - c_time2 |
|
104 | ||
105 | print("\n diff_time1 ", diff_time1) |
|
106 | print("\n diff_time2 ", diff_time2) |
|
107 | ||
108 | assert diff_time2 < diff_time1 * 0.5 |
|
109 | ||
110 | ||
111 | def test_memory_warm_start_manual(): |
|
@@ 21-48 (lines=28) @@ | ||
18 | } |
|
19 | ||
20 | ||
21 | def test_memory_timeSave_0(): |
|
22 | data = load_breast_cancer() |
|
23 | X, y = data.data, data.target |
|
24 | ||
25 | def objective_function(para): |
|
26 | dtc = DecisionTreeClassifier(min_samples_split=para["min_samples_split"]) |
|
27 | scores = cross_val_score(dtc, X, y, cv=5) |
|
28 | ||
29 | return scores.mean() |
|
30 | ||
31 | search_space = { |
|
32 | "min_samples_split": np.arange(2, 20), |
|
33 | } |
|
34 | ||
35 | c_time1 = time.time() |
|
36 | opt = RandomSearchOptimizer(search_space) |
|
37 | opt.search(objective_function, n_iter=100) |
|
38 | diff_time1 = time.time() - c_time1 |
|
39 | ||
40 | c_time2 = time.time() |
|
41 | opt = RandomSearchOptimizer(search_space) |
|
42 | opt.search(objective_function, n_iter=100, memory=False) |
|
43 | diff_time2 = time.time() - c_time2 |
|
44 | ||
45 | print("\n diff_time1 ", diff_time1) |
|
46 | print("\n diff_time2 ", diff_time2) |
|
47 | ||
48 | assert diff_time1 < diff_time2 * 0.5 |
|
49 | ||
50 | ||
51 | def test_memory_timeSave_1(): |