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 used to reduce the effective computational cost.[2]
History
The first examples of reservoir neural networks demonstrated that randomly connected recurrent neural networks could be used for simple forms of interval and speech discrimination[3][4]. In these early models the memory in the network took the form of both short-term synaptic plasticity and activity mediated by recurrent connections. In other early reservoir neural network models the memory of the recent stimulus history was provided solely by the recurrent activity[5][6]. Overall, the general concept of reservoir computing stems from the use of recursive connections within neural networks to create a complex dynamical system.[7] 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.[8] 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.[7] However, training of recurrent neural networks is challenging and computationally expensive.[7] Reservoir computing reduces those training-related challenges by fixing the dynamics of the reservoir and only training the linear output layer.[7]
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.[9] These hold promise in quantum information processing, which is challenging to classical networks, but can also find application in solving classical problems.[9][10] In 2018, a physical realization of a quantum reservoir computing architecture was demonstrated in the form of nuclear spins within a molecular solid.[10] However, the nuclear spin experiments in [10] 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[11] 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.[10] In 2020, realization of reservoir computing on gate-based quantum computers was proposed and demonstrated on cloud-based IBM superconducting near-term quantum computers.[12]
Reservoir computers have been used for time-series analysis purposes. In particular, some of their usages involve chaotic time-series prediction,[13][14] separation of chaotic signals,[15] and link inference of networks from their dynamics.[16]
Classical reservoir computing
Reservoir
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. The non-linearity describes the response of each unit to input, which is what allows reservoir computers to solve complex problems. Reservoirs are able to store information by connecting the units in recurrent loops, where the previous input affects the next response. The change in reaction due to the past allows the computers to be trained to complete specific tasks.[17]
Reservoirs can be virtual or physical.[17] Virtual reservoirs are typically randomly generated and are designed like neural networks.[17][7] 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.[17] Physical reservoirs are possible because of the inherent non-linearity of certain natural systems. 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]
Readout
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]
Types
Context reverberation network
An early example of reservoir computing was the context reverberation network.[18] 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
The Tree Echo State Network (TreeESN) model represents a generalization of the reservoir computing framework to tree structured data.[19]
Liquid-state machine
Chaotic Liquid State Machine
The liquid (i.e. reservoir) of a Chaotic Liquid State Machine (CLSM),[20][21] or chaotic reservoir, is made from chaotic spiking neurons but which stabilize their activity by settling to a single hypothesis that describes the trained inputs of the machine. This is in contrast to general types of reservoirs that don’t stabilize. The liquid stabilization occurs via synaptic plasticity and chaos control that govern neural connections inside the liquid. CLSM showed promising results in learning sensitive time series data.[20][21]
Nonlinear transient computation
This type of information processing is most relevant when time-dependent input signals depart from the mechanism’s internal dynamics.[22] These departures cause transients or temporary altercations which are represented in the device’s output.[22]
Deep reservoir computing
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[23][24][25][26] 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
Quantum reservoir computing may use the nonlinear nature of quantum mechanical interactions or processes to form the characteristic nonlinear reservoirs[9][10][27][12] but may also be done with linear reservoirs when the injection of the input to the reservoir creates the nonlinearity.[28] The marriage of machine learning and quantum devices is leading to the emergence of quantum neuromorphic computing as a new research area.[29]
Types
Gaussian states of interacting quantum harmonic oscillators
Gaussian states are a paradigmatic class of states of continuous variable quantum systems.[30] Although they can nowadays be created and manipulated in, e.g, state-of-the-art optical platforms,[31] 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.[32] 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.[28] In principle, such reservoir computers could be implemented with controlled multimode optical parametric processes,[33] 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
In this architecture, randomized coupling between lattice sites grants the reservoir the “black box” property inherent to reservoir processors.[9] 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.[9]
Nuclear spins in a molecular solid
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.[10] The reservoir is then excited by radiofrequency electromagnetic radiation tuned to the resonance frequencies of relevant nuclear spins.[10] Readout occurs by measuring the nuclear spin states.[10]
Reservoir computing on gate-based near-term superconducting quantum computers
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.[34] 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[35] has been reported in.[12]
See also
References
- ^ a b c d e f g h 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. arXiv:1808.04962. doi:10.1016/j.neunet.2019.03.005. ISSN 0893-6080. PMID 30981085.
- ^ 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. arXiv:1802.08590. Bibcode:2018JPhCo...2h5007R. doi:10.1088/2399-6528/aad56d. ISSN 2399-6528.
- ^ Buonomano, Dean (1995). "Temporal information transformed into a spatial code by a neural network with realistic properties". Science. 267 (5200): 1028–30. doi:10.1126/science.7863330.
- ^ Maass, Wolfgang (2002). "Real-time computing without stable states: a new framework for neural computation based on perturbations". Neural Computation. 14 (11): 2531–2560. doi:10.1162/089976602760407955. PMID 12433288.
- ^ Buonomano, Mauk (1994). "Neural network model of the cerebellum: temporal discrimination and the timing of motor responses". Neural Computation. 6: 38–55. doi:10.1162/neco.1994.6.1.38.
- ^ Jaeger, Hubert (2004). "Harnessing nonlinearity: predicting chaotic systems and saving energy in wireless communication". Science. 304 (5667): 78–80. doi:10.1126/science.1091277. PMID 15064413.
- ^ a b c d e Benjamin Schrauwen, 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.
- ^ Fernando, C.; Sojakka, Sampsa (2003). "Pattern Recognition in a Bucket". Advances in Artificial Life. Lecture Notes in Computer Science. Vol. 2801. pp. 588–597. doi:10.1007/978-3-540-39432-7_63. ISBN 978-3-540-20057-4. S2CID 15073928.
- ^ 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.
- ^ 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].
- ^ Rahimi, Ali; Recht, 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.
- ^ 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.
- ^ Pathak, Jaideep; Hunt, Brian; Girvan, Michelle; Lu, Zhixin; Ott, Edward (2018-01-12). "Model-Free Prediction of Large Spatiotemporally Chaotic Systems from Data: A Reservoir Computing Approach". Physical Review Letters. 120 (2): 024102. Bibcode:2018PhRvL.120b4102P. doi:10.1103/PhysRevLett.120.024102. PMID 29376715.
- ^ Vlachas, P.R.; Pathak, J.; Hunt, B.R.; Sapsis, T.P.; Girvan, M.; Ott, E.; Koumoutsakos, P. (2020-03-21). "Backpropagation algorithms and Reservoir Computing in Recurrent Neural Networks for the forecasting of complex spatiotemporal dynamics". Neural Networks. 126: 191–217. arXiv:1910.05266. doi:10.1016/j.neunet.2020.02.016. ISSN 0893-6080. PMID 32248008. S2CID 211146609.
- ^ Krishnagopal, Sanjukta; Girvan, Michelle; Ott, Edward; Hunt, Brian R. (2020-02-01). "Separation of chaotic signals by reservoir computing". Chaos: An Interdisciplinary Journal of Nonlinear Science. 30 (2): 023123. arXiv:1910.10080. Bibcode:2020Chaos..30b3123K. doi:10.1063/1.5132766. ISSN 1054-1500. PMID 32113243. S2CID 204823815.
- ^ Banerjee, Amitava; Hart, Joseph D.; Roy, Rajarshi; Ott, Edward (2021-07-20). "Machine Learning Link Inference of Noisy Delay-Coupled Networks with Optoelectronic Experimental Tests". Physical Review X. 11 (3): 031014. arXiv:2010.15289. Bibcode:2021PhRvX..11c1014B. doi:10.1103/PhysRevX.11.031014.
- ^ a b c d Soriano, Miguel C. (2017-02-06). "Viewpoint: Reservoir Computing Speeds Up". Physics. 10: 12. doi:10.1103/Physics.10.12. hdl:10261/173181.
- ^ Kevin Kirby. "Context dynamics in neural sequential learning." Proceedings of the Florida Artificial Intelligence Research Symposium FLAIRS (1991), 66–70.
- ^ Gallicchio, Claudio; Micheli, Alessio (2013). "Tree Echo State Networks". Neurocomputing. 101: 319–337. doi:10.1016/j.neucom.2012.08.017. hdl:11568/158480.
- ^ a b Aoun, Mario Antoine; Boukadoum, Mounir (2014). "Learning algorithm and neurocomputing architecture for NDS Neurons". 2014 IEEE 13th International Conference on Cognitive Informatics and Cognitive Computing. IEEE. pp. 126–132. doi:10.1109/icci-cc.2014.6921451. ISBN 978-1-4799-6081-1. S2CID 16026952.
- ^ a b Aoun, Mario Antoine; Boukadoum, Mounir (2015). "Chaotic Liquid State Machine". International Journal of Cognitive Informatics and Natural Intelligence. 9 (4): 1–20. doi:10.4018/ijcini.2015100101. ISSN 1557-3958.
- ^ a b Crook, Nigel (2007). "Nonlinear Transient Computation". Neurocomputing. 70 (7–9): 1167–1176. doi:10.1016/j.neucom.2006.10.148.
- ^ Pedrelli, Luca (2019). Deep Reservoir Computing: A Novel Class of Deep Recurrent Neural Networks (PhD thesis). Università di Pisa.
- ^ 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.
- ^ 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.
- ^ 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. S2CID 52075702.
- ^ 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.
- ^ a b Nokkala, Johannes; Martínez-Peña, Rodrigo; Giorgi, Gian Luca; Parigi, Valentina; Soriano, Miguel C.; Zambrini, Roberta (2021). "Gaussian states of continuous-variable quantum systems provide universal and versatile reservoir computing". Communications Physics. 4 (1): 53. arXiv:2006.04821. Bibcode:2021CmPhy...4...53N. doi:10.1038/s42005-021-00556-w. S2CID 234355683.
- ^ 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.
- ^ Ferraro, Alessandro; Olivares, Stefano; Paris, Matteo G. A. (2005-03-31). "Gaussian states in continuous variable quantum information". arXiv:quant-ph/0503237.
- ^ 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.
- ^ 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.
- ^ 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.
- ^ Nielsen, Michael; Chuang, Isaac (2010), Quantum Computation and Quantum Information (2 ed.), Cambridge University Press Cambridge
- ^ John Preskill. "Quantum Computing in the NISQ era and beyond." Quantum 2,79 (2018)
Further reading
- Reservoir Computing using delay systems, Nature Communications 2011
- Optoelectronic Reservoir Computing, Scientific Reports February 2012
- Optoelectronic Reservoir Computing, Optics Express 2012
- All-optical Reservoir Computing, Nature Communications 2013
- Memristor Models for Machine learning, Neural Computation 2014 arxiv