Sunteți pe pagina 1din 9

RESERVOIR COMPUTING

Reservoir Computing


1. Introducere
Studiul retelelor neuronale a cunoscut atat perioade in care activitatea de cercerare a
fost extrem de intensa cat si perioade in care acest domeniu de cercetare nu a prezentat niciun
fel de interes pentru mediul informatic. Multitudinea de aplicatii practice dezvoltate in acest
domeniu, au produs revenirea in forta a retelelor neuronale, prezentand interes atat in mediul
de cercetare cat si pentru publicul larg.
Retelele neurale artificiale (RNA) sunt o ramura din stiinta inteligentei artificiale si
caracterizeaza ansambluri de elemente de procesare simple, puternic interconectate si
operand in paralel, care urmaresc sa interactioneze cu mediul inconjurator intr-un mod
asemanator creierelor biologice si care prezinta capacitatea de a invata. La fel ca in natura,
functia retelei e determinata de legaturile dintre elemente, asa ca reteaua se instruieste prin
ajustarea ponderilor legaturilor dintre unitati, ponderi ce au rolul de a memora informatia
invatata de retea. Reteaua neuronala reprezinta modelarea matematica a procesului de
invatare sau memorare al unei fiinte care dispune de un minim de neuroni, organizati intr-un
singur organ, si care ii permit coordonarea functiilor vitale.
Numeroasele modalitati de interconectare a neuronilor elementari, care conduc la o
evolutie specifica a retelei, se utilizeaza in aplicatii dintre cele mai diverse. Putem distinge
doua arhitecturi de retele neuronale artificiale:
- Retele de tip feedforward cu propagare a informatiei numai dinspre intrare spre
iesire.
- Retele recurente (cu reactie) cu propagare inapoi
Retelele neurale artificiale recurente se individualizeaza prin existenta unui semnal de
reactie, din partea neuronilor de ordin superior, pentru cei de ordin inferior sau chiar pentru
propriile lor intrari. Cu alte cuvinte, retelele neurale recurente se caracterizeaza prin prezenta
conexiunilor inverse si au un rol important in rezolvarea optima a problemelor complexe.
.
2. Reservoir computing
Reservoir computing este o paradigma noua de retea neuronala artificiala introdusa la
inceputul secolului 21 care utilizeaza un sistem dinamic neliniar si recurent cu scopul de a
efectua prelucrarea informatiilor. Este potrivita pentru procesarea intrarilor dependente de
timp si ofera performante de ultima generatie pentru diferite probleme printre care se numara
recunoasterea vorbirii, recunoasterea scrisului de mana, controlul motoarelor robotilor,
pronosticuri financiare, medicina etc.
Reservoir computing (RC) reprezinta o incercare de proiectare, invatare si analiza a
retelelor neuronale recurente care ofera metode de proiectare si invatare a retelelor neuronale
artificiale si produce modele computationale si analitice ale retelelor neuronale biologice.
Reservoir computing este o noua metoda de calcul inspirata din natura, capabila de a rezolva
probleme complexe intr-un mod eficient.
Principiile fundamentale ale familiei de retele neuronale Reservoir computing,
diferentiaza RC de alte tipuri de retele neuronale recurente:
- Utilizeaza o retea neuronala recurenta aleatoare de mari dimensiuni ca rezervor -
reteaua neuronala recurenta e creata aleator dar ramane neschimbata pe parcursul
procesului de invatare. Procesul de formare al retelei este urmatorul: determinate de
semnalele de intrare, fiecare unitate din reteaua recurenta isi creaza propria
transformare liniara a datelor de intrare. Rezervorul este o retea neurala recurenta
omogena.
- Semnalele de iesire sunt citite din rezervor de un mecanism de citire specific ce poate
fi definit ca o imbinarea liniara a semnalelor rezervorului.
- Procesul de invatare poate fi unul supravegheat obtinut prin regresie liniara,
folosind semnale de ghidare.
Cu alte cuvinte, un semnal de intrare este introdus intr-un sistem aleator, dinamic numit
rezervor, iar dinamicile rezervorului expandeaza intrarile formand conexiuni aleatoare. Apoi,
este utilizat un mecanism simplu pentru citirea ponderilor conexiunilor de la unitatile de
iesire ale rezervorului si maparea in rezultatul asteptat.
In acest fel, reteaua neuronala mapeaza semnalul de intrare intr-un spatiu multi-
dimensional, facandu-l mai accesibil unei clasificari. Proiectarea semnalului de intrare intr-un
spatiu multi-dimensional faciliteaza clasificarea in diverse categorii, intr-un mod
incomparabil mai eficient decat clasificarea semnalului initial, original. In timp ce in retelele
neuronale traditionale, reteaua care realizeaza proiectia in spatiul multi-dimensional este
adaptata pentru a efectua clasificarea, in reservoir computing, reteaua care realizeaza
proiectia nu este afectata (ramane neschimbata), doar ponderile unitatilor de la unitatile de
iesire sunt modificate pentru clasificare. Asadar, reteaua neuronala artificiala e impartita in 3
straturi distincte: input layer, rezervor si output layer.

Schimbul de informatii intre, si in cadrul acestor 3 straturi se realizeaza sub forma de
conexiuni ponderate, rezultand intr-o arhitectura de retea globala. Fiecare strat se ocupa de
sarcinile sale specifice din retea. Stratul de intrare ofera interfata dintre semnalul de intrare si
retea, rezervorul proiecteaza semnalul pe o retea mai potrivita pentru clasificare.
Rationamentul din spatele stratului rezervor este ca, intr-un spatiu multi-dimensional,
clasificarea in variabile cu caracteristici asemanatoarea si separarea in hiperplanuri este
exponential mai probabila. Interpretarea maparii din spatiul multidimensional si clasificarea
se realizeaza in cel de-al treilea strat, stratul de iesire. Aici se genereaza setul de iesire, dupa o
procedura numita invatare. In urma procesului de invatare se determina ponderile
conexiunilor pentru stratul de iesire prin utilizarea de exemple de probleme ce pot fi rezolvate
cu ajutorul retelei.
Principalul avantaj oferit de utilizarea metodei Reservoir computing il reprezinta
faptul ca procesul de invatare se desfasoara doar la pasul de citire a rezultatului iar rezervorul
e deja fixat. Acesta nu este insa singurul avantaj.
Din perspectiva biologica, reservoir computing ofera o interpretare simpla, dar in
acelasi timp puternica, a modului in care circuite corticale generice, cu nocio adaptare
supravegheata, pot fi folosite pentru rezolvarea de probleme complexe. Totodata,
rezervoarele corespund cu modul in care informatiile temporale sunt interpretate spatial in
creier
Un alt avantaj al RC este ca acelasi rezervor poate fi folosit ca si substrat
computational generic pentru multiple probleme ce folosesc acelasi tip de semnale de intrare.
Pentru fiecare problema, un nou rezultat poate fi invatat fara sa interfereze cu rezultatele
anterioare, independent.
Datorita faptului ca procesul de invatare desfasurat la citirea ponderilor conexiunilor
este foarte eficient, calitatea rezervorului pentru sarcini particulare poate fi testata rapid prin
verificarea erorii date de mecanismul de citire. Acest avantaj face ca modelul Reservoir
computing sa fie folosit foarte des pentru testarea multor tipuri de modele de retele neuronale
artificiale, topologii, algoritmi de adaptare inspiratie biologic etc.
Aproximativ acum 12 ani, un nou trend in ceea ce priveste intelegerea, invatarea si
utilizarea retelelor neuronale recurente a aparut odata cu variantele modelului Reservoir
computing: Echo State Network (ESN) si Liquid State Machines (LSM). Liquid State
Machines and Echo State Networks sunt doua tipuri majore de calcul cu rezervoare.
Alte variante ale modelului Reservoir computing:
- Backpropagation-decorrelation (BPDC);
- Temporal Recurrent Neural Network;
- Evolino;
- Etc;

3. Echo State Network
Echo State Network este una din variantele cheie ale modelului Reservoir computing.
Fiind in acelasi timp practica, simpla din punct de vedere conceptual si usor de implementat,
ESN necesita o anumita experienta si intelegere pentru a atinge performanta in rezolvarea
problemelor. Inca de la inceput, modelul ESN s-a dovedit a fi o abordare foarte practica
pentru invatarea retelelor neuronala artificiale deoarece este simplu din punct de vedere
conceptual si necostisitor din punct de vedere al calculului. Echo State Network a revigorat
interesul pentru retelele neuronale artificiale, facandu-le accesibile unui public mai larg.
ESN este o metoda de invatarea a sistemelor neliniare care foloseste retelele neuronale
artificiale recurente si care a fost recent propusa ca mecanism independent de invatare a
creierelor biologice. ESN este o metoda superioara tuturor modelelor anterioare. Exemplu:
Pentru o sarcina referinta de predictie a unor serii temporale haotice, precizia a fost
imbunatatita cu un factor de 2400 fata de tehnicile anterioare.
Aplicarea cu succes a modelului ESN poate ridica insa unele probleme deoarece necesita
experienta. Una dintre cele mai intalnite probleme o constituie faptul ca generatia initiala a
rezervorului e influentata de un ansamblu de parametri globali ce trebuie alesi cu grija.
Conceptul care sta la baza modelului ESN este de a conduce semnalul de intrare printr-o
retea neurala aleatoare, de mari dimensiuni dar fixa, inducand astfel in fiecare neuron
(unitate) din rezervorul retelei un semnal raspuns neliniar si de a forma un semnal raspuns
final prin combinarea liniara a tuturor semnalelor raspuns primite de la rezervor. Deoarece nu
exista dependisme ciclice intre conexiunile invatate la citire, invatarea unui model ESN
devine o regresie simpla liniara. Conceptul de la baza modelului ESN este intalnit si in
modelul Liquid State Machines (LSN).
In figura de mai jos este prezentata schema unei abordari ESN. Sagetile nepunctate
reprezinta conexiunile sinaptice fixe, sagetile punctate reprezinta conexiunile ajustabile.


Numeroase sisteme dinamice care erau greu de invatat folosind metodele anterioare,
au fost invatate rapid si usor utilizand modelul ESN. Printre aceste metode se numara:
generarea de secvente periodice lungi, generatoare de frecventa reglabila, aparate de masurat
frecventa, memorie de scurta/lunga durata, recunoasterea dinamica a sabloanelor si, in
special, preziceri pe termen lung a fenomenelor haotice. In zilele noastre modelele ESN sunt
utilizate pe scara larga in aplicatii dinamice de recunoastere a sabloanelor si aplicatii de
prezicere.
In imaginea de mai jos sunt prezentate in paralel preziceri efectuate de ESN (cu
albastru) si de diverse solutii analitice (cu verde) pentru: a) Mackey-Glass attractor, b) setul
de date Laser, c) Lorenz attractor.


Abordarea ESN se bazeaza pe observatia ca, daca o retea neurala artificiala aleatoare
are anumite proprietati algebrice, invatarea liniara a semnalelor care ies din rezervor este
suficienta pentru a atinge performante excelente in aplicatiile practice. Partile din neinvatate
din reteau ESN poarta numele de rezervor dinamic, iar starile rezultate x(n) sunt numite
ecouri de intrare.
Faptul ca neuronii interni afisaza variante sistematice ale semnalului extern excitant
este definitoriu pentru ESN. Neuronii interni (unitatile interne) trebuie sa functioneze ca niste
functii echou pentru semnalul excitant. Totusi, aceasta proprietate nu o au toate retelele
neuronale generate aleator, dar poate fi construita in rezervor.Este important ca semnalele
ecou sa fie foarte variate.
Reteaua neurala Echo state este o retea neuronala recurenta in timp discret cu K
unitati de intrare, N unitati interne (rezervorul) si L unitati de iesire. Activarea unitatilor de
intrare, interne si de iesire la un anumit moment t este data de urmatoarele formule:
s(t)=(s
1
(t), ... , s
k
(t))
T

x(t)=(x
1
(t), ... , x
N
(t) )
T

y(t)=(y
1
(t), ... , y
L
(t))
T

Conexiunile dintre unitatile de intrare si unitatile interne (rezervor) sunt date de o
matrice V a ponderilor de dimensiune N x K, conexiunile dintre unitatile interne sunt retinute
intr-o matrice W a ponderilor conexiunilor de dimensiune N x N iar conexiunile dintre
unitatile interne si unitatile de iesire sunt date de o matrice U a ponderilor de dimensiune L x
N.

Nu exista conexiuni inverse de la unitatile de iesire spre rezervor si nici legaturi
directe intre unitatile de intrare si cele de iesire.
Unitatile interne sunt sctualizate dupa urmatoarea formula:
x(t+1)=f (V
S
(t+1)+Wx(t)), unde f este functia de activare a rezervorului.
Mecanismul de citire liniar se calculeaza astfel:
y(t+1)=Ux(t+1).
Elementele matricilor W si V sunt fixate inaintea invatarii cu valori aleatoare, preluate
dintr-o distributie uniforma asupra unui intervat simetric. In general, matricea ponderilor
conexiunilor din rezervor, W, este scalata dupa formula WW / |
max
|, unde |
max
|
reprezinta raza spectrala ( cea mai mare valoare absoluta dintre valorile matricii W) si 0<<1
este parametrul de scalare.
Datorita naturii retelelor neuronale recurente de a avea auto-feedback, starile
rezervorului x(n) reflecta urme ale semnalor intrate ulterior. Acest fenomen poate fi
considerat ca o memorie dinamica pe termen scurt.
Pentru invatarea si evaluarea modelelor folosim formula Normalized Mean Square
Error (NMSE):

Unde este rezultatul final si y este rezultatul dorit.
4. Concluzie
ESN a fost dezvoltat dintr-o perspectiva matematica si tehnica, dar prezinta
caracteristici tipice ale unei retele neuronale biologice: un numar mare de neuroni, conexiuni
recurente, conectivitatea aleatoare si modificarea locala a ponderilor sinapselor. Ideea de a
folosi retele neurale conectate aleator pentru a reprezenta si memora intrari dinamice in
straturile retelei a fost explorata frecvent in contexte specifice precum modelele de memorare
asociativa din inteligenta artificiala, modele care studiaza functia cortexului prefrontal in
sarcini senzorial-motorii, modele care urmaresc ciripitul pasarilor, modele ale cerebelului sau
modele generale de calcul ale oscilatoarelor neuronale.
Contributia modelului este este aceea de a elucida proprietatile matematice ale
retelelor neuronale de mari dimensiuni astfel incat sa poata fi utilizate cu un mecanism liniar
de citire si usor de invatat pentru modele Blackbox generale.
O abordare asemanatoare cu ESN o prezinta modelul Liquid State Machines.
Descoperirile din neurofiziologie sugereaza ca principiul care sta la baza celor doua modele
ESN si LSM, nu este neintalnit in retelele neuronale biologice si ar putea fi folosite pentru
dezvoltarea de proteze ce pot fi cotrolate de semnalele primite de la un set de neuroni.

Bibliografie

1. Wikipedia, Retea neuronica artificiala:
http://ro.wikipedia.org/wiki/Re%C8%9Bea_neuronic%C4%83_artificial%C4%83
2. Wikipedia, Introducere in retelele neuronale (neurale):
http://ro.wikipedia.org/wiki/Introducere_%C3%AEn_re%C8%9Bele_neuronale_(neur
ale)
3. Wikipedia, Reservoir computing: http://en.wikipedia.org/wiki/Reservoir_computing
4. Referatul stiintific: Retele neuronale Arhitecturi si algoritmi, Prof. Dr. Ing. Virgil
Tiponut, Sef lucr. Dr. Ing. Catalin-Daniel Caleanu, ed. Politehnica Timisoara, 2002
5. Cursul Digital Signal Processing, Iulian B. Ciocoiu, Universitatea tehnica din Iasi,
Facultatea de Electronica, Telecomunicatii si Tehnologia Informatiei
6. Inteligenta computationala in data mining si calcul cuantic, precum si consideratii
privind viitorul inteligentei artificiale, Dipl. Ing. Florian Neukart, Centrul de
cercetare Sisteme pentru controlul proceselor, Universitatea Transilvania din Brasov
7. Site-ul oficial Reservoir computing: http://reservoir-computing.org/
8. Reservoir Computing Approaches to Recurrent Neural Network Training, Mantas
Lukosevicius, Herbert Jaeger, School of Engineering and Science, Jacobs University
Bremen gGmbH, P.O. Box 750 561, 28725 Bremen, Germany
9. Constructing optimized binary masks for reservoir computing with delay systems,
Lennert Appeltant, Guy Van der Sande, Jan Danckaert, Ingo Fischer:
http://www.nature.com/srep/2014/140110/srep03629/full/srep03629.html
10. Computational capabilities of random automata networks for reservoir computing,
David Snyder, Alireza Goudarzi, Christof Teuscher:
http://pre.aps.org/abstract/PRE/v87/i4/e042808
11. Reservoir Computing Trends, Mantas Lukosevicius, Herbert Jaeger, Benjamin
Schrauwen - http://www.lsv.ens-
cachan.fr/~monmege/teach/learning/KI_reservoir_computing.pdf
12. All-optical reservoir computing, Francois Duport, Bendix Schneider, Anteo
Smerieri, Marc Haelterman, Serge Massar -
http://arxiv.org/ftp/arxiv/papers/1207/1207.1619.pdf
13. Minimum Complexity Echo State Network, Ali Rodan, Peter Tino -
http://www.cs.bham.ac.uk/~pxt/PAPERS/scr_tnn.pdf
14. Echo State Network, Herbert Jaeger, Scholarpedia -
http://www.scholarpedia.org/article/Echo_state_network
15. Wikipedia, Echo State Network - http://en.wikipedia.org/wiki/Echo_state_network
16. A practical Guide to Applying Echo State Networks, Mantas Lukosevicius -
http://organic.elis.ugent.be/sites/organic.elis.ugent.be/files/PracticalESN.pdf
17. Echo State Networks (ESNs), Jacobs University The home of minds site:
http://minds.jacobs-university.de/esn_research

S-ar putea să vă placă și