Bayesian Optimization

Overview

The way to access the Bayesian optimization (BO) code used to help search the hyper-parameter space of an echo state network (ESN) is via the BO() class. This allows one define ranges for the relevant hyper-parameters for the ESN model and provides functionality to update the underlying Gaussian process.

Function Documentation

class parallel_esn.bo.BO(k, hidden_dim=(100, 10000), spectral_radius=(0.9, 1.3), p=(0, 1), alpha=(0, 1), beta=(1e-05, 1000.0), random_state=None)[source]

Bayesian Optimization framework

find_best_choices(num_samples=1000, num_choices=1)[source]

Finds the best hyper-parameter combination

Parameters
  • num_samples (int, optional) – Number of hyper-parameter samples to generate

  • num_choices (int, optional) – Number of choices to select

Returns

param_vals – Best hyper-parameter values for the current Gaussian process

Return type

dict

update_gpr(X, y)[source]

Updates the Gaussian process with new data and error value

Updates the Gaussian process by adding, H, the list of hyper-parameter values that were used with true function and y is the resulting error from the model

Parameters
  • X (list) – Hyper-parameter values that were tried

  • y (float) – Error that resulted from using X on the true function

Returns

Return type

None