smt_optim.acquisition_functions package#
Submodules#
smt_optim.acquisition_functions.expected_improvement module#
- smt_optim.acquisition_functions.expected_improvement.expected_improvement(mu: float, s2: float, f_min: float) float[source]#
Expected Improvement acquisition function.
- Parameters:
mu (float) – Mean prediction.
s2 (float) – Variance prediction.
f_min (float) – Best minimum objective value in training data.
- Returns:
Expected Improvement value.
- Return type:
float
- smt_optim.acquisition_functions.expected_improvement.fidelity_correlation(covariance: ndarray, li_var: ndarray, lj_var: ndarray) ndarray[source]#
GP posterior fidelity correlation between 2 fidelity levels. The correlation is clipped between 0 and 1.
- Parameters:
covariance (np.ndarray) – Posterior covariance prediction between fidelity levels i and j.
li_var (np.ndarray) – Variance prediction of fidelity level i.
lj_var (np.ndarray) – Variance prediction of fidelity level j.
- Returns:
The fidelity correlation value
- Return type:
np.ndarray
- smt_optim.acquisition_functions.expected_improvement.log_ei(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#
Vectorized Log Expected Improvement acquisition function.
LogEI is more numerically stable that the EI acquisition function especially when the GP’s variance is small. From: https://arxiv.org/abs/2310.20708.
- Parameters:
mu (np.ndarray) – Mean prediction of shape (num_points, 1).
s2 (np.ndarray) – Variance prediction of shape (num_points, 1).
f_min (float) – Best minimum objective value in training data.
- Return type:
np.ndarray
- smt_optim.acquisition_functions.expected_improvement.probability_of_improvement(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#
Probability of Improvement acquisition function. :param mu: Mean prediction. :type mu: np.ndarray
- Parameters:
s2 (np.ndarray) – Variance prediction.
f_min (np.ndarray) – Minimum predicted objective value.
- Returns:
The PI acquisition function value.
- Return type:
np.ndarray
- smt_optim.acquisition_functions.expected_improvement.vec_expected_improvement(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#
Vectorized Expected Improvement acquisition function.
- Parameters:
mu (np.ndarray) – Mean prediction of shape (num_points, 1).
s2 (np.ndarray) – Variance prediction of shape (num_points, 1).
f_min (float) – Best minimum objective value in training data.
- Returns:
Expected Improvement values of shape (num_points, 1).
- Return type:
np.ndarray
Module contents#
- smt_optim.acquisition_functions.expected_improvement(mu: float, s2: float, f_min: float) float[source]#
Expected Improvement acquisition function.
- Parameters:
mu (float) – Mean prediction.
s2 (float) – Variance prediction.
f_min (float) – Best minimum objective value in training data.
- Returns:
Expected Improvement value.
- Return type:
float
- smt_optim.acquisition_functions.log_ei(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#
Vectorized Log Expected Improvement acquisition function.
LogEI is more numerically stable that the EI acquisition function especially when the GP’s variance is small. From: https://arxiv.org/abs/2310.20708.
- Parameters:
mu (np.ndarray) – Mean prediction of shape (num_points, 1).
s2 (np.ndarray) – Variance prediction of shape (num_points, 1).
f_min (float) – Best minimum objective value in training data.
- Return type:
np.ndarray
- smt_optim.acquisition_functions.probability_of_improvement(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#
Probability of Improvement acquisition function. :param mu: Mean prediction. :type mu: np.ndarray
- Parameters:
s2 (np.ndarray) – Variance prediction.
f_min (np.ndarray) – Minimum predicted objective value.
- Returns:
The PI acquisition function value.
- Return type:
np.ndarray
- smt_optim.acquisition_functions.vec_expected_improvement(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#
Vectorized Expected Improvement acquisition function.
- Parameters:
mu (np.ndarray) – Mean prediction of shape (num_points, 1).
s2 (np.ndarray) – Variance prediction of shape (num_points, 1).
f_min (float) – Best minimum objective value in training data.
- Returns:
Expected Improvement values of shape (num_points, 1).
- Return type:
np.ndarray