esnpy package

class esnpy.DeepESN(reservoirs: list[esnpy.reservoir.ReservoirBuilder], trainer: Trainer, mask: list[bool] | None = None)[source]

Bases: BaseESN

DeepESN implementation.

class esnpy.ESN(reservoir: Reservoir, trainer: Trainer)[source]

Bases: BaseESN

Echo State Network implementation.

class esnpy.ReservoirBuilder(size: int, leaky: float, input_size: int, input_init: ~esnpy.init.Initializer, intern_init: ~esnpy.init.Initializer, input_bias: bool = True, input_tuners: list[esnpy.tune.Tuner] = <factory>, intern_tuners: list[esnpy.tune.Tuner] = <factory>, fn: ~typing.Callable = <ufunc 'tanh'>)[source]

Bases: object

Dataclass helper to configure and build a reservoir.

build(seed=None)[source]

Build a reservoir according to the configuration.

fn: Callable = <ufunc 'tanh'>
input_bias: bool = True
input_init: Initializer
input_size: int
input_tuners: list[esnpy.tune.Tuner]
intern_init: Initializer
intern_tuners: list[esnpy.tune.Tuner]
leaky: float
size: int

esnpy.init module

class esnpy.init.Initializer[source]

Bases: ABC

abstract init(shape: tuple[int, int]) ndarray[tuple[Any, Any], dtype][source]
class esnpy.init.NormalDenseInit(mean: float, std: float)[source]

Bases: Initializer

init(shape: tuple[int, int]) ndarray[tuple[Any, Any], dtype][source]
class esnpy.init.NormalSparseInit(mean, std, density)[source]

Bases: SparseInitializer

class esnpy.init.SparseInitializer(density: float)[source]

Bases: Initializer

init(shape: tuple[int, int]) ndarray[tuple[Any, Any], dtype][source]
class esnpy.init.UniformDenseInit(min_value: float, max_value: float)[source]

Bases: Initializer

init(shape: tuple[int, int]) ndarray[tuple[Any, Any], dtype][source]
class esnpy.init.UniformSparseInit(min_value, max_value, density)[source]

Bases: SparseInitializer

esnpy.tune module

class esnpy.tune.SpectralRadiusTuner(rho: float)[source]

Bases: Tuner

tune(weights: ndarray[tuple[Any, Any], dtype]) ndarray[tuple[Any, Any], dtype][source]
class esnpy.tune.Tuner[source]

Bases: ABC

abstract tune(weights: ndarray[tuple[Any, Any], dtype]) ndarray[tuple[Any, Any], dtype][source]

esnpy.train module

class esnpy.train.RidgeTrainer(alpha: float, use_bias: bool = True, use_input=True)[source]

Bases: Trainer

compute_readout(data: ndarray[tuple[Any, Any], dtype], target: ndarray[tuple[Any, Any], dtype]) ndarray[tuple[Any, Any], dtype][source]
property use_bias
property use_input
class esnpy.train.SklearnTrainer(sklearn_model, use_bias: bool = True, use_input=True)[source]

Bases: Trainer

compute_readout(data: ndarray[tuple[Any, Any], dtype], target: ndarray[tuple[Any, Any], dtype]) ndarray[tuple[Any, Any], dtype][source]
property use_bias
property use_input
class esnpy.train.Trainer[source]

Bases: ABC

abstract compute_readout(data: ndarray[tuple[Any, Any], dtype], target: ndarray[tuple[Any, Any], dtype]) ndarray[tuple[Any, Any], dtype][source]
train(inputs: ndarray[tuple[Any, Any], dtype], states: ndarray[tuple[Any, Any], dtype], target: ndarray[tuple[Any, Any], dtype]) ndarray[tuple[Any, Any], dtype][source]
abstract property use_bias
abstract property use_input