esnfed¶
Echo State Networks for Federated Learning — a small, dependency-light Python toolkit for training reservoir-computing models in a federated setting, where several parties jointly train a model without sharing their raw data.
The core depends only on NumPy and NetworkX.
Open the interactive playground Run it live (JupyterLite)
The playground runs a real Echo State Network in your browser — drag sliders and watch reservoir activations move, race central vs federated vs local vs ensemble, and probe the network's memory. No install, no server.
Why this and not ReservoirPy?
ReservoirPy is the mature library for building and tuning reservoir models. esnfed does not replace it — it adds the federated layer ReservoirPy lacks, and interoperates with it. Design a reservoir in ReservoirPy, federate it here in one line.
See it¶
-
Reservoir topology

-
Echo state property

The spectral radius controls memory and stability — eigenvalues must stay inside the unit circle for the echo state property to hold:

A reservoir's response to an impulse — the fading echoes the readout learns to combine:

Headline result — federation is essential on real data¶
On the real counterparty-risk series, exact federated ridge stays accurate as the federation grows while local-only training collapses (interactive, log scale):
See the full gallery of interactive result charts, the playground, and the queryable results database.
What's inside¶
-
Echo State Network
Leaky-integrator reservoir + closed-form ridge readout.
-
Reservoir topologies
Erdős–Rényi, small-world, scale-free, ring — and graph descriptors.
-
Federated strategies
Exact federated ridge, FedAvg, prediction ensemble, structural alignment.
-
Real & synthetic data
NARMA-10, Mackey-Glass, Lorenz, and a bundled counterparty-risk series.
-
Interoperability
Adapters for ReservoirPy; an example integration with Flower.
-
FedResPrompt
An experimental reservoir prompt-controller for federated LLMs.
Next steps¶
- Install the library (and its optional extras).
- Follow the Quickstart.
- Browse the Examples — interactive Plotly charts and notebooks.
- Read the API reference.