An open API service indexing awesome lists of open source software.

https://github.com/fabridamicelli/echoes

Machine Learning with Echo State Networks, a scikit-learn compatible package.
https://github.com/fabridamicelli/echoes

echo-state-networks esn esnetwork machine-learning neural-network python recurrent-neural-networks reservoir-computing shallow-learning

Last synced: 3 months ago
JSON representation

Machine Learning with Echo State Networks, a scikit-learn compatible package.

Awesome Lists containing this project

README

          

[![Downloads](https://static.pepy.tech/personalized-badge/echoes?period=total&units=international_system&left_color=black&right_color=orange&left_text=Downloads)](https://pepy.tech/project/echoes)
[![CI](https://github.com/fabridamicelli/echoes/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/fabridamicelli/echoes/actions/workflows/ci.yml)
[![image](https://img.shields.io/pypi/pyversions/echoes.svg)](https://pypi.python.org/pypi/echoes)

Like the package? Don't forget to give it a GitHub ⭐ to help others find and trust it!

# echoes

- 🤖 Machine learning with Echo State Networks(ESN)
- 🧱 High level API, `scikit-learn` compatible API, eg `fit-predict` interface
- ⚡️ Fast! (Thanks to numba ✨)

## Installation and quick start
```bash
pip install echoes
```

See [Documentation](https://fabridamicelli.github.io/echoes/) and [example notebooks](https://github.com/fabridamicelli/echoes/tree/master/docs/examples/notebooks).

## Feedback
Any bugs, suggestions, problems? Just [open an issue!](https://github.com/fabridamicelli/echoes/issues/new)

## `echoes` in the wild
Here's a selection of scientific publications using this package to investigate a number of scientific topics:

- [Memory-augmented hybrid quantum reservoir computing](https://journals.aps.org/prapplied/abstract/10.1103/wzwv-7rk2)
- [Brain Connectivity meets Reservoir Computing](https://doi.org/10.1371/journal.pcbi.1010639)
- [A Computational Perspective on the No-Strong-Loops Principle in Brain Networks](https://www.biorxiv.org/content/10.1101/2025.09.24.678310v1)

## Citing
If you find echoes useful for a publication, then please use the following BibTeX to cite it:

```
@misc{echoes,
author = {Damicelli, Fabrizio},
title = {echoes: Echo State Networks with Python},
year = {2019},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/fabridamicelli/echoes}},
}
```

## Tests
Run tests with
```bash
make test
```

## References
- [Reservoir computing approaches to recurrent neural network training, Mantas & Jaeger, 2009](https://www.sciencedirect.com/science/article/pii/S1574013709000173)
- [A Practical Guide to Applying Echo State Networks, Mantas, 2012](https://link.springer.com/chapter/10.1007/978-3-642-35289-8_36)
- [Echo state network (scholarpedia), Jaeger](http://www.scholarpedia.org/article/Echo_state_network)
- [Short Term Memory in Echo State Networks, Jaeger, 2001](http://publica.fraunhofer.de/eprints/urn_nbn_de_0011-b-731310.pdf)