deephyper.skopt.sampler.sobol.Space#

class deephyper.skopt.sampler.sobol.Space(dimensions, model_sdv=None, config_space=None)[source]#

Bases: object

Initialize a search space from given specifications.

Parameters:

dimensions (list, shape=(n_dims,)) –

List of search space dimensions. Each search dimension can be defined either as

  • a (lower_bound, upper_bound) tuple (for Real or Integer dimensions),

  • a (lower_bound, upper_bound, “prior”) tuple (for Real dimensions),

  • as a list of categories (for Categorical dimensions), or

  • an instance of a Dimension object (Real, Integer or Categorical).

Note

The upper and lower bounds are inclusive for Integer dimensions.

Methods

deactivate_inactive_dimensions

When ConfigSpace is used, it will return the "lower" bound of inactive parameters.

distance

Compute distance between two points in this space.

from_yaml

Create a Space from yaml configuration file.

get_transformer

Returns all transformers as list.

inverse_transform

Inverse transform samples from the warped space back to the original space.

rvs

Draw random samples.

set_transformer

Sets the transformer of all dimension objects to transform.

set_transformer_by_type

Sets the transformer of dim_type objects to transform.

transform

Transform samples from the original space into a warped space.

update_prior

Update the prior of the dimensions.

Attributes

bounds

The dimension bounds, in the original space.

dimension_names

Names of all the dimensions in the search-space.

is_categorical

Space contains exclusively categorical dimensions.

is_partly_categorical

Space contains any categorical dimensions.

is_real

Returns true if all dimensions are Real.

n_constant_dimensions

Returns the number of constant dimensions which have zero degree of freedom, e.g. an Integer dimensions with (0., 0.) as bounds.

n_dims

The dimensionality of the original space.

transformed_bounds

The dimension bounds, in the warped space.

transformed_n_dims

The dimensionality of the warped space.

property bounds#

The dimension bounds, in the original space.

deactivate_inactive_dimensions(x)[source]#

When ConfigSpace is used, it will return the “lower” bound of inactive parameters.

property dimension_names#

Names of all the dimensions in the search-space.

distance(point_a, point_b)[source]#

Compute distance between two points in this space.

Args: point_a : array

First point.

point_barray

Second point.

classmethod from_yaml(yml_path, namespace=None)[source]#

Create a Space from yaml configuration file.

Parameters:
  • yml_path (str) –

    Full path to yaml configuration file, example YaML below: Space:

    • Integer:

    low: -5 high: 5 - Categorical: categories: - a - b - Real: low: 1.0 high: 5.0 prior: log-uniform

  • namespace – str, default=None

  • use (Namespace within configuration file to)

  • first (will use)

  • provided (namespace if not)

Returns:

Instantiated Space object.

Return type:

space (Space)

get_transformer()[source]#

Returns all transformers as list.

inverse_transform(Xt)[source]#

Inverse transform samples from the warped space back to the original space.

Parameters:

Xt (array of floats, shape=(n_samples, transformed_n_dims)) – The samples to inverse transform.

Returns:

The original samples.

Return type:

X (list of lists, shape=(n_samples, n_dims))

property is_categorical#

Space contains exclusively categorical dimensions.

property is_partly_categorical#

Space contains any categorical dimensions.

property is_real#

Returns true if all dimensions are Real.

property n_constant_dimensions#

Returns the number of constant dimensions which have zero degree of freedom, e.g. an Integer dimensions with (0., 0.) as bounds.

property n_dims#

The dimensionality of the original space.

rvs(n_samples=1, random_state=None, n_jobs=1)[source]#

Draw random samples.

The samples are in the original space. They need to be transformed before being passed to a model or minimizer by space.transform().

Parameters:
  • n_samples (int, default=1) – Number of samples to be drawn from the space.

  • random_state (int or RandomState, Optional) – Set random state to something other than None for reproducible results.

  • n_jobs (int) – the number of parallel processes to use to perform sampling.

Returns:

Points sampled from the space.

Return type:

points (list of lists, shape=(n_points, n_dims))

set_transformer(transform)[source]#

Sets the transformer of all dimension objects to transform.

Parameters:

transform (str or list of str) – Sets all transformer,, when transform is a string. Otherwise, transform must be a list with strings with the same length as dimensions

set_transformer_by_type(transform, dim_type)[source]#

Sets the transformer of dim_type objects to transform.

Parameters:
  • transform (str) – Sets all transformer of type dim_type to transform

  • dim_type (type) – Can be deephyper.skopt.space.Real, deephyper.skopt.space.Integer or deephyper.skopt.space.Categorical.

transform(X)[source]#

Transform samples from the original space into a warped space.

Note: this transformation is expected to be used to project samples

into a suitable space for numerical optimization.

Parameters:

X (list of lists, shape=(n_samples, n_dims)) – The samples to transform.

Returns:

The transformed samples.

Return type:

Xt (array of floats, shape=(n_samples, transformed_n_dims))

property transformed_bounds#

The dimension bounds, in the warped space.

property transformed_n_dims#

The dimensionality of the warped space.

update_prior(X, y, q=0.9)[source]#

Update the prior of the dimensions.

Instead of doing random-sampling, a kernel density estimation is fit on the region of interest and sampling is performed from this distribution.