Skip to main content

ReservoirPy (v0.2)

A simple and flexible code for Reservoir Computing architectures like Echo State Networks (ESN).

ReservoriPy is a simple user-friendly library based on Python scientific modules. It provides a flexible interface to implement efficient Reservoir Computing (RC) architectures with a particular focus on Echo State Networks (ESN). Advanced features of ReservoirPy allow to improve computation time efficiency on a simple laptop compared to basic Python implementation. Some of its features are: offline and online training, parallel implementation, sparse matrix computation, fast spectral initialization, etc. Moreover, graphical tools are included to easily explore hyperparameters with the help of the hyperopt library.

This library works for Python 3 (and should be compatible for Python2). We just updated it from Python 2 to 3, so tell us if you have any issue with it.

Installation, examples and tutorials

Go to the examples folder for intallation, examples, tutorials and Jupyter Notebooks.

Versions

To enable last features of ReservoirPy, you migth want to download a specific Git branch.

Available versions and corresponding branch:

  • v0.1.x : v0.1
  • v0.2.x (last stable) : master
  • v0.2.x (dev) : v0.2-dev
  • (comming soon) v0.3.0 : v0.3

Quick try

Chaotic timeseries prediction (MackeyGlass)

Run and analyse these two files to see how to make timeseries prediction with Echo State Networks:

  • simple_example_MackeyGlass.py (using the ESN class)

    python simple_example_MackeyGlass.py
    
  • minimalESN_MackeyGlass.py (without the ESN class)

    python minimalESN_MackeyGlass.py
    

Preprint with tutorials

Tutorial on ReservoirPy can be found in this preprint (Trouvain et al. 2020).

Explore Hyper-Parameters with Hyperopt

Tutorial on how to explore hyperparameters with ReservoirPy and Hyperopt can be found in this preprint (Trouvain et al. 2020).

Turorial and Jupyter Notebook for hyper-parameter exploration

More info on hyperopt: Official website

Cite

Nathan Trouvain, Luca Pedrelli, Thanh Trung Dinh, Xavier Hinaut. ReservoirPy: an Efficient and User-Friendly Library to Design Echo State Networks. 2020. ⟨hal-02595026⟩ https://hal.inria.fr/hal-02595026

Release files for reservoirpy 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for reservoirpy 0.2.1
File Size Uploaded
reservoirpy-0.2.1.tar.gz 36.6 kB Details

Release files / reservoirpy-0.2.1.tar.gz

Download URL reservoirpy-0.2.1.tar.gz
Size 36.6 kB
Tags Source
SHA-256 checksum
How to use checksums
3a7ff85e76e690c185ccd091ada58aa60ac02b79c3279c64536fc6c2802a7853
BLAKE2b-256 checksum
How to use checksums
1a0852e4f29e8b33f644b1934339d3ab1e1a2c22292d1d01d052cfcc9fa9de1c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.5
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page