Changes
Almost everything changed from previous version. Note the following changes:
- Node API: everything in ReservoirPy is now a Node, which is the minimal piece of dynamical system defined in the library. It can apply a function to some input data, modify its internal state, train its parameters...
- ...and get involved in much bigger architectures through Model objects. Model objects store graphs of Nodeobjects, and can handle forward flow of data, training of online and offline nodes, and feedbacks.
- Reservoirs have now their own class ! Along with a lot of other tools defined in reservoirpy.nodes module: non linear vector auto regressive machine (NVAR), dense network with Tikhonov regression, FORCE learning, activations functions, operators... and more coming in the next releases.
- While Model objects define complex flow of data between nodes, feedback connections define complex flow of data between nodes shifted in time. This allows for more refined techniques to be applied.
- Subclassing a Node requires only a bunch of functions, and allows to quickly create new nodes and test new behaviors.
- The ESN class has not disappeared though, and is back as Model instance optimized with some parallelization (still ongoing work, parallelization might still lead to unpredicted behavior with some configurations).
- The reservoirpy.compat module keep track of everything from the last release (v0.2.4) of ReservoirPy.
Full Changelog: v0.2.4...v0.3.0-b
**Full Changelog**: https://github.com/reservoirpy/reservoirpy/compare/v0.2.4...v0.3.0