Concepte fundamentale
Atributele RN
Principiile fundamentale pe baza carora sunt descrise matematic RN provin din biologie. Matematica încearca sa descrie cât mai fidel comportamentul biologic al neuronilor si retelelor formate de acestia.
Atributele de baza ale RN se pot clasifica în arhitectura (structura) si neurodinamica (proprietati functionale). Astfel, arhitectura defineste structura retelei (numarul de neuroni din retea si modul în care acestia se interconecteaza). RN constau într-un numar de neuroni (sau elemente de procesare) cu anumite caracteristici: intrari, iesiri, legaturi sinaptice, functii de activare, bias etc. Neurodinamica RN defineste proprietatile lor: cum anume învata, asociaza, compara, clasifica reteaua neuronala.
RN proceseaza informatii în mod non-secvential, bazându-se pe descompunerea paralela a informatiilor complexe în elemente de baza, iar aceste elemente si relatiile dintre ele sunt stocate în memoria/banca de date a creierului.
Retelele neurale artificiale (RNA)
În ultimii ani s-au realizat numeroase încercari de a proiecta circuite electronice care sa copieze cât mai fidel RN biologice si atributele lor. Astfel s-au dezvoltat modelele de retele neuronale numite si paradigme, mai mult sau mai putin asemanatoare cu retelele neuronale biologice.
Toate RNA sunt descrise prin intermediul ecuatiilor diferentiale sau cu diferente (în forma discreta). Pâna si cele mai sofisticate RNA (de departe inferioare celor mai primitive forme de viata), create pentru a demonstra anumite principii sau pentru aplicatii, sunt limitate si specializate. Specialistii însa considera acest fapt o provocare, continuând sa descopere noi paradigme si aplicatii ale acestora.
Exemplu: Împartirea
numarului 100 la 3. Calculatorul obtine 33,333.+ε, unde
ε→0. Daca se doreste reconstructia numarului 100 se obtine:
33,33.+33,33.+33,33.+3ε100, deoarece nu se stie valoarea exacta a lui
ε. Omul însa poate împarti o nuia de 100 de cm lungime în 3
parti egale.
Modelarea RNA
Pentru a crea un model al unui sistem care sa descrie sistemul cât mai exact, este necesar sa cunoastem foarte bine acel sistem. Matematica a fost inventata pentru a descrie fenomenele din natura, iar modelarea este modalitatea noastra de a aproxima creatiile naturii. Deci, daca modelul nostru da gres, greselile trebuie cautate în model, nu în natura. În continuare se vor utiliza notiunile de model si paradigma ca fiind echivalente.
Modelul fundamental al unui neuron
Neuronul (elementul de procesare) artificial este unitatea fundamentala a RNA. În general neuronul prezinta
un set de n intrari xj
(). Fiecare intrare este ponderata înainte de a ajunge în
corpul principal al neuronului prin intermediul factorului de ponderare (puterea sau intensitatea legaturii) wj. În plus, mai exista
si un termen numit bias w0, o valoare de prag Θ care trebuie atinsa sau
depasita pentru ca sistemul sa produca un semnal;
deasemenea mai exista o functie
neliniara F care actioneaza asupra semnalului produs R, rezultând iesirea O. O constituie intrare pentru alti
neuroni. Daca un neuron este o parte a unei retele cu mai multi
neuroni acesta se numeste nod.
Daca exista mai multe noduri (m)
într-o retea, se introduce înca un indice pentru a distinge fiecare
neuron. Modelul de baza al unui neuron este descris în figura 1:
![]() |
Functia de transfer a unui neuron este descrisa de relatia:
, (1)
iar conditia de activare a unui neuron este data de:
(2)
În figura 2 este exemplificat modul de functionare a unui neuron:
Functia neliniara are rolul de a asigura limitarea raspunsurilor neuronului (conditionarea, amortizarea), la stimuli de diferite amplitudini, pentru a-i asigura de fapt controlabilitatea. Câteva exemple de neliniaritati uzuale se regasesc în figura 3:
![]() | ![]() | ![]() |
|||
a)functii limitator b) functii rampa c) sigmoida
Învatarea în cadrul RNA
Procesul de învatare din cadrul RN este foarte important si suscita interesul în ambele tipuri de retele neuronale: biologice si artificiale. în retelele biologice învatarea nu este un proces unic, exista diferite tipuri de procese de învatare, proprii fiecarei specii si nu toate sunt eficiente în mod egal. Tot asa, pentru RNA s-au dezvoltat diferiti algoritmi de învatare, specifici diferitelor tipuri de RNA.
În general, învatarea este procesul prin care o RNA se adapteaza unui stimul 646f519g si eventual (dupa o ajustare a parametrilor proprii) produce un semnal de raspuns. Deasemenea, învatarea poate fi considerata o continua clasificare a stimulilor de intrare: daca apare un stimul la intrarea unei retele, aceasta îl va recunoaste sau va crea o noua categorie de stimuli. În timpul procesului de învatare reteaua îsi adapteaza parametrii (ponderile sinaptice) ca raspuns la un stimul de intrare, astfel încât raspunsul actual sa convearga catre raspunsul dorit. În momentul în care raspunsul actual este identic cu cel dorit, RNA si-a încheiat faza de învatare sau cu alte cuvinte, a "acumulat cunostinte".
Modelele de RNA constau din neuroni artificiali conectati în diverse moduri, iar procesul de învatare nu este acelasi pentru toate. Regulile de învatare sunt descrise prin expresii matematice numite ecuatii de învatare. Aceste ecuatii descriu de fapt procesul de autoajustare a ponderilor sinaptice. Algoritmii de învatare sunt specifici unor artitecturi de retele neuronale, nu orice retea poate învata cu unul sau altul dintre algoritmi, dupa cum nu orice algoritm se preteaza unei anumite retele.
În continuare se descriu câtiva dintre cei mai utilizati algoritmi de învatare pentru RNA.
1.3.1. Algoritmi de învatare
În timpul perioadei de antrenare utilizând algoritmul de cu învatare supervizata (Supervized Learning), la intrare se aplica un stimul (pattern), rezultând un raspuns al retelei, comparat cu un raspuns dorit, ideal. Daca raspunsul actual difera fata de cel ideal, reteaua genereaza un semnal de eroare, care este utilizat apoi pentru a calcula ajustarea ponderilor astfel încât iesirea actuala sa fie identica cu cea dorita. Cu alte cuvinte se realizeaza o minimizare a erorii, daca se poate pâna la zero. Procesul de minimizare a erorii necesita un circuit special, numit si supervizor. Spre deosebire de acest tip de algoritm, învatarea nesupervizata (Unsupervized Learning) nu are nevoie de circuitul de supraveghere si nu exista o iesire dorita impusa a retelei. În timpul antrenarii, reteaua primeste la intrare stimuli pe care îi clasifica în mod arbitrar. Daca dupa aceea apare la intrare un pattern, reteaua indica prin iesirea sa carei clase apartine stimulul de la intrare. Daca aceasta nu exista se creeaza o noua clasa. Desi nu este nevoie de circuit de supraveghere, pentru ca învatarea nesupravegheata sa dea rezultate satisfacatoare, sunt necesare unele indicatii în ceea ce priveste modul de grupare a pattern-urilor.
Învatarea "întarita" (Reinforced Learning) necesita cel putin un neuron la iesire si un circuit de supraveghere care indica daca iesirea actuala este sau nu identica cu iesirea dorita (raspuns binar). Circuitul de supraveghere nu prezinta retelei ietirea dorita ci ofera doar o indicatie de tipul "reusit/nereusit". Deci semnalul de eroare este un semnal binar. Daca indicatia supervizorului este "nereusit" reteaua îsi ajusteaza ponderile si încearca din nou, pâna când obtine raspunsul corect.
Învatarea competitiva (Competitive Learning) este o alta forma a învatarii supravegheate, totusi diferita datorita arhitecturii si modului de operare diferit. Acest tip de învatare necesita mai multi neuroni în stratul de iesire. Când se aplica la intrare un stimul, fiecare nod de iesire este în competitie cu ceilalti pentru a produce cel mai apropiat raspuns fata de raspunsul dorit. Neuronul care reuseste acest lucru este iesirea dominanta. Pentru un alt semnal de intrare, alt neuron de iesire va fi dominant s.a.m.d. Astfel, fiecare nod de iesire este antrenat sa raspunda la un pattern de intrare diferit. De aceea, învatarea competitiva poate fi privita ca un proces de specializare aleatoare.
Regula Delta (Delta Rule) se bazeaza pe ajustarea continua a ponderilor respectând regula de minimizare a erorii patratice, unde eroarea este diferenta între iesirea dorita si cea actuala a unui element de procesare. Acest tip de învatare mai este cunoscut si sub denumirea de algoritmul Widrow-Hoff sau regula celor mai mici patrate.
Regula gradientului (Gradient Descent Rule) ajusteaza ponderile cu o cantitate proportionala cu prima derivata (gradientul) a erorii unui element de procesare, tinând cont si de valoarea ponderii actuale. Scopul este descresterea functiei eroare, evitând minimele locale si atingând minimul actual sau pe cel global.
Donald Hebb a enuntat urmatorul principiu referitor la procesele care au loc în creierul uman: când un axon al celulei A este suficient de aproape pentru a excita celula B si în mod permanent si persistent ia parte la activarea ("aprinderea") acesteia, au loc anumite schimbari metabolice în ambele celule, astfel încât creste eficienta celulei A si gradul de activare a celulei B. Astfel, taria legaturii sinaptice (ponderile, în cazul retelelor neuronale artificiale) se modifica în functie de gradul de corelare a activitatii. Acest tip de învatare se numeste învatare hebbiana (Hebbian Learning). Învatarea anti-hebbiana (Anti-Hebbian Learning) se refera la retele neuronale unde legaturile sinaptice sunt numai de tip inhibitor.
Caracteristici ale RNA
În general, o RNA este o retea de comunicatie adaptiva care comunica o functie de cost pentru o iesire dorita. Din punct de vedere matematic, o RNA reprezinta un sistem dinamic care poate fi modelat ca un set de ecuatii diferentiale cuplate între ele. Un astfel de sistem depinde de valorile parametrilor ecuatiilor: mici modificari ale parametrilor pot determina schimbari majore în comportamentul retelei.
RNA pot fi caracterizate de urmatorii factori:
Calcul colectiv si sinergic
programul se executa colectiv si sinergic
operatiile sunt descentralizate
Robustete
operatiile sunt insensibile la întreruperi minore
operatiile sunt insensibile la intrari care nu sunt descrise cu acuratete foarte ridicata
Învatare
RNA realizeaza în mod automat asociatii între informatii
Programul este creat de retea pe parcursul procesului de învatare
RNA se adapteaza
Asincronism în operatii
RN biologice nu necesita un ceas explicit pentru a-si sincroniza operatiile
RNA necesita un tact de sincronizare.
Parametri ai RNA
În situatia unei abordari top-down a proiectarii unei RNA este necesara focalizarea asupra urmatorilor parametrii:
Topologia retelei
Numarul de nivele din retea
Numarul de neuroni/noduri de pe fiecare nivel
Algoritmul de învatare potrivit retlei
Numarul de iteratii/pattern efectuate pe parcursul învatarii
Numarul de calcule/iteratie
Viteza de recunoastere a unui pattern
Performanta retelei (este descrisa prin prisma numarului de pattern-uri de intrare recunoscute complet, incomplet sau prea putin)
Plasticitatea retelei
Capacitatea retelei (numarul maxim de pattern-uri recunoscute)
Gradul de adaptabilitate al retelei
Termenii bias
Valorile de prag
Limitari ale ponderilor sinaptice
Alegerea neliniaritatilor si domeniului de operare al neuronului
Imunitatea la zgomot a neuronului
Valorile finale (stationare) ale ponderilor sinaptice (programul retelei)
Topologii de RNA
RNA cuprind un numar de neuroni interconectati între ei. Modul de interconectare poarta numele de topologie. Se pot identifica numeroase topologii, dintre care cele mai utilizate sunt prezentate în figura 4:
![]() |
|||
![]() |
|||
Topologie directa multi-nivel Topologie competitiva multi-nivel
![]() |
|||
![]() |
|||
Topologie directa-inversa Topologie hetero, cu reactie
cu doua nivele pe un nivel
Capacitatea de discriminare a RNA
RNA sunt antrenate pentru a recunoaste semnale de intrare (pattern-uri). Astfel, RNA trebuie sa fie capabila sa faca discriminari între pattern-urile aplicate la intrarile sale si apoi sa produca raspunsul dorit. în unele aplicatii, RNA trebuie sa identifice semnalul de la intrare si grupul caruia acesta îi apartine.
Numarul de pattern-uri pe care RNA este capabila sa le clasifice se numeste capacitate de discriminare (numarul maxim de puncte pe care le poate separa sau identifica în mod clar si pentru care poate emite un raspuns unic). Capacitatea de discriminare poate caracteriza o RNA ca fiind liniara, multiliniara sau neliniara.
RNA liniar separabile
Pentru a descrie o RNA liniar separabila presupunem ca exista la intrarea unei retele cu doi neuroni pe nivelul de intrare patru pattern-uri si anume: (+1 +1), (-1 +1), (+1 -1) si (-1 -1). RNA trebuie sa produca un semnal egal cu 1 daca la intrare se aplica (-1 +1) sI 0 în rest. Prin amplasarea pattern-urilor în spatiul (x1,x2) al intrarilor obtinem patru puncte simetrice în jurul originii. Acest plan poate fi separat printr-o dreapta în doua semiplane astfel încât în fiecare dintre acestea sa fie amplasat câte un grup de pattern-uri (figura 5). Ecuatia dreptei se considera de forma:
Figura 5
RNA multiliniar separabile
RNA multiliniare trebuie sa fie capabile sa separe punctele planului (x1,x2) în doua sau mai multe grupuri. Astfel, RNA multiliniara consta dintr-un set de functii liniare, fiecare cu alta panta (A) si decalaj (B) (figura 6).
![]() |
Figura 6
În figura 7 se exemplifica modalitatea de calcul a functiei SAU exclusiv de catre o RNA multiliniara:
Exemplu:
![]() |
Figura 7
RNA neliniar separabile
În acest caz RNA este descrisa de o functie neliniara, care uneori poate fi foarte dificil de tratat. În figura 8 este prezentata o RNA neliniara:
![]() |
Figura 8
Adaptabilitatea si stabilitatea RNA
O importanta deosebita prezinta adaptabilitatea RNA, capacitatea de a învata în mod continuu. Învatarea continua implica continua up-gradare a ponderilor sinaptice ale RNA, ceea ce poate prezenta unele limitari tehnice pentru unele modele de RNA la nivel de implementare.
Pe de alta parte, stabilitatea unei RNA consta în capacitatea RNA de a atinge valorile stationare ale ponderilor sinaptice. Daca se impune ca RNA sa învete ceva nou, aceasta înseamna ca ponderile sale se vor modifica si RNA îsI va pierde memoria (programul). Astfel, pentru a evita pierderea memoriei trebuie evitat un nou proces de învatare aditional. Dar pe de alta parte, o RNA care îsi pierde adaptabilitatea, capacitatea de a învata în mod continuu, de cele mai multe ori nu este acceptabila. Astfel apare o dificultate în proiectarea unei RNA, atunci când se doreste obtinerea unei retele adaptabile dar care sa nu-si piarda stabilitatea. Dilema stabilitate-adaptabilitate este una dintre preocuparile majore ale specialistilor în dezvoltarea de noi arhitecturi de RNA.
Paradigme sau arhitecturi de RNA
Un model (paradigma) al unei RN reprezinta o RNA constituita de obicei dintr-un numar de neuroni, organizati pe unul sau mai multe nivele. În cazul în care exista mai multe nivele, nivelul unde se aplica semnalele de intrare (pattern-urile sau stimulii de intrare) se numeste nivel de intrare, iar nivelul unde se obtine marimea de iesire se numeste nivel de iesire. Nivelele de intermediare se numesc nivele ascunse deoarece intrarile si iesirile lor nu sunt observabile. Aceasta organizare pe nivele exista sI în structura RN biologice, de unde a fost preluata.
Programul unei RNA nu este un algoritm secvential, ci este distribuit în retea si stocat în ponderile sinaptice ale fiecarui neuron. În timpul învatarii, ponderile sinaptice si valorile de prag sunt ajustate pâna când RNA ofera iesirea dorita. În general, ponderile si pragurile fiecarui neuron în regim stationar constituie de fapt programul retelei si fiecare neuron participa la executia (paralela) a programului.
În continuare se descriu unele dintre cele mai utilizate modele de RNA.
Modelul McCulloch-Pitts
Primul model matematic al unui neuron biologic idealizat a fost propus în anul 1943 de catre Warren McCullogh (neurobiolog) si Walter Pitts (statistician) si este cunoscut astazi ca modelul McCullogh-Pitts. Acest model este foarte simplu, fara învatare si adaptare, reprezentând totusi piatra de temelie a cercetarilor ulterioare în domeniul RNA.
În figura 9 este prezentat modelul unui astfel de neuron:
![]() |
Figura 9
Iesirea unui astfel de neuron este data de relatia:
(3)
Termenul de bias, valoarea de prag si ponderile sinaptice se presupune ca au atins valorile stationare si se considera constante, ceea ce implica faptul ca procesele de învatare si adaptare sunt încheiate.
Perceptronul
Modelul McCullogh-Pitts nu este decât un sistem simplu în bucla deschisa cu singurul scop recunoscut de a modela un neuron. Nu exista un mecanism de comparare a iesirii obtinute cu cea dorita si nu are loc un proces de învatare. Se impune astfel introducerea unei reactii, pentru a putea obtine un model mai apropiat de realitate, care sa surprinda si functionarea, nu doar structura unui neuron.
Exemplu
În general MLP sunt compuse din mai multi perceptroni formând o structura ierarhica de tip topologie directa (feedforward), cu unul sau mai multe nivele ascunse. Fiecare nivel are unul sau mai multi neuroni. Numarul de nivele ascunse si numarul de neuroni de pe fiecare nivel se alege în functie de aplicatie pe principiul trial-error, neexistând o metoda formala de determinare a numarului optim de nivele sau de neuroni.
Pentru antrenarea MLP se pot utiliza diversi algoritmi, cel mai des folosit fiind regula Delta.
MLP pot fi utilizati pentru implementarea functiilor logice booleene (2 nivele), pentru partitionarea spatiului intrarilor ti clasificare (2-3 nivele), pentru implementarea transformarilor neliniare pentru probleme de aproximare (2-3 nivele).
Acest algoritm de învatare se bazeaza pe metoda minimizarii a celor mai mici patrate. Obiectivul acestei metode este exprimarea diferentei dintre iesirea actuala si cea dorita în functie de intrari si iesiri. Eroarea medie patratica este data de:
(7)
unde wi este matricea ponderilor, xi vestorul intrarilor, Ti vectorul iesirilor-tinta si Oi vectorul iesirilor actuale ale celui de-al i-lea neuron, iar f este functia de activare. Gradientul erorii va fi:
(8)
Deoarece se cauta minimizarea erorii, vom considera:
(9)
unde μ este o
constanta pozitiva. Astfel, devine:
sau (10)
(11)
Daca presupunem ca functia de activare neliniara este o sigmoida de ecuatie:
(12)
unde k=1, derivata va putea fi
aproximata prin relatia:
(13)
Rezulta ca:
(14)
Exemplu: Se considera o RNA de tip MLP cu patru intrari. Se dau vectorul de intrare xi si vectorul ponderilor wi:
activare este o functie sigmoida cu k=1. Sa se antreneze reteaua.
Se calculeaza întâi derivata dupa prima iteratie:
Dupa prima iteratie ponderile devin:
Iteratia continua pâna când ponderile nu se mai modifica sau pâna când eroarea este mai mica decât o valoare impusa. (Tema pentru acasa)
ADALINE sI MADALINE
Conceptul de ADALINE (ADAptive LInear NEuron), introdus de Bernard Widrow si colegii sai, consta dintr-un singur neuron cu functie de activare de tip limitator (sgn), cu ponderi ajustabile (figura 11).
Regula de adaptare a ponderilor (de fapt algoritmul de învatare) poarta denumirea de algoritmul Widrow-Hoff si implica parcurgerea urmatorilor pasi:
Se ataseaza ponderilor sinaptice valori între 1 si -1.
Se aplica modelului un set de intrari si iesirea-tinta corespunzatoare.
Se calculeaza eroarea.
Se ajusteaza fiecare pondere în sensul minimizarii (sau chiar anularii) erorii medii patratice, astfel încât eroarea este redusa cu 1/n, unde n este numarul de ponderi.
Se repeta procesul pâna când eroarea este suficient de mica (sau zero).
Se repeta pasii anteriori pentru toate seturile de antrenare.
Figura 11
RNA de tip ADALINE au aplicatii în filtrarea de semnal adaptiva, recunoasterea formelor de semnal, predictie.
![]() |
Figura 12
RNA de tip MADALINE (Multi ADALINE) utilizeaza mai multe modele ADALINE în paralel, cu o singura unitate de iesire, care furnizeaza o valoare determinata pe baza unor reguli de selectie. De ex., daca se utilizeaza regula votului majoritar, iesirea va fi 1 (adevarat) daca cel putin 51% dintre intrari sunt 1 (adevarate), iar daca nu, va fi -1 (fals). O alta varianta de alegere a regulii de selectie este functia sI logic: iesirea va fi 1 (adevarat), daca toate intrarile sunt 1 (adevarat), iar în rest este falsa (figura 12).
RNA de tip MADALINE se preteaza la recunoasterea invarianta de forme, comunicatii (egalizatoare de semnal adaptive, anularea adaptiva a ecoului etc.).
RNA bazate pe algoritmul de învatare back-propagation
Algoritmul Back-propagation, dezvoltat de Paul Werbos în 1974 (si redescoperit pe cale independenta de catre Rumelhart si Parker) este cunoscut ca un algoritm de învatare care se preteaza la antrenarea unui anumit tip de retele (retele directe, pe mai multe nivele), de unde poate apare denumirea de retele back-propagation. Retelele tipice care se antreneaza cu acest algoritm au unul sau mai multe straturi ascunse. Fiecare strat este total conectat cu stratul urmator. Pattern-urile de la intrare sunt propagate înainte de la intrare catre iesire, iar apoi erorile constatate între iesirile dorite si cale actuale sunt propagate înapoi si sunt utilizate pentru ajustarea ponderilor.
Cu toate ca este un algoritm foarte utilizat, exista unele deficiente. Una dintre acestea este faptul ca metoda "inversa" a calculului ponderilor, specifica acestui algoritm nu pare plauzibila d.p.d.v. biologic. Din acest motiv se poate accepta algoritmul ca metoda de proiectare a unei retele cu învatare, dar nu ca pe un emulator al creierului uman.
Retele de tip CMAC (Cerebellum Model Articulation Controller)
Acest tip de retele a fost dezvoltat de James Albus. Retelele CMAC prezinta o structura din trei straturi: stratul de intrare, stratul functiilor de baza, respectiv stratul vectorilor de ponderi. Algoritmul de învatare utilizat este regula Delta. Este o retea cu procesarea locala a informatiei. Se utilizeaza în structuri de reglare adaptiva.
Retele bazate pe ART (Adaptive Resonance Theory )
RNA bazate pe teoria rezonantei adaptive au fost dezvoltate de Steven Grossberg si Gail Carpenter ca o structura nesupravegheata, bazata pe învatare competitiva. Acest tip de retele au aparut în ideea de a rezolva dilema stabilitate-plasticitate prin faptul ca reteaua ART combina învatarea competitiva bottom-up (intrare-iesire) cu învatarea top-down (iesire-intrare).
Retelele ART contin doua straturi principale: stratul de intrare-comparare si stratul de iesire-recunoastere, care interactioneaza între ele. În plus, exista un nivel intermediar, o retea de filtrare adpativa între nivelul de intrare si cel de iesire. Pentru fiecare nivel exista semnale de control pentru fluxul de informatii.
Sunt utilizate la recunoasterea independenta a formelor, predictie, generalizare, realizând clasificarea unor categorii de pattern-uri si fiind capabile sa învete altele noi.
Modelul Hopfield
Modelul realizat de John Hopfield în 1982 este o retea total conectata, autoasociativa, asincrona (ca si creierul uman dealtfel), aleatoare, cu ponderi simetrice, constând dintr-un singur nivel de noduri. Urmareste o topologie hetero cu reactie (heterofeedback). Accepta la intrare semnale bivalente: 0 si 1 sau -1 si 1.
Unitatea fundamentala a modelului Hopfield a fost un element de procesare cu doua iesiri: una inversoare si una neinversoare. Iesirile fiecarui element de procesare se pot conecta la intrarile oricarui alt neuron , în afara de cele ale lui însusi. Conexiunile sunt rezistive (o rezistenta în paralel cu un condensator), si reprezinta ponderea legaturilor sinaptice. Conexiunile de excitare utilizeaza iesirile pozitive, iar conexiunile inhibitorii utilizeaza iesirile inversoare. Conexiunile devin excitatoare atunci când iesirile unui elent de procesare sunt identice cu intrarile acestuia. Conexiunile devin inhibitorii când iesirile difera de intrarile elementului de procesare respectiv.
Modelul Hopfield este o retea stabila, utilizata ca memorie asociativa.
Alte arhitecturi de RNA
Memoriile asociative sunt retele simple cu unul sau doua straturi de neuroni care pot memora pattern-uri, prin asociere. Reteaua învata un numar de perechi de pattern-uri si trebuie apoi sa refaca la iesire pattern-ul asociat cu cel prezentat la intrare, chiar daca acesta este putin modificat. Exista mai multe tipuri de memorii asociative, fiecare având proprietati si algoritmi de învatare diferiti.
BSB (Brain-State-in-a-Box) este un concept dezvoltat de James Anderson si implementat apoi într-o retea neuronala asociativa liniara combinata cu un algoritm neliniar de post-procesare utilizat pentru înlaturarea raspunsurilor nedorite produse de reteaua liniara. Simuleaza procesul de gândire uman.
LVQ (Linear Vector Quantization) este o arhitectura de clasificare dezvoltata de Teuvo Kohonen, care modifica limitele claselor de pattern-uri astfel încât sa minimizeze eroarea de clasificare. Reteaua LVQ are singur strat de noduri, fiecare nod corespunzând unei clase sau subclase de pattern-uri. În final, un vector prezentat la intrare i se asociaza o anumita clasa (cea mai apropiata). Se utilizeaza pentru recunoasterea de caractere, convertirea vorbirii în foneme etc.
SOM (Self-Organizing Map) este un algoritm de clusterizare dezvoltat de Teuvo Kohonen, care creeaza o reprezentare redusa a datelor originale de intrare, creând relatii între pattern-urile de intrare. Iesirea SOM nu corespunde unor clase cunoscute (ca în cazul LVQ), ci unor clustere necunoscute pe care SOM le creeaza singur. Iesirea adecvata se furnizeaza pe baza celei mai mici distante fata de pattern-ul de antrenare. Astfel, dupa antrenare, ponderile fiecarui nod modeleaza proprietatile care caracterizeaza un cluster format în spatiul datelor de intrare. Retelele SOM sunt utilizate în retele hibride cu backpropagation sau retele hibride de clasificare.
PNN (Probabilistic Neural Network) a fost realizata de Donald Specht ca o arhitectura de clasificare care aproximeaza instantaneu limita cea mai buna între categoriile de pattern-uri. Reteaua este structurata pe patru nivele, cu doua straturi ascunse. Primul dintre acestea contine câte un nod pentru fiecare pattern de antrenare, iar cel de-al doilea, câte un nod pentru fiecare clasa. În timpul antrenarii se utilizeaza pattern-uri de antrenare pentru a estima distributia probabilistica a claselor. Apoi, pattern-urile de la intrare sunt asociate acelei clase care este cea mai asemanatoare. Antrenarea este rapida, dar necesita un numar mare de date de antrenare.
RBF (Radial Basis Function) este o arhitectura de clasificare si aproximare a functiilor obtinuta de M.J.D. Powell. Iesirea retelei este formata ca o combinatie liniara a unor functii baza radiale. Capacitatea de aproximare a retelei este data de pozitia centrelor functiilor baza în spatiul intrarilor.
Retelele B-spline pot fi utilizate pentru a realiza o corespondenta între un vector de intrare si o marime scalara, într-un domeniu restrâns al spatiului intrarilor, prin definirea unui numar de functii baza în acest domeniu. Iesirea retelei este o combinatie liniara a acestui set de functii baza, definite în spatiul vectorilor de intrare. Este o retea cu procesare locala a informatiei.
Masina Boltzmann este o generalizare a retelei Hopfield. Spre deosebire de aceasta, nodurile pot fi conectate inclusiv cu ele însele, iar reteaua poate poseda si straturi ascunse. Actualizarea starii nodurilor se face pe baza unei reguli de decizie stochastica. Starile retelei sunt structurate în distributie Boltzmann (forma exponentiala de probabilitate de distributie utilizata pentru a modela starile unui sistem fizic la echilibru termic). Poate fi utilizata ca memorie asociativa sau pentru solutionarea unei probleme de optimizare.
Retelele Hamming implementeaza un clasificator al erorii minime pentru un vector binar, unde eroarea este definita utilizând distanta Hamming. Un clasificator de eroare minima este definit prin intermediul unor vectori exemplu. Dupa antrenare, un vector de intrare a carui apartenenta la o clasa este necunoscuta, este asociat categoriei al carei vector exemplu este cel mai apropiat (din punct de vedere al distantei Hamming).
Retelele modulare sunt implementate pe baza metodei "divide et impera". Un task este împartit în task-uri mai simple si de dimensiuni mai reduse, fiecare task fiind învatat de un modul (retea neuronala) expert. Rezultatele obtinute de fiecare modul sunt apoi utilizate pentru rezolvarea problemei globale. Aceste retele ofera numeroase avantaje, datorate modularizarii. Se pot utiliza pentru proiectarea regulatoarelor neuronale.
3. Aspecte legate de conducerea neuronala a proceselor
Retelele neuronale artificiale se preteaza la utilizarea în conducerea de procese atât pentru identificarea si modelarea proceselor cât si ca regulatoare.
Principala caracteristica care justifica utilizarea retelelor neuronale pentru modelarea si identificarea sistemelor dinamice, în special a celor neliniare, este capacitatea de a aproxima aplicatii neliniare. O retea MLP feedforward cu un singur strat ascuns este capabila sa aproximeze orice functie continua, cu un grad dorit de precizie, fapt valabil si pentru retelele recurente multistrat. Astfel modelele neurale pot fi utilizate pentru modelarea si identificarea sistemelor dinamice neliniare necunoscute, pentru care sunt disponibile doar date referitoare la conduita de transfer.
În ceea ce priveste utilitatea retelelor neuronale în sistemele de conducere, cercetatorii au evidentiat arhitectura, caracteristicile si performantele creierului uman utilizat ca regulator si în relatie cu aceasta, unele avantajele ale regulatoarelor neurale în raport cu cele conventionale.
3.1. Modelarea si identificarea neuronala a sistemelor
În domeniul modelarii exista patru strategii mai importante de modelare a unui proces utilizând retele neuronale. În continuare se va face o trecere în revista a principiilor acestora.
Modelarea directa presupune antrenarea unei retele neuronale în vederea aproximarii dinamicii directe a procesului. În paralel cu procesul care trebuie modelat se plaseaza modelul neural. Procesul poate fi descris de urmatoarea ecuatie:
(15)
Semnalul de antrenare al retelei este eroarea dintre iesirea procesului si iesirea retelei. Ca algoritm de învatare se utilizeaza învatarea supervizata, dar în cazul particular în care reteaua este de tip MLP se poate folosi ca algoritm de antrenare si algoritmul back-propagation. Aceasta strategie de modelare poate fi descrisa de schema de principiu din figura 13 :
![]() |
Figura 13
Un model neural de acest tip poate fi utilizat în sisteme de conducere cu reactie în care este necesara o estimare a iesirii procesului, pentru predictia performantelor procesului în cazul în care iesirea reala a procesului nu este disponibila, pentru proiectarea off-line a unui regulator. Datele necesate procesului de antrenare se obtin din observatii ale conduitei de transfer a procesului. Reteaua are ca intrare aceeasi marime ca si procesul, iar iesirea procesului este iesirea dorita a retelei.
Structura modelului neural se alege aceeasi cu a procesului. Reteaua are o arhitectura simpla. Semnalul de comanda si starile procesului sunt esantionate, formând intrarea retelei, apoi se calculeaza iesirea retelei si se compara cu iesirea masurata (dorita) a procesului. Diferenta dintre cele doua marimi este utilizata pentru ajustarea ponderilor retelei în scopul reducerii erorii obtinute.
În cazul modelarii directe este foarte importanta alegerea setului de date folosit pentru antrenarea retelei, deoarece reteaua utilizeaza doar informatii referitoare la intrarea si iesirea procesului. Astfel, semnalul de intrare trebuie sa fie suficient de consistent pentru a furniza date de antrenare care sa parcurga întregul spatiu de intrari al retelei.
3.1.2. Modelarea inversa generalizata
Prin modelare inversa a procesului o RNA este antrenata ca invers al procesului. Se obtine astfel un regulator neural, care împreuna cu procesul considerat are o functie de transfer unitara. Reteaua este antrenata ca invers al procesului din relatia (15), adica:
(16)
Metoda de antrenare generalizata este cea mai simpla abordare a strategiei de modelare inversa. Schema de principiu este ilustrata în figura 14 :
![]() |
Figura 14
Pentru intrarea retelei se foloseste un semnal sintetic, acelasi cu semnalul de intrare a procesului. Iesirea sistemului este folosita ca intrare a retelei, iar iesirea retelei este comparata cu intrarea sistemului, considerata semnal de antrenare. Pentru definirea cât mai corecta a modelului invers este necesar ca setul de date de antrenare sa fie unic. În cazul antrenarii generalizate, reteaua este antrenata off-line în sensul minimizarii urmatorului criteriu:
(17)
unde w reprezinta vectorul ponderilor retelei.
Un dezavantaj al metodei este faptul ca nu este orientata pe aplicatie, este mai curând generala. Metoda de modelare generalizata se poate utiliza pentru controlul sistemelor neliniare sau pentru învatarea cinematicii inverse, respectiv a dinamicii inverse în conducerea robotilor.
3.1.3. Modelarea inversa specializata
Scopul metodei este acelasi cu al metodei anterioare, însa difera modul de rezolvare a problemei. Shema de principiu este ilustrata în figura 15:
![]() |
Figura 15
Metoda inversa specializata presupune constructia unui model direct al procesului prin care se transmite înapoi un semnal de eroare între iesirea dorita a procesului si raspunsul procesului. Astfel, regulatorul neuronal constituit de modelul invers al procesului îsi va ajusta parametrii în functie de semnalul de eroare amintit. Acest tip de antrenare este o procedura on-line, ideea de baza fiind minimizarea criteriului:
(18)
unde: . Modelul invers este obtinut pentru Am=Bm=1, desi uneori se poate utiliza si un
filtru trece-jos, caz în care se obtine un model invers mai neted.
Spre deosebire de metoda anterioara, modelarea inversa specializata prezinta avantajul orientarii pe aplicatie. Din acest motiv, antrenarea specializata este potrivita pentru optimizarea regulatoarelor în vederea urmarii îndeaproape a unei traiectorii de referinta prescrise, ceea ce prezinta importanta în numeroase aplicatii (de ex. în robotica). În plus, chiar daca modelul direct al procesului nu este bine definit, se poate obtine un model invers cu proprietatile dorite. Un dezavantaj al metodei ar putea fi acela ca datorita faptului ca antrenarea specializata trebuie realizata on-line este mai dificil de pus în practica decât antrenarea generalizata.
3.1.4. Modelarea operationala
În cadrul acestei metode, procesul de învatare se efectueaza în paralel cu activitatea unui operator care actioneaza asupra procesului. Schema de principiu a unui astfel de sistem este cea din figura 16. Semnalul de antrenare este raspunsul procesului, care contine o componenta de zgomot semnificativa, datorata gradului de imprecizie a actiunilor operatorului.
Pentru a obtine un model cât mai corect, setul de date de antrenare trebuie sa fie consistent, iar vectorul de intrari al retelei trebuie sa contina toata informatia detinuta de operator.
3.1.5. Identificarea bazata pe modele neurale
Pentru identificarea sistemelor bazata pe modele neuronale se procedeaza ca si în cazul identificarii orientate pe modele clasice, principiile de baza fiind aceleasi, atât pentru procese liniare, cât si pentru sisteme neliniare. Procesul de identificare în cazul în care modelele sunt reprezentate de retele neuronale consta de fapt în antrenarea respectivei retele. Se porneste de la cel mai simplu model care poate descrie sistemul si se continua cu modele mai complexe numai în cazul în care modelul cel mai simplu nu îndeplineste testele de validitate. Daca se testeaza un model mai complicat, rezultatele obtinute cu un model mai simplu pot ajuta la maniera de alegere a parametrilor structurali pentru noul model.
Astfel, procedura care trebuie executata pentru identificarea unui sistem dinamic consta în patru pasi de baza, ca în organigrama din figura 17.
În faza de experimentare datele experimentale despre proces sunt culese si prelucrate în vederea obtinerii unui set de date/semnale adecvate utilizarii lor în continuare. Astfel, datele experimentale trebuie sa contina informatii care sa descrie sistemul în toate regimurile si punctele de functionare, cu o perioada de esantionare adecvata.
Presupunând ca setul de date a fost cules, urmatorul pas consta în alegerea structurii modelului, ceea ce este destul de dificil în cazul sistemelor neliniare. În acest caz este necesara stabilirea regresorilor si aunei arhitecturi de RNA corespunzatoare. Regresorii se pot stabili ca si în cazul identificarii clasice a sistemelor , urmând sa se determine arhitectura de RNA optima, avâns ca intrari regresorii stabiliti. Odata selectata structura modelului (tipul de model) urmatorul pas consta în alegerea ordinului modelului, pentru care exista metode specifice.
Estimarea modelului se realizeaza de fapt prin antrenarea retelei neuronale, utilizând diverse metode de estimare, de exemplu metoda Levenberg-Marquardt sau metoda predictiei recursive a erorii de predictie.
În ceea ce priveste validarea modelului, cea mai buna metoda este investigarea erorii de predictie cu ajutorul unui set-test de date (autocorelatie, cross-corelation).
![]() |
Figura 17
Întoarcerea la etapa de antrenare se datoreaza faptului ca s-a atins un minim local al criteriului. În acest caz, RNA trebuie antrenata din nou, pornind de la ponderi initiale diferite fata de ultima antrenare. Întoarcerea la etapa selectiei structurii modelului se datoreaza modului în care s-a realizat separarea problemei. Astfel, trebuie încercat fie un alt regresor, fie o alta arhitectura a retelei. Acest lucru se poate realiza prin încercari succesive sau printr-o metoda optimala.
3.2. Reglajul neuronal
Datorita posibilitatilor multiple oferite de retelelele neuronale, acestea au fost introduse si ca regulatoare în sisteme automate. Cel mai mare avantaj al acestora este realizarea unui reglaj cu performante ridicate datorita capacitatii de a învata a retelelor neuronale.
Sistemele de reglare neuronale pot fi împartite în doua categorii fundamentale din punct de vedere al proiectarii, si anume:
- cu proiectare directa (regulatorul este o retea neuronala);
cu proiectare indirecta (regulatorul nu este o retea neuronala, dar strategia de reglare se bazeaza pe modelul neuronal al procesului).
Pe de alta parte, din punct de vedere al tipului de model implicat în strategia de reglare distingem:
reglare pe baza modelui direct al procesului;
reglare pe baza modelului invers al procesului.
3.2.1. Reglarea pe baza modelului invers
Cele mai raspândite strategii de conducere bazate pe retele neuronale sunt cele care utilizeaza modelarea dinamicii inverse a procesului. În continuare se vor prezenta cele mai utilizate procedee de control bazate pe modelul invers al procesului.
3.2.1.1. Controlul direct invers
![]() |
3.2.1.2. Controlul bazat pe model intern
În acest caz, semnalul de comanda este
sintetizat printr-o combinatie între un model direct al procesului si
un model invers. Acest tip de proiectare are avantajul dea furniza un
raspuns fara offset, chiar daca procesul este afectat de o
perturbatie
![]() |
Figura 19
3.2.1.3. Optimizarea unui sistem de reglare deja existent
Utilizarea modelelor inverse în structuri cu reactie conduce la obtinerea de raspunsuri aperiodice, ceea ce în unele cazuri nu este de dorit. Daca un regulator PID a fost deja acordat pentru stabilizarea procesului, se poate utiliza un model invers al procesului pentru furnizarea unui semnal pe calea directa, direct de la referinta. În acest fel se pot optimiza performantele de reglare ale sistemului initial, înlaturând dezavantajul controlului aperiodic (figura 20).
![]() |
Figura 20
3.2.2. Reglarea prin liniarizare dupa reactie
Reglarea prin liniarizare dupa reactie este o metoda utilizata pentru controlul unor anumite clase de procese neliniare. În continuare se prezinta un regulator discret bazat pe liniarizare intrare-iesire utilizând un model neural al procesului. Antrenarea modelului neural se realizeaza cu ajutorul unui algoritm cu urmatoarea structura:
(19)
unde f si g sunt doua retele separate. Marimea de comanda se calculeaza astfel:
(20)
![]() |
Figura 21
3.2.3. Controlul neural optimal
Pentru proiectarea regulatoarelor neurale optimale se poate utiliza un algoritm asemanator antrenarii specializate, cu unele modificari, si anume introducerea în criteriu a unui termen în scopul penalizarii patratelor marimii de comanda:
(21)
3.2.4. Reglarea prin liniarizare în jurul unui punct de functionare
Ideea liniarizarii modelelor neuronale neliniare în jurul unui punct de functionare poate fi rezumata astfel: se presupune un model deterministic al unui proces:
(22)
Se introduce vectorul de stare x(t) compus din argumentele functiei g:
(23)
La momentul se liniarizeaza g în jurul starii curente x(τ) pentru a se obtine
modelul aproximativ:
(24)
unde:
si:
Prin separarea partii care contine componente ale vectorului de stare modelul de mai sus se poate scrie astfel:
(25)
unde π(τ) este termenul de bias si se determina astfel:
(26)
si:
Astfel, modelul aproximat poate fi interpretat ca un model liniar afectat de o perturbatie aditionala π(τ) dependenta de punctul de functionare. Proiectarea unui sistem de reglare dupa acest principiu se face conform figurii 22:
![]() |
Chiar daca un astfel de regulator nu este adptiv, în sensul proectarii pentru un sistem variant în timp, principial acesta se aseamana foarte mult cu regulatoarele autoacordabile de tip RST. Estimarea modelului liniar nu are loc la fiecare pas (perioada de esantionare). Modelul liniar este extras dintr-un model neural al procesului. Aceasta metoda nu utilizeaza un regulator neural propriu-zis, deci este o metoda cu proiectare indirecta.
O varianta de implementare a acestei metode se
bazeaza pe principiul minimei variante. Se presupune ca termenul
de bias π(τ) este
perturbatie de tip zgomot alb, . Regulatorul este astfel proiectat încât sa minimizeze
criteriul urmator:
(27)
unde It reprezinta informatiile disponibile pâna la momentul t:
.
Un astfel de regulator va avea structura din figura 23, data de legea de reglare:
(28)
![]() |
Figura 23
O alta varianta de implementare ar fi cea cea a unui regulator predictiv. Proiectarea acestuia se realizeaza prin minimizarea la fiecare iteratie a criteriului:
(29)
în functie de Nu marimi de comanda ulterioare:
si tinând cont de urmatoarea constrângere (u este constant între momentele de esantionare):
N1 reprezinta
orizontul de minima predictie, N2
este orizontul de maxima predictie, iar Nu orizontul maxim de control; ρ este un factor de
penalizare a variatiilor în marimea de comanda. Predictiile
(estimarile) ulterioare se realizeaza ca predictii de minima
varianta. Problema de optimizare (rezolvata on-line atâta timp
cât la fiecare moment de esantionare se obtine un model liniar) rezulta
ca o secventa de comenzi U(t).
Procesului i se va aplica primul element al acestei secvente si anume
u(t).
3.2.5. Structuri de reglare ierarhice
Sistemul este compus din trei subsisteme, ca în figura 24. Subsistemul reprezentat de reactia negativa conventionala (externa) se bazeaza pe eroarea dintre iesirea dorita a procesului r si iesirea masurata y. Al doilea subsistem este reprezentat de calea care uneste RN 1 si reprezinta modelul intern al dinamicii procesului.
Figura 24
Aceasta retea învata dinamica
procesului, culegând informatii din marimile de intrare u, respectiv de iesire y ale procesului, furnizând apoi un
semnal estimat . Pe baza erorii dintre r
si
se determina o
bucla de reactie interna, mai rapida decât cea
externa. Cel de al treilea sistem este constituit de RN 2 care
supravegheaza iesirea dorita r
si intrarea procesului u pentru
a modela dinamica inversa a procesului. Astfel, când va primi la intrare r va produce
.
3.2.6. Structuri multistrat
4.Aplicatii ale retelelor neuronale în conducerea proceselor
În prezent, RNA se aplica cu succes în numeroase domenii, cum ar fi: procesarea de semnal, procesarea de imagini, comunicatii, controlul inteligent al proceselor, robotica etc.
|