HEBO

class orion.algo.hebo.hebo_algo.HEBO(space: Space, seed: int | None = None, parameters: Parameters | dict | None = None)[source]

Adapter for the HEBO algorithm from https://github.com/huawei-noah/HEBO

Parameters
:param space: Optimisation space with priors for each dimension.
:param seed: Base seed for the random number generators. Defaults to `None`, in which case the
randomness is not seeded.
:param parameters: Parameters for the HEBO algorithm.
Attributes
requires_dist
requires_type
state_dict

Return a state dict that can be used to reset the state of the algorithm.

Methods

Parameters(model_name, random_samples, ...)

Parameters of the HEBO algorithm.

observe(trials)

Observe the trials new state of result.

seed_rng(seed)

Seed the random number generators.

set_state(state_dict)

Reset the state of the algorithm based on the given state_dict

suggest(num)

Suggest num new sets of hyper-parameters to try.

class Parameters(model_name: ModelName = 'gpy', random_samples: int | None = None, acquisition_class: type[Acquisition] = <class 'object'>, evolutionary_strategy: EvolutionStrategyName = 'nsga2', model_config: dict | None = None)[source]

Parameters of the HEBO algorithm.

Attributes
model_config
random_samples

Methods

acquisition_class

Acquisition class to use.

acquisition_class

Acquisition class to use.

alias of object

evolutionary_strategy: EvolutionStrategyName = 'nsga2'

Name of the evolutionary strategy to use. See EvolutionStrategyName for the list of possible values.

model_config: dict | None = None

Keyword argument to be passed to the constructor of the model class that is selected with model_name.

model_name: ModelName = 'gpy'

Name of the model to use. See ModelName for the available values.

random_samples: int | None = None

Number of random samples to suggest before optimization begins. If None, the number of dimensions in the space is used as the default. Otherwise, the max of the value and 2 is used.

observe(trials: list[Trial]) None[source]

Observe the trials new state of result.

Parameters
:param trials: New trials with their objectives.
seed_rng(seed: int | None) None[source]

Seed the random number generators.

set_state(state_dict: dict) None[source]

Reset the state of the algorithm based on the given state_dict

Parameters

state_dict – Dictionary representing state of an algorithm

property state_dict: dict

Return a state dict that can be used to reset the state of the algorithm.

suggest(num: int) list[Trial][source]

Suggest num new sets of hyper-parameters to try.

Parameters
num: int

Number of trials to suggest. The algorithm may return less than the number of trials requested.

Returns
A list of trials representing values suggested by the algorithm.