Completed
Push — master ( e76f99...13bbbc )
by Simon
01:30
created

test_warm_start_smbo()   A

Complexity

Conditions 1

Size

Total Lines 4
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 4
nop 0
dl 0
loc 4
rs 10
c 0
b 0
f 0
1
# Author: Simon Blanke
2
# Email: [email protected]
3
# License: MIT License
4
5
import numpy as np
6
7
from hyperactive import Hyperactive
8
9
X, y = np.array([0]), np.array([0])
10
memory = False
11
n_iter = 25
12
13
14
def sphere_function(para, X_train, y_train):
15
    loss = []
16
    for key in para.keys():
17
        if key == "iteration":
18
            continue
19
        loss.append(para[key] * para[key])
20
21
    return -np.array(loss).sum()
22
23
24
search_config = {
25
    sphere_function: {
26
        "x1": list(np.arange(-3, 3, 0.1)),
27
        "x2": list(np.arange(-3, 3, 0.1)),
28
    }
29
}
30
31
32
def test_skip_retrain():
33
    for skip_retrain in ["many", "some", "few", "never"]:
34
        opt = Hyperactive(X, y, memory=memory)
35
        opt.search(
36
            search_config,
37
            n_iter=n_iter,
38
            optimizer={"Bayesian": {"skip_retrain": skip_retrain}},
39
        )
40
41
42
def test_start_up_evals():
43
    for start_up_evals in [1, 100]:
44
        opt = Hyperactive(X, y, memory=memory)
45
        opt.search(
46
            search_config,
47
            n_iter=n_iter,
48
            optimizer={"Bayesian": {"start_up_evals": start_up_evals}},
49
        )
50
51
52
def test_warm_start_smbo():
53
    opt = Hyperactive(X, y, memory="long")
54
    opt.search(
55
        search_config, n_iter=n_iter, optimizer={"Bayesian": {"warm_start_smbo": True}}
56
    )
57
58
59
def test_max_sample_size():
60
    for max_sample_size in [10, 100, 10000, 10000000000]:
61
        opt = Hyperactive(X, y, memory=memory)
62
        opt.search(
63
            search_config,
64
            n_iter=n_iter,
65
            optimizer={"Bayesian": {"max_sample_size": True}},
66
        )
67
68
69
def test_gpr():
70
    opt = Hyperactive(X, y, memory=memory)
71
    opt.search(
72
        search_config, n_iter=n_iter, optimizer={"Bayesian": {"gpr": "gp_linear"}}
73
    )
74