|
6 | 6 | from multiprocessing import cpu_count
|
7 | 7 |
|
8 | 8 | import numpy as np
|
| 9 | +from joblib import Parallel, delayed |
9 | 10 | from scipy.stats import norm
|
10 | 11 | from sklearn.model_selection import train_test_split
|
11 |
| -from joblib import Parallel, delayed |
12 | 12 |
|
13 | 13 | __author__ = "Alexander Dunn"
|
14 | 14 |
|
@@ -45,15 +45,16 @@ def acquire(acq, X, Y, space, model, nstraps, return_means=False):
|
45 | 45 | mu, std = model.predict(space, return_std=True)
|
46 | 46 | else:
|
47 | 47 | predicted = Parallel(n_jobs=cpu_count())(
|
48 |
| - delayed(ppredict)(X, Y, space, model) for _ in np.zeros(nstraps)) |
| 48 | + delayed(ppredict)(X, Y, space, model) for _ in np.zeros(nstraps) |
| 49 | + ) |
49 | 50 | mu = np.mean(predicted, axis=0)
|
50 | 51 | std = np.std(predicted, axis=0)
|
51 | 52 |
|
52 |
| - if acq == 'ei': |
| 53 | + if acq == "ei": |
53 | 54 | acqf = ei
|
54 |
| - elif acq == 'pi': |
| 55 | + elif acq == "pi": |
55 | 56 | acqf = pi
|
56 |
| - elif acq == 'lcb': |
| 57 | + elif acq == "lcb": |
57 | 58 | acqf = lcb
|
58 | 59 | else:
|
59 | 60 | raise ValueError("Unknown acquisition function: {}!".format(acq))
|
@@ -110,8 +111,7 @@ def ei(fmin, mu, std, xi=0.01):
|
110 | 111 | mask = std > 0
|
111 | 112 | stdm = std[mask]
|
112 | 113 | improve = fmin - mu[mask] - xi
|
113 |
| - vals[mask] = improve * norm.cdf(improve / stdm) + stdm * \ |
114 |
| - norm.pdf(improve / stdm) |
| 114 | + vals[mask] = improve * norm.cdf(improve / stdm) + stdm * norm.pdf(improve / stdm) |
115 | 115 | # improve = fmin - mu
|
116 | 116 | # vals = improve * norm.cdf(improve/std) + std * norm.pdf(improve/std)
|
117 | 117 | return vals
|
@@ -143,7 +143,8 @@ def pi(fmin, mu, std, xi=0.01):
|
143 | 143 | def lcb(fmin, mu, std, kappa=1.96):
|
144 | 144 | """
|
145 | 145 | Returns lower confidence bound estimates.
|
146 |
| - fmin (float): (not used): Minimum value of the objective function known thus far. |
| 146 | + fmin (float): (not used): Minimum value of the objective function known |
| 147 | + thus far. |
147 | 148 | mu (numpy array): Mean value of bootstrapped predictions for each y.
|
148 | 149 | std (numpy array): Standard deviation of bootstrapped predictions for
|
149 | 150 | each y.
|
|
0 commit comments