Reservoir computing

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Reservoir computing is a framework for computation derived from recurrent neural network theory that maps input signals into higher dimensional computational spaces through the dynamics of a fixed, non-linear system called a reservoir.[1] After the input signal is fed into the reservoir, which is treated as a "black box," a simple readout mechanism is trained to read the state of the reservoir and map it to the desired output.[1] The first key benefit of this framework is that training is performed only at the readout stage, as the reservoir dynamics are fixed.[1] The second is that the computational power of naturally available systems, both classical and quantum mechanical, can be utilized to reduce the effective computational cost.[2]


The concept of reservoir computing stems from the use of recursive connections within neural networks to create a complex dynamical system.[3] It is a generalisation of earlier neural network architectures such as recurrent neural networks, liquid-state machines and echo-state networks. Reservoir computing also extends to physical systems that are not networks in the classical sense, but rather continuous systems in space and/or time: e.g. a literal "bucket of water" can serve as a reservoir that performs computations on inputs given as perturbations of the surface.[4] The resultant complexity of such recurrent neural networks was found to be useful in solving a variety of problems including language processing and dynamic system modeling.[3] However, training of recurrent neural networks is challenging and computationally expensive.[3] Reservoir computing reduces those training-related challenges by fixing the dynamics of the reservoir and only training the linear output layer.[3]

A large variety of nonlinear dynamical systems can serve as a reservoir that performs computations. In recent years semiconductor lasers have attracted considerable interest as computation can be fast and energy efficient compared to electrical components.

Recent advances in both AI and quantum information theory have given rise to the concept of quantum neural networks.[5] These hold promise in quantum information processing, which is challenging to classical networks, but can also find application in solving classical problems.[5][6] In 2018, a physical realization of a quantum reservoir computing architecture was demonstrated in the form of nuclear spins within a molecular solid.[6] However, the nuclear spin experiments in [6] did not demonstrate quantum reservoir computing per se as they did not involve processing of sequential data. Rather the data were vector inputs, which makes this more accurately a demonstration of quantum implementation of a random kitchen sink[7] algorithm (also going by the name of extreme learning machines in some communities). In 2019, another possible implementation of quantum reservoir processors was proposed in the form of two-dimensional fermionic lattices.[6] In 2020, realization of reservoir computing on gate-based quantum computers was proposed and demonstrated on cloud-based IBM superconducting near-term quantum computers.[8]

Classical reservoir computing[edit]


The 'reservoir' in reservoir computing is the internal structure of the computer, and must have two properties: it must be made up of individual, non-linear units, and it must be capable of storing information.[9] The non-linearity describes the response of each unit to input, which is what allows reservoir computers to solve complex problems.[9] Reservoirs are able to store information by connecting the units in recurrent loops, where the previous input affects the next response.[9] The change in reaction due to the past allows the computers to be trained to complete specific tasks.[9]

Reservoirs can be virtual or physical.[9] Virtual reservoirs are typically randomly generated and are designed like neural networks.[9][3] Virtual reservoirs can be designed to have non-linearity and recurrent loops, but, unlike neural networks, the connections between units are randomized and remain unchanged throughout computation.[9] Physical reservoirs are possible because of the inherent non-linearity of certain natural systems.[1] The interaction between ripples on the surface of water contains the nonlinear dynamics required in reservoir creation, and a pattern recognition RC was developed by first inputting ripples with electric motors then recording and analyzing the ripples in the readout.[1]


The readout is a neural network layer that performs a linear transformation on the output of the reservoir.[1] The weights of the readout layer are trained by analyzing the spatiotemporal patterns of the reservoir after excitation by known inputs, and by utilizing a training method such as a linear regression or a Ridge regression.[1] As its implementation depends on spatiotemporal reservoir patterns, the details of readout methods are tailored to each type of reservoir.[1] For example, the readout for a reservoir computer using a container of liquid as its reservoir might entail observing spatiotemporal patterns on the surface of the liquid.[1]


Context reverberation network[edit]

An early example of reservoir computing was the context reverberation network.[10] In this architecture, an input layer feeds into a high dimensional dynamical system which is read out by a trainable single-layer perceptron. Two kinds of dynamical system were described: a recurrent neural network with fixed random weights, and a continuous reaction-diffusion system inspired by Alan Turing’s model of morphogenesis. At the trainable layer, the perceptron associates current inputs with the signals that reverberate in the dynamical system; the latter were said to provide a dynamic "context" for the inputs. In the language of later work, the reaction-diffusion system served as the reservoir.

Echo state network[edit]

The Tree Echo State Network (TreeESN) model represents a generalization of the reservoir computing framework to tree structured data.[11]

Liquid-state machine[edit]

Nonlinear transient computation[edit]

This type of information processing is most relevant when time-dependent input signals depart from the mechanism’s internal dynamics.[12] These departures cause transients or temporary altercations which are represented in the device’s output.[12]

Deep reservoir computing[edit]

The extension of the reservoir computing framework towards Deep Learning, with the introduction of Deep Reservoir Computing and of the Deep Echo State Network (DeepESN) model[13][14][15][16] allows to develop efficiently trained models for hierarchical processing of temporal data, at the same time enabling the investigation on the inherent role of layered composition in recurrent neural networks.

Quantum reservoir computing[edit]

Quantum reservoir computing may utilize the nonlinear nature of quantum mechanical interactions or processes to form the characteristic nonlinear reservoirs[5][6][17][8] but may also be done with linear reservoirs when the injection of the input to the reservoir creates the nonlinearity.[18] The marriage of machine learning and quantum devices is leading to the emergence of quantum neuromorphic computing as a new research area.[19]


Gaussian states of interacting quantum harmonic oscillators[edit]

Gaussian states are a paradigmatic class of states of continuous variable quantum systems.[20] Although they can nowadays be created and manipulated in, e.g, state-of-the-art optical platforms,[21] naturally robust to decoherence, it is well-known that they are not sufficient for, e.g., universal quantum computing because transformations that preserve the Gaussian nature of a state are linear.[22] Normally, linear dynamics would not be sufficient for nontrivial reservoir computing either. It is nevertheless possible to harness such dynamics for reservoir computing purposes by considering a network of interacting quantum harmonic oscillators and injecting the input by periodical state resets of a subset of the oscillators. With a suitable choice of how the states of this subset of oscillators depends on the input, the observables of the rest of the oscillators can become nonlinear functions of the input suitable for reservoir computing; indeed, thanks to the properties of these functions, even universal reservoir computing becomes possible by combining the observables with a polynomial readout function.[18] In principle, such reservoir computers could be implemented with controlled multimode optical parametric processes,[23] however efficient extraction of the output from the system is challenging especially in the quantum regime where measurement back-action must be taken into account.

2-D quantum dot lattices[edit]

In this architecture, randomized coupling between lattice sites grants the reservoir the “black box” property inherent to reservoir processors.[5] The reservoir is then excited, which acts as the input, by an incident optical field. Readout occurs in the form of occupational numbers of lattice sites, which are naturally nonlinear functions of the input.[5]

Nuclear spins in a molecular solid[edit]

In this architecture, quantum mechanical coupling between spins of neighboring atoms within the molecular solid provides the non-linearity required to create the higher-dimensional computational space.[6] The reservoir is then excited by radiofrequency electromagnetic radiation tuned to the resonance frequencies of relevant nuclear spins.[6] Readout occurs by measuring the nuclear spin states.[6]

Reservoir computing on gate-based near-term superconducting quantum computers[edit]

The most prevalent model of quantum computing is the gate-based model where quantum computation is performed by sequential applications of unitary quantum gates on qubits of a quantum computer.[24] A theory for the implementation of reservoir computing on a gate-based quantum computer with proof-of-principle demonstrations on a number of IBM superconducting noisy intermediate-scale quantum (NISQ) computers[25] has been reported in.[8]

Research initiatives[edit]

IEEE Task Force on Reservoir Computing[edit]

In 2018, the IEEE Task Force on Reservoir Computing has been established with the purpose of promoting and stimulating the development of Reservoir Computing research under both theoretical and application perspectives.

Physical reservoir computers[edit]

Optical reservoir computing[edit]

Fluidic reservoir computer[26][edit]

Reservoir computer using coupled oscillators[27][edit]

Reservoir computer using memristor[28][29][edit]

Biological reservoir computer[1][edit]

See also[edit]


  1. ^ a b c d e f g h i j Tanaka, Gouhei; Yamane, Toshiyuki; Héroux, Jean Benoit; Nakane, Ryosho; Kanazawa, Naoki; Takeda, Seiji; Numata, Hidetoshi; Nakano, Daiju; Hirose, Akira (2019). "Recent advances in physical reservoir computing: A review". Neural Networks. 115: 100–123. doi:10.1016/j.neunet.2019.03.005. ISSN 0893-6080. PMID 30981085.
  2. ^ Röhm, André; Lüdge, Kathy (2018-08-03). "Multiplexed networks: reservoir computing with virtual and real nodes". Journal of Physics Communications. 2 (8): 085007. Bibcode:2018JPhCo...2h5007R. doi:10.1088/2399-6528/aad56d. ISSN 2399-6528.
  3. ^ a b c d e Schrauwen, Benjamin, David Verstraeten, and Jan Van Campenhout. "An overview of reservoir computing: theory, applications, and implementations." Proceedings of the European Symposium on Artificial Neural Networks ESANN 2007, pp. 471-482.
  4. ^ Fernando, C.; Sojakka, Sampsa (2003). "Pattern Recognition in a Bucket". ECAL. Lecture Notes in Computer Science. 2801: 588–597. doi:10.1007/978-3-540-39432-7_63. ISBN 978-3-540-20057-4. S2CID 15073928.
  5. ^ a b c d e Ghosh, Sanjib; Opala, Andrzej; Matuszewski, Michał; Paterek, Tomasz; Liew, Timothy C. H. (December 2019). "Quantum reservoir processing". NPJ Quantum Information. 5 (1): 35. arXiv:1811.10335. Bibcode:2019npjQI...5...35G. doi:10.1038/s41534-019-0149-8. ISSN 2056-6387. S2CID 119197635.
  6. ^ a b c d e f g h Negoro, Makoto; Mitarai, Kosuke; Fujii, Keisuke; Nakajima, Kohei; Kitagawa, Masahiro (2018-06-28). "Machine learning with controllable quantum dynamics of a nuclear spin ensemble in a solid". arXiv:1806.10910 [quant-ph].
  7. ^ Rahimi, Ali; Brecht, Benjamin (December 2008). "Weighted Sums of Random Kitchen Sinks: Replacing minimization with randomization in Learning" (PDF). NIPS'08: Proceedings of the 21st International Conference on Neural Information Processing Systems: 1313–1320.
  8. ^ a b c Chen, Jiayin; Nurdin, Hendra; Yamamoto, Naoki (2020-08-24). "Temporal Information Processing on Noisy Quantum Computers". Physical Review Applied. 14 (2): 024065. arXiv:2001.09498. Bibcode:2020PhRvP..14b4065C. doi:10.1103/PhysRevApplied.14.024065. S2CID 210920543.
  9. ^ a b c d e f g Soriano, Miguel C. (2017-02-06). "Viewpoint: Reservoir Computing Speeds Up". Physics. 10. doi:10.1103/Physics.10.12.
  10. ^ Kirby, Kevin. "Context dynamics in neural sequential learning." Proceedings of the Florida Artificial Intelligence Research Symposium FLAIRS (1991), 66-70.
  11. ^ Gallicchio, Claudio; Micheli, Alessio (2013). "Tree Echo State Networks". Neurocomputing. 101: 319–337. doi:10.1016/j.neucom.2012.08.017. hdl:11568/158480.
  12. ^ a b Crook, Nigel (2007). "Nonlinear Transient Computation". Neurocomputing. 70 (7–9): 1167–1176. doi:10.1016/j.neucom.2006.10.148.
  13. ^ Pedrelli, Luca (2019). Deep Reservoir Computing: A Novel Class of Deep Recurrent Neural Networks (PhD thesis). Università di Pisa.
  14. ^ Gallicchio, Claudio; Micheli, Alessio; Pedrelli, Luca (2017-12-13). "Deep reservoir computing: A critical experimental analysis". Neurocomputing. 268: 87–99. doi:10.1016/j.neucom.2016.12.089. hdl:11568/851934.
  15. ^ Gallicchio, Claudio; Micheli, Alessio (2017-05-05). "Echo State Property of Deep Reservoir Computing Networks". Cognitive Computation. 9 (3): 337–350. doi:10.1007/s12559-017-9461-9. hdl:11568/851932. ISSN 1866-9956. S2CID 1077549.
  16. ^ Gallicchio, Claudio; Micheli, Alessio; Pedrelli, Luca (December 2018). "Design of deep echo state networks". Neural Networks. 108: 33–47. doi:10.1016/j.neunet.2018.08.002. hdl:11568/939082. ISSN 0893-6080. PMID 30138751.
  17. ^ Chen, Jiayin; Nurdin, Hendra (2019-05-15). "Learning nonlinear input–output maps with dissipative quantum systems". Quantum Information Processing. 18 (7): 198. arXiv:1901.01653. Bibcode:2019QuIP...18..198C. doi:10.1007/s11128-019-2311-9. S2CID 57573677.
  18. ^ a b Nokkala, Johannes; Martínez-Peña, Rodrigo; Giorgi, Gian Luca; Parigi, Valentina; Soriano, Miguel C.; Zambrini, Roberta (2020-06-08). "Gaussian states provide universal and versatile quantum reservoir computing". arXiv:2006.04821 [quant-ph].
  19. ^ Marković, Danijela; Grollier, Julie (2020-10-13). "Quantum Neuromorphic Computing". Applied Physics Letters. 117 (15): 150501. arXiv:2006.15111. Bibcode:2020ApPhL.117o0501M. doi:10.1063/5.0020014. S2CID 210920543.
  20. ^ Ferraro, Alessandro; Olivares, Stefano; Paris, Matteo G. A. (2005-03-31). "Gaussian states in continuous variable quantum information". arXiv:quant-ph/0503237.
  21. ^ Roslund, Jonathan; de Araújo, Renné Medeiros; Jiang, Shifeng; Fabre, Claude; Treps, Nicolas (2013-12-15). "Wavelength-multiplexed quantum networks with ultrafast frequency combs". Nature Photonics. 8 (2): 109–112. arXiv:1307.1216. doi:10.1038/nphoton.2013.340. ISSN 1749-4893. S2CID 2328402.
  22. ^ Bartlett, Stephen D.; Sanders, Barry C.; Braunstein, Samuel L.; Nemoto, Kae (2002-02-14). "Efficient Classical Simulation of Continuous Variable Quantum Information Processes". Physical Review Letters. 88 (9): 097904. arXiv:quant-ph/0109047. Bibcode:2002PhRvL..88i7904B. doi:10.1103/PhysRevLett.88.097904. PMID 11864057. S2CID 2161585.
  23. ^ Nokkala, J.; Arzani, F.; Galve, F.; Zambrini, R.; Maniscalco, S.; Piilo, J.; Treps, N.; Parigi, V. (2018-05-09). "Reconfigurable optical implementation of quantum complex networks". New Journal of Physics. 20 (5): 053024. arXiv:1708.08726. Bibcode:2018NJPh...20e3024N. doi:10.1088/1367-2630/aabc77. ISSN 1367-2630. S2CID 119091176.
  24. ^ Nielsen, Michael; Chuang, Isaac (2010), Quantum Computation and Quantum Information (2 ed.), Cambridge University Press Cambridge
  25. ^ John Preskill. "Quantum Computing in the NISQ era and beyond." Quantum 2,79 (2018)
  26. ^ Fernando, Chrisantha; Sojakka, Sampsa (2003), "Pattern Recognition in a Bucket", Advances in Artificial Life, Springer Berlin Heidelberg, pp. 588–597, doi:10.1007/978-3-540-39432-7_63, ISBN 9783540200574, S2CID 15073928
  27. ^ Coulombe, Jean C.; York, Mark C. A.; Sylvestre, Julien (2017-06-02). "Computing with networks of nonlinear mechanical oscillators". PLOS ONE. 12 (6): e0178663. arXiv:1704.06320. Bibcode:2017PLoSO..1278663C. doi:10.1371/journal.pone.0178663. ISSN 1932-6203. PMC 5456098. PMID 28575018.
  28. ^ Du, Chao; Cai, Fuxi; Zidan, Mohammed A.; Ma, Wen; Lee, Seung Hwan; Lu, Wei D. (2017). "Reservoir computing using dynamic memristors for temporal information processing". Nature Communications. 8 (1): 2204. Bibcode:2017NatCo...8.2204D. doi:10.1038/s41467-017-02337-y. ISSN 2041-1723. PMC 5736649. PMID 29259188.
  29. ^ Forrest, Sheldon; Kolchinski, Artemy; Caravelli, Francesco (2020). "The computational capacity of memristor reservoirs". arXiv:2009.00112 [cs.NE].

Further reading[edit]