Skip to main content
Ctrl+K
Logo image

Site Navigation

  • Getting started
  • User Guide
  • API reference
  • Developer guide

Site Navigation

  • Getting started
  • User Guide
  • API reference
  • Developer guide
Ctrl+K

Section Navigation

  • ReservoirPy Nodes (reservoirpy.nodes)
    • reservoirpy.nodes.Reservoir
    • reservoirpy.nodes.NVAR
    • reservoirpy.nodes.IPReservoir
    • reservoirpy.nodes.LocalPlasticityReservoir
    • reservoirpy.nodes.ES2N
    • reservoirpy.nodes.Ridge
    • reservoirpy.nodes.ScikitLearnNode
    • reservoirpy.nodes.LMS
    • reservoirpy.nodes.RLS
    • reservoirpy.nodes.Tanh
    • reservoirpy.nodes.Sigmoid
    • reservoirpy.nodes.Softmax
    • reservoirpy.nodes.Softplus
    • reservoirpy.nodes.ReLU
    • reservoirpy.nodes.Identity
    • reservoirpy.nodes.Input
    • reservoirpy.nodes.Output
  • Weights initialization (reservoirpy.mat_gen)
    • reservoirpy.mat_gen.random_sparse
    • reservoirpy.mat_gen.uniform
    • reservoirpy.mat_gen.normal
    • reservoirpy.mat_gen.bernoulli
    • reservoirpy.mat_gen.ring
    • reservoirpy.mat_gen.line
    • reservoirpy.mat_gen.orthogonal
    • reservoirpy.mat_gen.cluster
    • reservoirpy.mat_gen.small_world
    • reservoirpy.mat_gen.zeros
    • reservoirpy.mat_gen.ones
    • reservoirpy.mat_gen.fast_spectral_initialization
    • reservoirpy.mat_gen.Initializer
  • Activations functions (reservoirpy.activationsfunc)
    • reservoirpy.activationsfunc.get_function
    • reservoirpy.activationsfunc.identity
    • reservoirpy.activationsfunc.sigmoid
    • reservoirpy.activationsfunc.tanh
    • reservoirpy.activationsfunc.relu
    • reservoirpy.activationsfunc.softmax
    • reservoirpy.activationsfunc.softplus
  • Metrics and observables (reservoirpy.observables)
    • reservoirpy.observables.spectral_radius
    • reservoirpy.observables.mse
    • reservoirpy.observables.rmse
    • reservoirpy.observables.nrmse
    • reservoirpy.observables.rsquare
    • reservoirpy.observables.memory_capacity
    • reservoirpy.observables.effective_spectral_radius
  • Datasets (reservoirpy.datasets)
    • reservoirpy.datasets.mackey_glass
    • reservoirpy.datasets.lorenz
    • reservoirpy.datasets.multiscroll
    • reservoirpy.datasets.doublescroll
    • reservoirpy.datasets.rabinovich_fabrikant
    • reservoirpy.datasets.lorenz96
    • reservoirpy.datasets.rossler
    • reservoirpy.datasets.kuramoto_sivashinsky
    • reservoirpy.datasets.mso
    • reservoirpy.datasets.mso2
    • reservoirpy.datasets.mso8
    • reservoirpy.datasets.logistic_map
    • reservoirpy.datasets.henon_map
    • reservoirpy.datasets.narma
    • reservoirpy.datasets.japanese_vowels
    • reservoirpy.datasets.santafe_laser
    • reservoirpy.datasets.to_forecasting
    • reservoirpy.datasets.one_hot_encode
    • reservoirpy.datasets.from_aeon_classification
    • reservoirpy.datasets.set_seed
    • reservoirpy.datasets.get_seed
  • Hyperparameter optimization helpers (reservoirpy.hyper)
    • reservoirpy.hyper.research
    • reservoirpy.hyper.parallel_research
    • reservoirpy.hyper.plot_hyperopt_report
  • Node API (reservoirpy.node)
    • reservoirpy.node.Node
    • reservoirpy.node.TrainableNode
    • reservoirpy.node.OnlineNode
    • reservoirpy.node.ParallelNode
  • Models (reservoirpy.Model)
  • Node operations - link, merge (reservoirpy.ops)
    • reservoirpy.ops.link
    • reservoirpy.ops.merge
    • reservoirpy.ops.link_feedback
  • Echo State Network reservoirpy.ESN
  • ReservoirPy API reference
  • Node operations - link, merge (reservoirpy.ops)
  • reservoirpy.ops.link_feedback

reservoirpy.ops.link_feedback#

class reservoirpy.ops.link_feedback(
sender: Node | Model | Sequence[Node | Model],
receiver: Node | Model | Sequence[Node | Model],
)[source]#

Create a feedback connection from the sender to the receiver. Feedback connections are regular node-to-node connections with a delay of one timestep.

If sender or receiver is a Model or a list of Nodes or Models, all outputs of sender will be connected as feedback to receiver.

You can also perform this operation using the << operator:

node1 = node1 << node2
# with feedback from a Model
node1 = node1 << (fbnode1 >> fbnode2)
# with feedback from a list of nodes or models
node1 = node1 << [fbnode1, fbnode2, ...]

You can also use this function to define feedback:

node1 = link_feedback(node1, node2)
Parameters:
  • sender (Node, Model, or list of Nodes or Models) – Node(s) or Model(s) sending feedback.

  • receiver (Node, Model, or list of Nodes or Models) – Node(s) or Model(s) receiving feedback.

Returns:

A model instance with all node and connections from sender and receiver and with feedback connections from sender to receiver.

Return type:

Model

Raises:

TypeError – If any of the senders or receivers are not Nodes or Models.

previous

reservoirpy.ops.merge

next

Echo State Network reservoirpy.ESN

On this page
  • link_feedback
Show Source

© Copyright 2025, Xavier Hinaut, Nathan Trouvain, Paul Bernard.

Created using Sphinx 7.2.6.

Built with the PyData Sphinx Theme 0.13.3.