Skip to main content

A Python3 framework for Reservoir Computing with a scikit-learn-compatible API

Project description

PyRCN

A Python 3 framework for Reservoir Computing with a scikit-learn-compatible API.

PyRCN is a light-weight and transparent Python 3 framework that implements ESNs and is based on widely used scientific Python packages, such as numpy or scipy. The API is fully scikit-learn-compatible, so that users of scikit-learn do not need to restructure their research data in order to use ESNs. Interested used can directly use scikit-learns built-in parameter optimization methods and example datasets.

Getting Started

PyRCN includes currently two variantes of Echo State Networks (ESNs): The ESNClassifier is meant to be a classifier, the ESNRegressor is meant to be a regressor.

Basic example for the ESNClassifier:

from pyrcn.echo_state_network import ESNClassifier


clf = ESNClassifier()
clf.fit(X=X_train, y=y_train)

y_pred_classes = clf.predict(X=X_test)  # output is the class for each input example
y_pred_proba = clf.predict_proba(X=X_test)  #  output are the class probabilities for each input example

Basic example for the ESNRegressor:

from pyrcn.echo_state_network import ESNRegressor


reg = ESNRegressor()
ref.fit(X=X_train, y=y_train)

y_pred_classes = reg.predict(X=X_test)  # output is the prediction for each input example

Acknowledgements

This research is financed by Europäischer Sozialfonds (ESF), the Free State of Saxony and Ghent University.

SMWA_EFRE-ESF Logo Ghent University IDLab

References

If you use the PyRCN, please cite the following publication:

@INPROCEEDINGS{src:PyRCN-20,  
	author={Peter Steiner and Simon Stone and Azarakhsh Jalalvand and Peter Birkholz},  
	booktitle={2020 25th International Conference on Pattern Recognition (ICPR)},   
	title={Feature Engineering and Stacked ESNs for Musical Onset Detection},  
	year={2020},  
	volume={},  
	number={},  
	note={submitted},
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyRCN-0.0.3.tar.gz (12.0 MB view details)

Uploaded Source

Built Distribution

PyRCN-0.0.3-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file PyRCN-0.0.3.tar.gz.

File metadata

  • Download URL: PyRCN-0.0.3.tar.gz
  • Upload date:
  • Size: 12.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.5

File hashes

Hashes for PyRCN-0.0.3.tar.gz
Algorithm Hash digest
SHA256 32e2638c4f8bde7165bac99871e8ee9f67a17bcf5edb0c88d6b23861e78ddb4f
MD5 7f7490692c8aed2efe39811493184c1e
BLAKE2b-256 d0102be391e080dfe81b162ceb8bd8a23515e01404a27ef8639eb1ce587ea1bc

See more details on using hashes here.

File details

Details for the file PyRCN-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: PyRCN-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.5

File hashes

Hashes for PyRCN-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 725d77385d33ff8211d53e27a7c698344a4e0257675148befcb488f8896ebd18
MD5 6a731978abf6638aa922ee038f40a471
BLAKE2b-256 43c580636d22b0ecc74933696e6050df7f5d6ad633b9cb9036e439a67bdbd829

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page