Reservoir computing: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
FrescoBot (discussione | contributi)
m Bot: numeri di pagina nei template citazione
 
(23 versioni intermedie di 19 utenti non mostrate)
Riga 1:
Con '''Reservoirreservoir Computingcomputing'''<ref>{{Cita|Lukoševičius}}.</ref> ci si riferisce all'ad un insieme di tre famigliemetodologie per la progettazione e l'[[Apprendimento supervisionato|allenamento]] delledi [[Rete neurale ricorrente|reti neurali ricorrenti]]:, nel cui ambito sono lericompresi Echo State NetworksNetwork,<ref name=jaeger>{{Cita|Jaeger}}.</ref> le Liquid State Machines,Machine<ref name=Maass>{{Cita|Maass}}.</ref> e l'algoritmo Backpropagation-Decorrelation.<ref name=steil>{{Cita|Steil}}.</ref> Il termine è stato introdotto nel 2007<ref>{{Cita|Verstraeten}}.</ref> per sottolineare come tuttequeste e tre le tecnichemetodologie condividano la stessa idea fondamentale di base, la separazione fra la parte ricorrente (dinamica) della rete, il ''reservoir'', dalla parte non-ricorrente, il ''readout''. Questo permette di separare l'allenamento complessivo della rete ricorrente in due fasi distinte. In particolare, una volta fissato il reservoir (ad esempio con una generazione [[RandomizzazioneAleatorietà|casuale]] delle sue connessioni interne), la scelta più comune è quella di allenare il readout tramite una [[regressione lineare]] (in modalità batch) o tramite un approccio basato sulla [[Discesa del gradiente|discesa al gradiente]], nel caso [[Apprendimento online|online]]. Questo evita il ricorso a tecniche di [[Backpropagation|error backpropagation]] sull'intera rete ricorrente, come la ''[[backpropagation through time]]''.<ref>Jaeger, H. (2002). ''[http://www.pdx.edu/sites/www.pdx.edu.sysc/files/Jaeger_TrainingRNNsTutorial.2005.pdf Tutorial on training recurrent neural networks, covering BPPT, RTRL, EKF and the" echo state network" approach] {{Webarchive|url=https://web.archive.org/web/20140808052352/http://www.pdx.edu/sites/www.pdx.edu.sysc/files/Jaeger_TrainingRNNsTutorial.2005.pdf |data=8 agosto 2014 }}''[http://www.pdx.edu/sites/www.pdx.edu.sysc/files/Jaeger_TrainingRNNsTutorial.2005.pdf .] {{Webarchive|url=https://web.archive.org/web/20140808052352/http://www.pdx.edu/sites/www.pdx.edu.sysc/files/Jaeger_TrainingRNNsTutorial.2005.pdf |data=8 agosto 2014 }} GMD-Forschungszentrum Informationstechnik.</ref>
{{O|scienza|agosto 2014}}
Con '''Reservoir Computing'''<ref>{{Cita|Lukoševičius}}</ref> ci si riferisce all'insieme di tre famiglie per l'[[Apprendimento supervisionato|allenamento]] delle [[reti neurali ricorrenti]]: le Echo State Networks,<ref name=jaeger>{{Cita|Jaeger}}</ref> le Liquid State Machines,<ref name=Maass>{{Cita|Maass}}</ref> e l'algoritmo Backpropagation-Decorrelation.<ref name=steil>{{Cita|Steil}}</ref> Il termine è stato introdotto nel 2007<ref>{{Cita|Verstraeten}}</ref> per sottolineare come tutte e tre le tecniche condividano la stessa idea fondamentale di base, la separazione fra la parte ricorrente della rete, il ''reservoir'', dalla parte non-ricorrente, il ''readout''. Questo permette di separare l'allenamento complessivo della rete ricorrente in due fasi distinte. In particolare, una volta fissato il reservoir (ad esempio con una generazione [[Randomizzazione|casuale]] delle sue connessioni interne), la scelta più comune è quella di allenare il readout tramite una [[regressione lineare]] (in modalità batch) o tramite un approccio basato sulla [[Discesa del gradiente|discesa al gradiente]], nel caso [[Apprendimento online|online]]. Questo evita il ricorso a tecniche di [[Backpropagation|error backpropagation]] sull'intera rete ricorrente, come la [[backpropagation through time]].<ref>Jaeger, H. (2002). ''[http://www.pdx.edu/sites/www.pdx.edu.sysc/files/Jaeger_TrainingRNNsTutorial.2005.pdf Tutorial on training recurrent neural networks, covering BPPT, RTRL, EKF and the" echo state network" approach]''[http://www.pdx.edu/sites/www.pdx.edu.sysc/files/Jaeger_TrainingRNNsTutorial.2005.pdf .] GMD-Forschungszentrum Informationstechnik.</ref>
 
== Tipologie di Reservoir Computing ==
=== Echo State Networks ===
 
La Echo State Network (ESN) è stata introdotta da Herbert Jaeger nel 2001, in un report del German National Research Center for Information Technology.<ref name=jaeger/> L'obiettivo era sviluppare un [[algoritmo]] di apprendimento efficiente per [[Rete neurale ricorrente|reti neurali ricorrenti]], per applicazioni di [[apprendimento automatico]] ed [[Elaborazione numerica dei segnali|elaborazione del segnale]]. In questa formulazione, gli stati del reservoir vengono visti come ''feature'' (anche dette ''echi'' dell'input originario), usate come input dal successivo readout non-ricorrente. Da questo punto di vista, affinché la ESN risultante abbia buone proprietà di [[generalizzazione]], le connessioni interne del reservoir possono anche essere generate in maniera casuale, purché siano mantenute tre proprietà principali:<ref name=jaeger/>
 
* Il reservoir deve essere sufficientemente grande.
* Il reservoir deve essere [[stabilitàStabilità strutturale|stabile]], ovvero l'effetto di un input sulla dinamica interna deve svanire dopo un certo lasso temporale. Nel contesto delle ESN, questa proprietà viene chiamata ''echo state property''.
* Le connessioni interne al reservoir devono essere ''[[Matrice sparsa|sparse]]'', in modo da generare un insieme eterogeneo di feature.
 
Nel suo lavoro originale del 2001, Jaeger stesso introdusse alcuni [[criteri]] per cercare di soddisfare la echo state property, in termini del [[raggio spettrale]] della [[matrice]] dei pesi interni del reservoir. Tali condizioni sono poi state migliorate nel 2007<ref>Buehner, M., & Young, P. (2006). [http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1629106&tag=1 A tighter bound for the echo state property.] IEEE Transactions on Neural Networks, 17(3), 820-824.</ref>, e nuovamente nel 2012<ref>Yildiz,{{Cita I.pubblicazione|nome1=Izzet B., |cognome1=Yildiz|nome2=Herbert|cognome2=Jaeger,|nome3=Stefan HJ., & |cognome3=Kiebel, S. J. (2012). [http://www.sciencedirect.com/science/article/pii/S0893608012001852 |titolo=Re-visiting the echo state property.] |rivista=Neural Networks,|data=1º 35,novembre 2012|issn=0893-6080|pp=1-9|volume=35|doi=10.1016/j.neunet.2012.07.005}}</ref>. Un approccio alternativo, basato sulla [[teoria dell'informazione]], è stato invece proposto nel 2007 da Mustafa Ozturk, Dongming Xu e José Príncipe.<ref>Ozturk, M. C., Xu, D., & Príncipe, J. C. (2007). [http://www.mitpressjournals.org/doi/abs/10.1162/neco.2007.19.1.111 Analysis and design of echo state networks.] Neural Computation, 19(1), 111-138.</ref>
Ad oggi, il Fraunhofer Institute for Intelligent Analysis and Information Systems detiene un brevetto per lo sfruttamentesfruttamento commerciale delle Echo State Networks.<ref>[http://patentscope.wipo.int/search/en/WO2002031764 EP2001011490 A METHOD FOR SUPERVISED TEACHING OF A RECURRENT ARTIFICIAL NEURAL NETWORK<!-- Titolo generato automaticamente -->]</ref>
 
=== Liquid State Machines ===
 
La Liquid State Machine (LSM) è stata introdotta nel 2002, in maniera indipendente dalla Echo State Network, da Wolfgang Maass, Thomas Natschläger ed Henry Markram.<ref name=Maass /> Seppur condividendo molto idee di base della Echo State Network, la LSM è stata introdotta come un [[modello computazionale]] per studiare determinati tipi di [[Rete neurale artificiale|circuiti neurali]]. A causa di ciò, le LSM utilizzano in genere modelli di [[neuroni]] con maggiore plasubilità biologica, il più semplice dei quali è noto come ''integrate-and-fire spiking neuron''. Inoltre, la connettività all'interno di una LSM tende a ricalcare modelli plausibili di connessioni [[sinapsi|sinaptiche]]. Poiché questo richiede operazioni più complesse di [[codifica]]/[[decodifica]] dell'informazione, le LSM sono state applicate in maniera minore a problemi di [[apprendimento automatico]], ma ne sono state studiate a fondo le proprietà computazionali esibite.<ref name=Maass /><ref>Maass, Wolfgang, Prashant Joshi, and Eduardo D. Sontag. [http://papers.nips.cc/paper/2864-principles-of-real-time-computing-with-feedback-applied-to-cortical-microcircuit-models Principles of real-time computing with feedback applied to cortical microcircuit models.] Advances in Neural Information Processing Systems. 2006.</ref><ref>Bertschinger, N., & Natschläger, T. (2004). [http://www.mitpressjournals.org/doi/abs/10.1162/089976604323057443#.U9k2Xvl_s5A Real-time computation at the edge of chaos in recurrent neural networks.] Neural computation, 16(7), 1413-1436.</ref>
 
=== Backpropagation-Decorrelation ===
Line 23 ⟶ 22:
 
== Aspetti teorici del reservoir ==
La distinzione netta tra reservoir e readout ha permesso di separare l'analisi dinamica del primo dalle capacità meglio note di [[generalizzazione]] del secondo. Un elemento essenziale dell'analisi del reservoir, oltre a quanto già menzionato prima, si è rivelata esserne la cosiddetta [[memoria]] a breve termine, di cui Jaeger diede una prima definizione in un lavoro del 2002.<ref>Jaeger, H. (2001). [http://minds.jacobs-university.de/sites/default/files/uploads/papers/STMEchoStatesTechRep.pdf Short term memory in echo state networks.] {{Webarchive|url=https://web.archive.org/web/20140104155906/http://minds.jacobs-university.de/sites/default/files/uploads/papers/STMEchoStatesTechRep.pdf |data=4 gennaio 2014 }} GMD Technical Report 152.</ref> In linea generale, la memoria a breve termine in una Echo State Network con neuroni digitali è massima quando la funzione di attivazione dei suoi neuroni costituenti è lineare, e si contrappone alla sua capacità di processareelaborare relazioni altamente non-lineari.<ref>Verstraeten, D., Dambre, J., Dutoit, X., & Schrauwen, B. (2010, July). [http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=5596492 Memory versus non-linearity in reservoirs.] In Proceedings of the 2010 IEEE International Joint Conference on Neural Networks (IJCNN)(pp. 1-8).</ref> Essa spiega alcune differenze di comportamento osservate fra reservoir con neuroni digitali ed analogici,<ref>Büsing, L., Schrauwen, B., & Legenstein, R. (2010). [http://www.mitpressjournals.org/doi/abs/10.1162/neco.2009.01-09-947#.U9kxOvl_s5A Connectivity, dynamics, and memory in reservoir computing with binary and analog neurons.] Neural computation, 22(5), 1272-1311.</ref>, ed è essenziale anche nell'analisi di reti ricorrenti a tempo continuo.<ref>{{Cita pubblicazione|nome1=Michiel|cognome1=Hermans, M., & |nome2=Benjamin|cognome2=Schrauwen, B. (2010). [http://www.sciencedirect.com/science/article/pii/S0893608009002305 |titolo=Memory in linear recurrent neural networks in continuous time.] |rivista=Neural Networks,|data=1º 23(3),aprile 2010|issn=0893-6080|pp=341-355|volume=23|numero=3|doi=10.1016/j.neunet.2009.08.008}}</ref>
 
Un altro aspetto della ricerca teorica sul reservoir si concentra sulla possibilità di eliminare il processo di generazione casuale delle sue connessioni, o quantomeno di ridurne l'effetto. Esempi di ciò sono lo studio sui reservoir ''a complessità minima''<ref>Rodan, A., & Tino, P. (2011). [http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=5629375 Minimum complexity echo state network.] IEEE Transactions on Neural Networks, 22(1), 131-144.</ref>, e sul meccanismo della ''plasticità intrinseca''.<ref>Schrauwen, B.,{{Cita pubblicazione|nome1=Benjamin|cognome1=Schrauwen|nome2=Marion|cognome2=Wardermann, M., |nome3=David|cognome3=Verstraeten,|nome4=Jochen DJ., |cognome4=Steil,|titolo=Improving J.reservoirs J.,using &intrinsic Stroobandt,plasticity|rivista=Neurocomputing|data=1º D.marzo (2008).|issn=0925-2312|pp=1159-1171|volume=71|serie=Progress [http://www.sciencedirect.com/science/article/pii/S0925231208000519in ImprovingModeling, reservoirsTheory, usingand intrinsicApplication plasticity.]of Neurocomputing,Computational 71(Intelligenc|numero=7), 1159-1171|doi=10.1016/j.neucom.2007.12.020|nome5=Dirk|cognome5=Stroobandt}}</ref> Altra possibilità è quella invece di combinare diversi reservoir per aumentarne le capacità di [[Elaborazione dati|elaborazione]], come avviene nei reservoir ''disaccoppiati''<ref>{{Cita pubblicazione|nome1=Yanbo|cognome1=Xue, Y., |nome2=Le|cognome2=Yang, L., & |nome3=Simon|cognome3=Haykin, S. (2007). [http://www.sciencedirect.com/science/article/pii/S0893608007000378 |titolo=Decoupled echo state networks with lateral inhibition.] |rivista=Neural Networks,|data=1º 20(3),aprile 2007|issn=0893-6080|pp=365-376|volume=20|serie=Echo State Networks and Liquid State Machines|numero=3|doi=10.1016/j.neunet.2007.04.014}}</ref> o la possibilità di costruire reservoir ''gerarchici''.<ref name=":0">Triefenbach, F., Jalalvand, A., Demuynck, K., & Martens, J. (2013). [http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6587732 Acoustic modeling with hierarchical reservoirs.] In IEEE Transactions on Audio, Speech, and Language Processing, 21(11-12), 2439-2450</ref> L'approccio del Reservoir Computing è stato esteso nella direzione del [[Deep learning|Deep Learning]] con l'introduzione del Deep Reservoir Computing e del modello Deep Echo State Network (DeepESN)<ref>{{Cita pubblicazione |nome=Luca |cognome=Pedrelli |data=2019 |titolo=Deep Reservoir Computing: A Novel Class of Deep Recurrent Neural Networks |editore=Università di Pisa |url=https://etd.adm.unipi.it/t/etd-02282019-191815/}}</ref><ref>{{Cita pubblicazione|nome=Claudio|cognome=Gallicchio|data=2017-12|titolo=Deep reservoir computing: A critical experimental analysis|rivista=Neurocomputing|volume=268|pp=87-99|lingua=en|accesso=28 aprile 2019|doi=10.1016/j.neucom.2016.12.089|url= |nome2=Alessio|cognome2=Micheli|nome3=Luca|cognome3=Pedrelli}}</ref><ref>{{Cita pubblicazione|nome=Claudio|cognome=Gallicchio|data=2018-12|titolo=Design of deep echo state networks|rivista=Neural Networks|volume=108|pp=33-47|lingua=en|accesso=28 aprile 2019|doi=10.1016/j.neunet.2018.08.002|url= |nome2=Alessio|cognome2=Micheli|nome3=Luca|cognome3=Pedrelli}}</ref>.
 
Infine, alcuni ricercatori hanno investigato la possibilità di generare reservoir in maniera non convenzionale, tra cui si possono ricordare i lavori sui reservoir di tipo opto-elettronici<ref>Paquot, Y., Duport, F., Smerieri, A., Dambre, J., Schrauwen, B., Haelterman, M., & Massar, S. (2012). [httphttps://www.nature.com/srep/2012/120227/srep00287/full/srep00287.html Optoelectronic reservoir computing.] ''Scientific reports'',''2''.</ref>, reservoir costruiti a partire da circuiti analogici,<ref>{{Cita pubblicazione|nome1=Benjamin|cognome1=Schrauwen, B., |nome2=Michiel|cognome2=D’Haene, M., |nome3=David|cognome3=Verstraeten, D., &|nome4=Jan Van|cognome4=Campenhout, J. V. (2008). [http://www.sciencedirect.com/science/article/pii/S0893608007002353 |titolo=Compact hardware liquid state machines on FPGA for real-time speech recognition.] ''|rivista=Neural Networks'',|data=1º ''21''(2),marzo 2008|issn=0893-6080|pp=511-523|volume=21|serie=Advances in Neural Networks Research: IJCNN ’07|numero=2|doi=10.1016/j.neunet.2007.12.009}}</ref> ed altri.<ref>Lukoševičius, M., Jaeger, H., & Schrauwen, B. (2012). [http://minds.jacobs-university.de/sites/default/files/uploads/papers/2508_Lukoseviciusetal12.pdf Reservoir computing trends.] {{Webarchive|url=https://web.archive.org/web/20140211092930/http://minds.jacobs-university.de/sites/default/files/uploads/papers/2508_Lukoseviciusetal12.pdf |data=11 febbraio 2014 }} ''KI-Künstliche Intelligenz'', ''26''(4), 365-371.</ref>
 
== Applicazioni del reservoir computing ==
Le tecniche di reservoir computing sono state applicate a numerose classi di problemi, tra cui:
* [[Predizione delle diramazioni|predizione]] di [[Serie temporale|serie temporali caotiche]]<ref>Jaeger, H., & Haas, H. (2004). [httphttps://www.sciencemag.org/content/304/5667/78.short Harnessing nonlinearity: Predicting chaotic systems and saving energy in wireless communication.] ''Science'', ''304''(5667), 78-80.</ref> e finanziarie;<ref>Ilies, Iulian, et al. "Stepping forward through echoes of the past: forecasting with echo state networks." ''Short report on the winning entry to the NN3 financial forecasting competition, [http://www.&#x20;neural-forecasting-competition.&#x20;com/downloads/NN3/methods/27-NN3&#x20;Herbert&#x20;Jaeger&#x20;report.pdf available online] {{webarchive|url=https://web.archive.org/web/20151126023026/http://www.&/ |data=26 novembre 2015 }} ''(2007).</ref>
* [[Controllo automatico|controllo]] motorio di [[Robotica|piattaforme robotiche]];<ref>Plöger, P. G., Arghir, A., Günther, T., & Hosseiny, R. (2004). [httphttps://link.springer.com/chapter/10.1007/978-3-540-25940-4_14#page-1 Echo state networks for mobile robot modeling and control.] In ''RoboCup 2003: Robot Soccer World Cup VII'' (pp. 157-168). Springer Berlin Heidelberg.</ref>
* [[Acustica|modellamento acustico]] nel riconoscimento del parlato;<ref name=":0" />
* rilevamento in tempo reale di [[Epilessia|crisi epilettiche]].<ref>Buteneers, P., Schrauwen, B., Verstraeten, D., & Stroobandt, D. (2009). [httphttps://link.springer.com/chapter/10.1007/978-3-642-02490-0_7#page-1 Real-time epileptic seizure detection on intra-cranial rat data using reservoir computing.] In ''Advances in neuro-information processing'' (pp. 56-63). Springer Berlin Heidelberg.</ref>
 
==Note==
{{<references}}/>
 
==Bibliografia==
* {{cita pubblicazione | nome=Herbert |cognome=Jaeger|titolo=The “echo state” approach to analysing and training recurrent neural networks-with an erratum note.|rivista=GMD Technical Report 148|anno=2001 | paginepp=127-149|7=|url=http://minds.jacobs-university.de/sites/default/files/uploads/papers/EchoStatesTechRep.pdf|accesso=31 luglio 2014|urlarchivio=https://web.archive.org/web/20140104151256/http://minds.jacobs-university.de/sites/default/files/uploads/papers/EchoStatesTechRep.pdf|dataarchivio=4 gennaio 2014|urlmorto=sì}}
* {{cita pubblicazione | nome=Mantas |cognome=Lukoševičius|nome2=Herbert|cognome2=Jaeger |titolo=Reservoir computing approaches to recurrent neural network training. |rivista=Computer Science Review|volume=3 |numero=3 |anno=2009 | paginepp=127-149 ||urldoi=http:10.1016//wwwj.sciencedirectcosrev.com/science/article/pii/S15740137090001732009.03.005}}
* {{cita pubblicazione | nome=Wolfgang |cognome=Mass|nome2=Thomas|cognome2=Natschläger|nome3=Henry|cognome3= Markram|titolo=Real-time computing without stable states: A new framework for neural computation based on perturbations. |rivista=Neural computation|volume=14 |numero=11 |anno=2002| paginepp=2531-2560|url=http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6789852}}
* {{cita pubblicazione | nome=Jochen J. |cognome=Steil|titolo=Online stability of backpropagation–decorrelation recurrent learning.|rivista=Neurocomputing|volume=69|numero=7|anno=2006 | paginepp=642-650|urldoi=http:10.1016//wwwj.sciencedirectneucom.com/science/article/pii/S09252312050030732005.12.012}}
* {{cita pubblicazione | nome=David |cognome=Verstraeten|nome2=et al.|titolo=An experimental unification of reservoir computing methods.|rivista=Neural Networks|volume=20 |numero=3 |anno=2007 | paginepp=391-403||http:|doi=10.1016//wwwj.sciencedirectneunet.com/science/article/pii/S089360800700038X2007.04.003}}
 
==Collegamenti esterni==
* {{cita web | 1 = http://reservoir-computing.org/software | 2 = Elenco di software disponibili per il Reservoir Computing | accesso = 31 luglio 2014 | urlarchivio = https://web.archive.org/web/20140809215119/http://reservoir-computing.org/software | dataarchivio = 9 agosto 2014 | urlmorto = sì }}
 
==Note==
{{references}}
 
[[Categoria:Reti neurali artificiali]]