selector.selection_features

This module contains feature generation functions.

Classes

FeatureGenerator([logger])

Generate features necessary to evaluate configurations.

class selector.selection_features.FeatureGenerator(logger=None)[source]

Bases: object

Generate features necessary to evaluate configurations.

Parameters:

logger (logging.Logger) – Logging object.

avg_dist_evals(suggests, evals, psetting)[source]

Average distance to all points so far evaluated.

Parameters:
  • suggestions (list) – Suggested points.

  • evals (list) – Already evaluated points.

  • psetting (object) – Scenario parameters.

Returns:

div_feats – Average distances to all already evaluated points.

Return type:

list

avg_dist_rel(suggests, evals, psetting, generators)[source]

Average distances to relatives.

Parameters:
  • suggests (list) – Suggested points.

  • evals (list) – Already evaluated points.

  • psetting (object) – Scenario parameters.

  • generators (list) – Available generators.

Returns:

div_feats – Computed features of suggested points.

Return type:

list

avg_dist_sel(suggests, psetting)[source]

Average distance to points in the current selection.

Parameters:
  • suggestions (list) – Suggested points.

  • psetting (object) – Scenario parameters.

Returns:

div_feats – Average distances to points in the current selection.

Return type:

list

avg_rel_evals_qual(suggestions, data, nce, results, cot, generators)[source]

Average quality of relatives so far evaluated.

Parameters:
  • suggestions (list) – Suggested points.

  • data (object) – Contains historic performance data.

  • nce (int) – Number of all configs evaluated.

  • results (dict) – Qualities of configurations.

  • cot (float) – Cut off time for tournaments (i.e. time limit).

  • generators (list) – All possible generators.

Returns:

div_feats – Computed features of suggested points.

Return type:

list

best_rel_evals_qual(suggestions, data, generators, results, cot)[source]

Best target value relatives so far evaluated.

Parameters:
  • suggestions (list) – Suggested points.

  • data (object) – Contains historic performance data.

  • generators (list) – All possible generators.

  • results (dict) – Qualities of configurations.

  • cot (float) – Cut off time for tournaments (i.e. time limit).

Returns:

div_feats – Computed features of suggested points.

Return type:

list

diff_pred_real_qual(suggestions, data, predicted_quals, results)[source]

Difference of predicted & real qual. of relatives evaluated so far.

Parameters:
  • suggestions (list) – Suggested points.

  • data (object) – Contains historic performance data.

  • predicted_quals (list of lists) – Predicted performance/quality for suggested configurations.

  • results (dict) – Qualities of configurations.

Returns:

div_feats – Computed features of suggested points.

Return type:

list

diversity_feature_gen(suggestions, data, results, cot, psetting, predicted_quals, evaluated)[source]

Generate diversity features.

Parameters:
  • suggestions (list) – Suggested configurations.

  • data (object) – Contains historic data.

  • results (dict) – Qualities of configurations.

  • cot (float) – Cut off time for tournaments.

  • psetting (object) – Scenario parameters.

  • predicted_quals (list) – Predicted qualities of points evaluated so far.

  • evaluated (list) – All evaluated points so far.

  • sm (object) – Initialized Surrogates.SurrogateManager().

Returns:

div_feats – Diversity features.

Return type:

list

dynamic_feature_gen(suggestions, data, predicted_quals, sm, cot, results, next_instance_set)[source]

Generate dynamic features.

Parameters:
  • suggestions (list) – Suggested configurations.

  • data (object) – Contains historic data.

  • predicted_quals (list of lists) – Predicted performance/quality for suggested configurations.

  • sm (object) – Surrogates.SurrogateManager().

  • cot (int) – Cut off time (i.e. time limit).

  • results (list) – Results of points evaluated so far.

Returns:

dyn_feats – Dynamic features.

Return type:

list

expected_improve(suggs, sm, cot, surr, next_instance_set)[source]

Probability of quality of points to improve.

Parameters:
  • suggests (list) – Suggested points.

  • sm (object) – Surrogates.SurrogateManager().

  • cot (int) – Cut off time (i.e. time limit).

  • surr (str) – Which surrogate to use.

Returns:

dyn_feats – Computed features of suggested points.

Return type:

list

expected_qual(suggs, sm, cot, surr, next_instance_set)[source]

Expected quality of points.

Parameters:
  • suggests (list) – Suggested points.

  • sm (object) – Surrogates.SurrogateManager().

  • cot (int) – Cut off time (i.e. time limit).

  • surr (str) – Which surrogate to use.

  • next_instance_set (list) – Next instances that will be run.

Returns:

dyn_feats – Computed features of suggested points.

Return type:

list

percent_rel_evals(suggestions, data, nce)[source]

Percentage of relatives so far evaluated.

Parameters:
  • suggestions (list) – Suggested points.

  • data (object) – Contains historic performance data.

  • nce (int) – Number of configuration evaluations.

Returns:

div_feats – Computed features of suggested points.

Return type:

list

prob_qual_improve(suggs, sm, cot, results, surr, next_instance_set)[source]

Probability of quality of points to improve.

Parameters:
  • suggests (list) – Suggested points.

  • sm (object) – Surrogates.SurrogateManager().

  • cot (int) – Cut off time (i.e. time limit).

  • results (list) – Results of points evaluated so far.

  • surr (str) – Which surrogate to use.

Returns:

dyn_feats – Computed features of suggested points.

Return type:

list

static_feature_gen(suggestions, epoch, max_epoch)[source]

Generate static features.

Parameters:
  • suggestions (list) – Suggested configurations.

  • epoch (int) – Current epoch.

  • max_epoch (int) – Total number of epochs.

Returns:

static_features – Static features.

Return type:

list

std_rel_evals_qual(suggestions, data, generators, results, cot)[source]

Std of quality of relatives so far evaluated.

Parameters:
  • suggestions (list) – Suggested points.

  • data (object) – Contains historic performance data.

  • generators (list) – All possible generators.

  • results (dict) – Qualities of configurations.

  • cot (float) – Cut off time for tournaments (i.e. time limit).

Returns:

div_feats – Computed features of suggested points.

Return type:

list

surr_votes(dyn_feats)[source]

Multiply surr features to get agreement features.

Parameters:

dyn_feats (list of np.ndarray) – Dynamic features.

Returns:

dyn_feats – Extended dynamic features.

Return type:

list of np.ndarray

uncertainty_improve(suggs, sm, cot, surr, next_instance_set)[source]

Probability of quality of points to improve.

Parameters:
  • suggests (list) – Suggested points.

  • sm (object) – Surrogates.SurrogateManager().

  • cot (int) – Cut off time (i.e. time limit).

  • surr (str) – Which surrogate to use.

Returns:

dyn_feats – Computed features of suggested points.

Return type:

list