PyRCN: A toolbox for exploration and application of Reservoir Computing Networks

Research output: Contribution to journalResearch articleContributedpeer-review

Contributors

Abstract

Reservoir Computing Networks (RCNs) belong to a group of machine learning techniques that project the input space non-linearly into a high-dimensional feature space, where the underlying task can be solved linearly. Popular variants of RCNs are capable of solving complex tasks equivalently to widely used deep neural networks, but with a substantially simpler training paradigm based on linear regression. In this paper, we show how to uniformly describe RCNs with small and clearly defined building blocks, and we introduce the Python toolbox PyRCN (Python Reservoir Computing Networks) for optimizing, training and analyzing RCNs on arbitrarily large datasets. The tool is based on widely-used scientific packages and complies with the scikit-learn interface specification. It provides a platform for educational and exploratory analyses of RCNs, as well as a framework to apply RCNs on complex tasks including sequence processing. With a small number of building blocks, the framework allows the implementation of numerous different RCN architectures. We provide code examples on how to set up RCNs for time series prediction and for sequence classification tasks. PyRCN is around ten times faster than reference toolboxes on a benchmark task while requiring substantially less boilerplate code.

Details

Original languageEnglish
Article number104964
JournalEngineering applications of artificial intelligence : the international journal of real-time automation
Volume113
Early online date30 May 2022
Publication statusPublished - Aug 2022
Peer-reviewedYes

External IDs

Scopus 85131065709
ORCID /0000-0002-8149-2275/work/151982507
unpaywall 10.1016/j.engappai.2022.104964
Mendeley f1c4a6c6-f34b-313c-9a35-6d495ae708d8
ORCID /0000-0003-0167-8123/work/167214877

Keywords

Library keywords