Driver

Contents

Driver#

class xesn.Driver(config, output_directory=None)#

This is intended to automate ESN and LazyESN usage. The main methods to use are:

Please see this page of the documentation for examples of all of these, and an example configuration file. The experiments are configured with the parameter dict config. This can be created either by specifying the path to a yaml file or by explicitly passing the dict itself, see set_config().

Parameters:
  • config (str or dict) – either a path to a yaml file or dict containing experiment parameters

  • output_directory (str, optional) – directory to save results and write logs to

Methods

Driver.load(fname)

An extension of yaml.safe_load() that recognizes 1e9 as float not string (i.e., don't require the 1.0 or the sign +9).

Driver.overwrite_config(new_config)

Overwrite specific parameters with the values in the nested dict new_config.

Driver.print_log(*args, **kwargs)

Print to log file as specified in logname

Driver.run_macro_training()

Perform Bayesian optimization on macro-scale ESN parameters using surrogate modeling toolbox.

Driver.run_test()

Make test predictions using a pre-trained ESN.

Driver.run_training()

Perform ESN or LazyESN training, learn the readout matrix weights.

Driver.set_config(config)

Read the nested parameter dictionary or take it directly, and write a copy for reference in the output_directory.

Attributes

Driver.config

Driver.output_directory

Driver.walltime

Driver.localtime

Driver.esn_name

Driver.ESN

Driver.logfile

Driver.logname

Driver.logger