deepcave.evaluators.ablation

# Ablation Paths

This module evaluates the ablation paths.

Ablation Paths is a method to analyze the importance of hyperparameters in a configuration space. Starting from a default configuration, the default configuration is iteratively changed to the incumbent configuration by changing one hyperparameter at a time, choosing the hyperparameter that leads to the largest improvement in the objective function at each step.

## Classes:
  • Ablation: Provide an evaluator of the ablation paths.

Classes

Ablation(run)

Provide an evaluator of the ablation paths.

class deepcave.evaluators.ablation.Ablation(run)[source]

Bases: object

Provide an evaluator of the ablation paths.

Properties

runAbstractRun

The run to analyze.

csConfigurationSpace

The configuration space of the run.

hp_namesList[str]

A list of the hyperparameter names.

performancesOptional[Dict[Any, Any]]

A dictionary containing the performances for each HP.

improvementsOptional[Dict[Any, Any]]

A dictionary containing the improvements over the respective previous step for each HP.

objectivesOptional[Union[Objective, List[Objective]]]

The objective(s) of the run.

default_configConfigurations

The default configuration of this configuration space. Gets changed step by step towards the incumbent configuration.

calculate(objectives, budget=None, n_trees=50, seed=0)[source]

Calculate the ablation path performances and improvements.

Parameters:
  • objectives (Optional[Union[Objective, List[Objective]]]) – The objective(s) to be considered.

  • budget (Optional[Union[int, float]]) – The budget to be considered. If None, all budgets of the run are considered. Default is None.

  • n_trees (int) – The number of trees for the surrogate model. Default is 50.

  • seed (int) – The seed for the surrogate model. Default is 0.

Return type:

None

get_ablation_improvements()[source]

Get the ablation improvements.

Returns:

A dictionary containing the ablation improvements.

Return type:

Optional[Dict[Any, Any]]

Raises:

RuntimeError – If the ablation improvements have not been calculated.

get_ablation_performances()[source]

Get the ablation performances.

Returns:

A dictionary containing the ablation performances.

Return type:

Optional[Dict[Any, Any]]

Raises:

RuntimeError – If the ablation performances have not been calculated.