Sunteți pe pagina 1din 30

REELE NEURONALE

TEORIE I APLICAIE

Cuprins
Cuprins2 Introducere..3 Capitolul 1. Procese de nvare n sisteme cu inteligen artificial..5 Capitolul 2. Elemente de neurodinamic9 2.1. Modelul general al unei reele neuronale..9 2.2. Reele neuronale multistrat.11 Capitolul 3. Modelul perceptronului....13 3.1. Perceptronul cu un singur strat...13 3.2. Algoritmul de instruire15 3.3. Limitele perceptronului..16 Capitolul 4. Propagarea napoi a erorii.17 4.1. Funcia criteriu17 4.2. Algoritmul de propagare napoi..19 Capitolul 5. Arhitecturi moderne de reele neuronale...21 5.1. Reele neuronale probabilistice21 5.2. Reele neuronale fuzzy.22 Capitolul 6. Aplicaii ale reelelor neuronale24 6.1. Reele neuronale n probleme de control i de modulare a sistemelor24 6.2. Prelucrri de imagini cu reele neuronale25 6.3. Sistem expert cu reea neuronal multistrat

Introducere
Proiectul de fa i propune s prezinte ideile de baz ale calculului neuronal alturi de principale modele conexioniste ale inteligenei artificiale. n reelele neuronale informaia nu mai este memorat n zone bine precizate, ca n cazul calculatoarelor standard, ci este memorat difuz n toat reeaua. Memorarea se face stabilind valori corespunztoare ale ponderilor conexiunilor sinaptice dintre neuronii reelei. Un alt element important, care este, probabil, principalul responsabil pentru succesul modelelor conexioniste, este capacitatea reelelor neuronale de a nva din exemple. n mod tradiional, pentru a rezolva o problem, trebuie s elaborm un model (matematic, logic, lingvistic etc.) al acesteia. Apoi, pornind de la acest model, trebuie s indicm o succesiune de operaii reprezentnd algoritmul de rezolvare a problemei. Exist, ns, probleme practice de mare complexitate pentru care stabilirea unui algoritm, fie el i unul aproximativ, este dificil sau chiar imposibil. n acest caz, problema nu poate fi abordat folosind un calculator tradiional, indiferent de resursele de memorie i timp de calcul disponibil. Caracteristic reelelor neuronale este faptul c, pornind de la o mulime de exemple, ele sunt capabile s sintetizeze n mod implicit un anumit model al problemei. Se poate spune c o reea neuronal construiete singur algoritmul pentru rezolvarea unei probleme, dac i furnizm o mulime reprezentativ de cazuri particulare (exemple de instruire). Capitolul 1 are un caracter introductiv si schieaz ideile de baz ale calculului neuronal. n Capitolul 2 se prezint elementele fundamentale privind arhitectura si funcionarea reelelor neuronale. Se d ecuaia general a evoluiei unei reele neuronale si se prezint cinci modele fundamentale ale instruirii acestor reele. Capitolul 3 prezint studiul perceptronului si diferitelor sale variante. Perceptronul standard este un model simplu de reea neuronal iar funcionarea se bazeaz pe algoritmul de instruire. Perceptronul multi strat este o reea neuronala avnd o arhitectura format din mai multe straturi succesive de neuroni simpli.

Capitolul 4 arat modul de instruire a reelelor multi strat prin metoda de propagare napoi a erorii. Se prezint diferite metode care algoritmul de propagare napoi. Capitolul 5 ne prezint arhitecturi moderne de reele neuronale si a unor metode evolutive de optimizare bazate pe algoritmi evolutivi. Capitolul 6 este dedicat aplicaiilor calculului neuronal. Aplicaiile reelelor neuronale sunt numeroase si acoper o arie larga de domenii. Printre aplicaiile calculului neuronal se numra optimizare combinatorial, probleme de control si modelare a unor sisteme complexe, prelucrarea imaginilor si recunoaterea formelor.

1. Procese de nvare in sisteme cu inteligena artificial


Inteligena artificial, ca si in cazul inteligenei biologice se dobndete printr-un proces continu si de durata de nvare, de aceea problema nvrii ocup un loc important in cercetarea mainilor autoinstruibile (machine learning). Prin nvarea automata se nelege studiul sistemelor capabile sa-i mbunteasc performantele, utiliznd o mulime de date de instruire. Sistemele cu inteligen artificiala obinuite au capaciti de nvare foarte reduse sau nu au de loc. In cazul acestor sisteme cunoaterea trebuie sa fie programat in interiorul lor. Dac sistemele conin o eroare ,ele nu o vor putea corecta, indiferent de cate ori se executa procedura respectiv. Practic aceste sisteme nu-si pot mbuntii performanele prin experien si nici nu pot nva cunotine specifice domeniului, prin experimentare. Aproape toate sistemele cu inteligent artificial sunt sisteme deductive. Aceste sisteme pot trage concluzii din cunoaterea ncorporat sau furnizat, dar ele nu pot sa genereze singure noi cunotine. Pe msura ce un sistem cu inteligena artificial are de rezolvat sarcini mai complexe, crete i cunoaterea ce trebuie reprezentat n el (fapte, reguli, teorii). n general un sistem funcioneaz bine, n concordan cu scopul fixat prin cunoaterea furnizat, dar orice micare in afara competentei sale face ca performanele lui s scad rapid. Acest fenomen este numit si fragilitatea cunoaterii. Una din direciile de cercetare in privita mainilor instruibile este modelarea neuronal . Modelarea neuronal dezvolt sisteme instruibile pentru scopuri generale, care pornesc cu o cantitate mic de cunotine iniiale. Astfel de sisteme se numesc reele neuronale sisteme cu autoorganizare sau sisteme conexioniste. Un sistem de acest tip consta dintr-o reea de elemente interconectate de tip neuron, care realizeaz anumite funcii logice simple. Un astfel de sistem nva prin modificarea intensitii de conexiune dintre elemente, adic schimbnd ponderile asociate acestor conexiuni. Cunoaterea iniial ce este furnizat sistemului este reprezentat de caracteristicile obiectelor considerate si de o configuraie iniial a reelei. Sistemul nva construind o reprezentare simbolica a unei mulimi date de concepte prin analiza conceptelor si contraexemplelor acestor

concepte. Aceasta reprezentare poate fi sub forma de expresii logice, arbori de decizie, reguli de producie sau reele semantice. Istoria Reelelor Neuronale Artificiale (RNA) sau, simplu, a Reelelor Neuronale ncepe cu modelul de neuron propus de ctre McCulloch si Pitts (un logician si un neurobiolog) in 1943. i este numit acest model neuronal, neuronul MP. Modelul MP presupune c neuronul funcioneaz ca un dispozitiv simplu, ale crui intrri sunt ponderate. Ponderile pozitive sunt excitatoare iar ponderile negative sunt inhibitoare. Daca excitaia totala, adic suma ponderata a intrrilor, depete un anumit prag, atunci neuronul este activat si emite un semnal de ieire (ieirea are valoarea +1). Daca excitaia totala este mai mica dect valoarea prag, atunci neuronul nu este activat si iesirea lui se considera a fi zero. Hebb (1949) a propus un mecanism calitativ ce descrie procesul prin care conexiunile sinaptice sunt modificate pentru a reflecta mecanismul de nvare realizat de neuronii interconectai atunci cnd acetia sunt influenai de anumii stimuli ai mediului. Rosenblatt (1958 1959) a propus un dispozitiv numit perceptron. Perceptronul este bazat pe interconectarea unei mulimi de neuroni artificial si reprezint primul model de reea neuronal artificial Bernard Widrow a propus un model neuronal numit ADALINE si o reea cu elemente de acest tip numit MADALINE. ADALINE reprezint acronimul ADAptive Linear Neuron sau ADAptive LINear Element. MADALINE este un acronim pentru Multiple-ADALINE. Modelul ADALINE este n esena identic cu modelul perceptronului. Ieirea este bipolar: +1 sau 1.ADALINE este un dispozitiv adaptiv, in sensul ca exista o procedura bine definita de modificare a ponderilor pentru a permite dispozitivului sa dea rspunsuri corecte pentru o intrare data. Reelele neuronale permit rezolvarea unor probleme complicate, pentru care nu avem un algoritm secvenial dar posedm unele exemple de soluii. nvnd din aceste exemple (faza de instruire), reeaua va fi capabila sa trateze cazuri similare (faza de lucru). Calculatoarele obinuite sunt, desigur, instrumente extrem de adecvate in rezolvarea unui spectru larg de probleme matematice, tiinifice, inginereti. Calculatoarele ii dovedesc limitele in domenii in care omul exceleaz, cum ar fi percepia si nvarea din experien. ntr-un calculator obinuit elementul esenial este procesorul, caracterizat de viteza mare de lucru. In creier, elementele individuale de proces sunt celulele nervoase (neuronii). Ele sunt mai simple si mai lente dect un procesor de calculator, ins sunt foarte numeroase. Conexiunile
6

dintre neuroni sunt la fel de importante ca si acetia. Inteligena si procesele memoriei rezid in ntreaga reea de celule si nu in neuronii individuali. Cortexul cerebral este o reea neuronala naturala .O astfel de retea neuronala are capacitatea de a gndi, nva, simi i de a-i aminti. Reelele neuronale artificiale sunt reele de modele de neuroni conectai prin intermediul unor sinapse ajustabile. Toate modelele de reele neuronale se bazeaz pe interconectarea unor elemente simple de calcul dintr-o reea dens de conexiuni. Fiecare unitate de proces este capabil s execute doar calcule simple, dar reeaua, ca ntreg, poate avea caliti remarcabile in recunoaterea formelor, rezolvarea problemelor pentru care nu posedam un algoritm, nvarea din exemple sau din experiena. Paralelismul nalt si capacitatea de nvare reprezint caracteristicile fundamentale ale reelelor neuronale Calcululul neuronal implic doua aspecte fundamentale: nvarea si reprezentarea cunoaterii. Reelele neuronale achiziioneaz cunoaterea prin instruire. O reea neuronala este instruita daca aplicarea unei mulimi de vectori de intrare va produce ieirile dorite. Cunoaterea pe care reeaua neuronala o dobndete este memorat de sinapsele neuronale, mai precis, n ponderile conexiunilor dintre neuroni. Muli dintre algoritmi de instruire pot fi considerai ca avndu-i originea in modelul de nvare propus de ctre Donald Hebb(1949). Donald propune un model al schimbrilor conexiunilor sinaptice dintre celulele nervoase. Conform modelului lui Hebb, intensitatea conexiunii sinaptice dintre doi neuroni (ponderea conexiunii) crete de cate ori aceti neuroni sunt activai simultan de un stimul al mediului. Acest mecanism este cunoscut de regula lui Hebb de nvare. Daca yi este activarea neuronului i si exista o legtura sinaptic intre neuroni i si j, atunci, in concordana cu legea lui Hebb, intensitatea conexiunii lor sinaptice este afectata de: wij=c yi yj, unde c este un coeficient de proporionalitate adecvat ce reprezint constanta de instruire. Aceasta lege apare ca natural in muli algoritmi de nvare. n plus, exist argumente neuro-biologice care sprijin ipoteza c stimulii mediului cauzeaz modificri sinaptice.

Acest mecanism este un model de nvare nesupervizat n care drumurile neuronale des utilizate sunt intensificate (ntrite). Acest model poate explica fenomenele de obinuin si de nvare prin repetare. O reea neuronal artificial care folosete o nvare hebbiana va determina o cretere a ponderilor reelei cu o cantitate proporionala cu produsul nivelurilor de exercitare neuronale. Fie wij(n) ponderea conexiunii de la neuronul i la neuronul j nainte de ajustare si wij(n+1) ponderea acestei conexiuni dup ajustare. Legea Hebb de nvare se va scrie in acest caz sub forma: wij(n+1) = wij(n) + c yi yj , unde yi este iesirea neuronului i (intrarea neuronului j) iar yj este iesirea neuronului j. O variant a acestei legi de nvare este legea hebbian a semnalului. n concordan cu aceast lege modificarea ponderilor este dat de: wij(n+1) = wij(n) + c S(yi) S(yi) , unde S este o funcie sigmodal. Un alt tip de nvare este nvarea competitiv. n acest caz, mai muli neuroni concureaz la privilegiul de a-i modifica ponderile conexiunilor, adic de a fi activai.

2. Elemente de neurodinamic
2.1. MODELUL GENERAL AL UNEI REELE NEURONALE

n concordan cu capitolul precedent vom admite c o reea neuronal (RN) const dintr-o mulime de elemente de prelucrare (neuroni, uniti cognitive au noduri ale reelei) nalt interconectate. Considerm in continuare o reea cu p neuroni. Acetia sunt conectai printr-o mulime de ponderi de conexiune sau ponderi sinaptice. Fiecare neuron i are ni intrri i o ieire yi. Intrrile reprezint semnale venite de la ali neuroni sau din lumea exterioar. Intrrile xi ale neuronului i se reprezint prin numerele reale x 1i,... xni. Fiecare neuron i are ni ponderi sinaptice, una pentru fiecare intrare a sa. Aceste ponderi se noteaz cu w1i, w2i,..., wni i reprezint numere reale care pondereaz semnalul de intrare corespunztor. Dac wij > 0 avem o pondere sinaptic excitatoare iar dac w ij < 0 avem de-a face cu o pondere inhibitoare. Pentru simplitate, n cele ce urmeaz se va suprima indicele i. Fiecare neuron calculeaz starea sa intern sau activarea (excitaia) total ;ca fiind suma ponderat; a semnalelor de intrare. Notnd cu s activarea, avem S=wj xj
j=1 n

n modelul McCulloch-Pitts fiecare neuron este caracterizat de un prag de excitare. Vom nota acest prag cu t. ieirea y a neuronului este +1 dac activarea total este egal sau mai mare dect t. Dac f : R - R este funcia de rspuns definit prin: 1, dac x 0 F(x)= 0, daca x < 0 atunci ieirea neuronului se scrie ca y=f(wj xj+t).

Valoarea prag t poate fi eliminat din argumentul funciei f dac se adug neuronului un semnal de intrare care are ntotdeauna valoarea 1 i ponderea t, adic: xn+1 = 1 iar wn+1 = t n acest caz activarea total este
n+1

s = wj xj
j=1

i ieirea se poate scrie y = f(s). Avantajul acestei abordri este acela c pragul poate fi ajustat mpreun cu celelalte ponderi n timpul procesului de instruire. Modelul neuronal considerat se poate reprezenta schematic ca in Figura 1.

x1 x2 xn

w1 w2 wn

S = wj xj

y
Y = f(s)

Figura 1. Modelul neuronal McCulloch-Pitts

Forma funciei de rspuns f depinde de modelul de reea neuronala studiat. Aceasta funcie se mai numete funcie neuronal, funcie de ieire sau funcie de activare a neuronului. n general, se consider funcii neuronale neliniare. Se prezint cteva funcii neuronale ce reprezint diferite tipuri de neliniaritate

10

funcia prag asociata modelului McCulloch-Pitts este funcia f:R{0,1} avnd forma 1, dac x 0 F(x)= 0, daca x < 0 funcia signum, f:R{-1, 1};

1, dac x 0 F(x)= -1, daca x < 0 ,k > 0

funcie de tip sigmoidal f:R(0,1) f(x)=1+1/e-kx 1 f(x)

X Figura 2 Graficul unei funcii sigmoidale Funciile sigmoidale reprezint forme netezite ale funciei prag liniare. Toate aceste funcii sunt continue, derivabile i monoton cresctoare. Aceste proprieti sunt foarte convenabile pentru aplicaii. Observm c funciile sigmoidale, ca i cele cu prag liniar, pot produce i valori de ieire intermediare celor dou valori extreme (0 i 1). Acest lucru reprezint o facilitate pentru calculul analogic i pentru modelarea unei logici multivalente. 2.2. REELE NEURONALE MULTISTRAT

Neuronii pot fi conectai in diferite moduri pentru a forma o reea ' neuronal. Un model uzual de topologie consider neuronii organizai n mai multe straturi.
11

O reea neuronal multistrat conine dou sau mai multe straturi de neuroni. Primul strat primete intrrile din mediu. Ieirile neuronilor din acest strat constituie intrri pentru neuronii stratului urmtor. Ieirea reelei este format din ieirile neuronilor ultimului strat. Straturile situate ntre primul i ultimul nivel sunt straturi ascunse ale reelei. Schema unei astfel de topologii este dat n Figura 3. Motivul acestei complicri a arhitecturii este legat de faptul c, uneori, arhitecturile mai simple se dovedesc incapabile de a rezolva o problem sau o clas de probleme. Dac o reea dat nu poate rezolva o problem, este uneori suficient s mrim numrul neuronilor din reea. pstrnd vechea arhitectur. n alte situaii, pentru rezolvarea problemei este necesar sa modificam arhitectura reelei, introducnd unul sau mai multe straturi neuronale noi. X x1 intrri xn yn Figura 3 O reea cu dou straturi ascunse Y y1 ieiri

n reeaua din Figura 3 nu exist conexiuni intre neuronii aceluiai strat. Semnalul se propag n reea dinspre stratul de intrare spre cel de ieire. Spunem c avem o propagare nainte a semnalului in reea (reea cu transmitere nainte a semnalului). . Putem astfel considera arhitecturi de reea in care exist conexiuni intre neuronii aceluiai strat. De asemenea, uneori poate fi util s considerm conexiuni de la un neuron spre neuroni aflai n stratul anterior (mai apropiat de intrarea reelei). Alteori, conexiunile pot lega doi neuroni care nu se afl neaprat in straturi adiacente.

12

3. Modelul Perceptronului
Modelul perceptronului reprezint smburele din care s-au dezvoltat toate celelalte reele neuronale. Arhitectura perceptronului standard este cea mai simpla configuraie posibil a unei reele i ea permite ca instruirea acesteia s se realizeze folosind un algoritm simplu i eficient. Algoritmul este reprezentat de o clas larg de algoritmi de instruire, vectorii din mulimea de instruire se reprezint reelei mpreun cu clasa creia i aparin. Dac au fost memorate suficient de multe obiecte din fiecare clas, se poate construi o reprezentare intern a fiecrei clase prin ponderile de conexiune ale reelei. 3.1. PERCEPTRONUL CU UN SINGUR STRAT

Perceptronul cu un singur strat este cea mai simpl reea neuronal. Valorile de intrare pot fi binare sau numere reale. Aceast reea elementar are capacitatea de a nva s recunoasc forme simple. Un perceptron este capabil s decid dac un vector de intrare aparine uneia din cele dou clase de instruire, notate cu A1 i A2. x1 w1 y wn xn Figura 4. Perceptronul cu un singur strat Acest perceptron este implementat cu un singur neuron. Dac x este vectorul ce reprezint intrrile neuronului, putem calcula suma ponderat a elementelor de intrare. x1 x2 xn
13

X=

xj R

s = wI xI Admind c perceptronul are ieirile 1 i +1. Ieirea y este dat de urmtoarea regul : s > -t y = 1, s < -t y = -1, unde t este un prag al neuronului. Ieirea y = 1 corespunde faptului c vectorul de intrare aparine clasei A1. Dac ieirea este 1 atunci vectorul prezentat reelei aparine clasei A2 Notnd cu x vectorul de intrare extins, x1 . . xn 1

x =

i cu v vectorul ponderilor la care adugm o component cu pragul t, w1 . . wn t

v=

Cu aceste notaii ieirea perceptronului este dat de regula vTx > 0 y = +1 vTx < 0 y = -1 Ponderile conexinilor i pragul (componentele vectorului v) unui perceptron se pot adapta folosind un algoritm de instruire simplu numit algoritmul perceptronului.
14

3.2.

ALGORITMUL DE INSTRUIRE

Se va prezenta algoritmul standard pentru instruirea perceptronului cu dou clase de instruire. La primul pas al algoritmului de instruire se iniializeaz valorile ponderilor i pragul. Ponderile iniiale sunt componentele vectorului v 1. Se aleg pentru ponderile iniiale numere reale mici i nenule. Se alege valoarea constantei de corecie c (de obicei 0 < c 1). Constanta c controleaz rata de adaptare a reelei. Alegerea ei trebuie s satisfac cerine contradictorii: pe de o parte exist necesitatea de a obine o adaptare rapid a ponderilor la intrri i pe de alt parte trebuie s se in seama de necesitatea ca medierea intrrilor precedente s genereze o estimare stabil a ponderilor. Algoritmul de nvare al perceptronului compar ieirea produs de reea cu clasa corespunztoare a vectorului de intrare. Dac s-a produs o clasificare eronat, atunci vectorul pondere este modificat. n caz contrar el rmne neschimbat. Dac la p pai consecutivi nu se produce nici o modificare a vectorului pondere, atunci toi vectorii (formele) de instruire sunt corect clasificai de ultimul vector ponderere rezultat. Am obinut un vector soluie i algoritmul se oprete cu aceast decizie. Procedura de instruire descris mai sus conduce la algoritmul urmtor pentru instruirea perceptronului : ALGORITMUL PERCEPTRONULUI Se iniializeaz ponderile i pragul. Se aleg componentele w1,, wn i t ale vectorului v1. Se pune k = 1 (v1 este vectorul pondere la momentul iniial). P2 Se alege constanta de corecie c > 0. P3 Se alege o nou form de instruire. Se reprezint reelei o nou form de intrare z k i ieirea dorit, (ateptat) corespunztoare. P4 Se calculeaz ieirea real generat de perceptron. Ieirea real este dat de semnul expresiei (vk)T zk. P5 Condiia de oprire. Se repet pasul P6 pn cnd vectorul pondere nu se modific la p pai consecutivi. P6 Se adapteaz ponderile i pragul. P1

15

Se modific vectorul pondere folosind regula de corecie vk +czk , dac (vk)Tzk 0 vk, dac (vk)Tzk > 0 .

Se pune k = k + 1. Dac algoritmul s-a oprit normal, atunci vectorul v k+1 reprezint o soluie a problemei de instruire . 3.3. LIMITELE PERCETRONULUI

n multe probleme concrete de clasificare i de instruire intervin clase de obiecte care nu sunt liniar separabile. Deoarece perceptronul nu poate discrimina dect clase liniar separabile, aplicarea acestui algoritm n rezolvarea unor probleme concrete este sever limitat. Cea mai celebr i una dintre cele mai simple probleme care nu pot fi rezolvate de un perceptron este, problema calculrii valorilor funciei logice sau exclusiv Problema poate fi rezolvat de un perceptron cu mai multe straturi,(cu dou straturi). Aceast limitare, nu se datoreaz algoritmului, ci este legat de topologia foarte simpl reelei utilizate. Dac problema de instruire necesit regiuni de decizie mai complicate, atunci trebuie mrit complexitatea reelei.

16

4. Propagarea napoi a erorii


Algoritmul de propagare napoi (Back Propagation) este considerat in mod uzual, ca fiind cel mai important i mai utilizat algoritm pentru instruirea reelelor neuronale. Algoritmul de propagare napoi este o metod de instruire n reelele neuronale multistrat cu transmitere nainte (reele unidirecionale), n care se urmrete minimizarea erorii medii ptratice printr-o metod de gradient. Caracteristica esenial a reelelor cu dou straturi este c ele proiecteaz forme de intrare similare n forme de ieire similare fapt ce permite s fac generalizrile rezonabile i s prelucreze acceptabil forme care nu li s-au mai prezentat niciodat. 4.1. FUNCIA CRITERIU

Tehnica de instruire descris mai jos este asemntoare cu cea utilizat pentru a gsi dreapta care aproximeaz cel mai bine o mulime dat de puncte (problema regresiei). Aceast tehnic este o generalizare a metodei MEP. Pentru determinarea dreptei de regresiei, se utilizeaz, de regul, metoda celor mai mici ptrate. Deoarece este plauzibil ca funcia pe care o cutm s fie neliniar, se folosete o variant iterativ a metodei celor mai mici ptrate. Fie f :Rn Rp funcia necunoscut pe care reeaua trebuie s nvee (s o realizeze). Vectorul de intrare xi i corespunde rspunsul dorit di . di = f(xi). La momentul k, reelei i se reprezint asocierea vectorial (x k, dk). Admind c mulimea de instruire e format din m asocieri, (x1,d1), ,(xm,dm). Starea curent (la momentul k) a reelei neuronale definete funcia vectorial Nk : Rn Rp
17

Unde y este vectorul care indic activarea neuronilor ultimului strat al reelei. y1 . . yp

y=

Dac S este funcia vectorial de ieire, atunci, la momentul k, reeaua genereaz rspunsul S(yk). Ieirea vectorial a reelei este,aadar Nk(xk) = S(yk). Fie Sj:RR funcia de rspuns a neuronului j din stratul final. Funciile S1,.., Sp sunt mrginite i cresctoare. Se poate scrie deci sub forma S1(y1k) Nk(xk) = Sp(ypk) Algoritmul de propagare napoi cere ca funciile de rspuns s fie derivabile. Aceast condiie elimin posibilitatea utilizrii funciilor cu prag liniar, nederivabile n punctele prag. Rezult, deci, c se poate folosii funcia sigmoidal sau funcia identic. O funcie de rspuns liniar definete un neuron de ieire liniar. Ieirea real a neuronului de ieire j, cnd la intrare se prezint vectorul xk este ojk = Sjo(yjk), unde indicele o desemneaz ieirea. Eroarea corespunztoare neuronului j cnd reelei i se furnizeaz vectorul xk este ejk = djk ojk = djk Sjo(yjk).

18

Eroarea ptratic a tuturor neuronilor de ieire in raport cu intrarea x k se definete ca Ek = 12(ejk)2 Eroarea ptratic se mai poate scrie Ek = 12(ek)Tek. Eroarea total este suma erorilor pentru cele m asocieri din mulimea de nvare: m E = Ek
K=1

unde m este numrul de forme din aceast mulime. Algoritmul de propagare napoi urmrete minimizarea erorii ptratice, ns nu este sigur c algoritmul gsit va minimiza i aceast funcie criteriu. Ceea ce se obine este, n general, o soluie acceptabil i nu, neaprat, o soluie optim. 4.2. ALGORITMUL DE PROPAGARE NAPOI

Aplicarea algoritmului de propagare napoi presupune dou etape. n prima etap se prezint reelei un vector de intrare x k i ieirea dorit corespunztoare . Fie dk aceast ieire, semnalul de intrare se propag prin reea i genereaz un rspuns. Neuronul j din cmpul de ieire produce semnalul ojk = Sjo(yjk). Figura . Unitatea formei Acest semnal este comparat cu rspunsul dorit djk .Rezult un semnal de eroare kj care se calculeaz pentru fiecare neuron de ieire:

Se calculeaz schimbrile ponderilor pentru toate conexiunile ce intr n stratul final, folosind regula urmtoare :

19

unde Sqh(hqh)este ieirea neuronului ascuns q. Cea de a doua faz a algoritmului corespunde propagrii napoi prin reea a semnalului de eroare. Aceasta permite calculul recursiv al erorii conform formulei.

Calculul se face pentru fiecare neuron q din stratul ascuns. Altfel, eroarea se propag napoi prin reea. Propagarea napoi implic un calcul de aceeai complexitate cu propagarea nainte a semnalului i nu necesit un efort excesiv de timp i memorie.

20

5. Arhitecturi moderne de reele neuronale


n acest capitol sunt prezentate dou din cele mai noi arhitecturi de reele neuronale, reele cu eficien crescut, aprute din nevoia de a nltura unele neajunsuri ale modelelor clasice (ex. perceptronul multistrat) 5.1 REELE NEURONALE PROBABILISTICE

Modelarea reelelor neuronale cu ajutorul teoriei probabilitilor sau a teoriilor de incertitudine aduce o serie de avantaje fa de abordrile strict deterministe. Acestea sunt: - reprezentarea mai veridic a modului de funcionare a reelelor neuronale biologice, n care semnalele se transmit mai ales ca impulsuri; - eficien de calcul mult superioar celei din cadrul reelelor neuronale ,nainte-napoi'; -implementare hardware simpl pentru structuri paralele; - instruire uoar i cvasiinstantanee, rezultnd posibilitatea folosirii acestor reele neuronale n timp real; - forma suprafeelor de decizie poate fi orict de complex prin modificarea unui singur parametru (de netezire) s, aceste suprafee putnd aproxima optim suprafeele Bayes; - pentru statistici variabile n timp, noile forme pot fi suprapuse simplu peste cele vechi; ~ comportare bun la forme de intrare cu zgomot sau incomplete. Astfel, pentru o problem biclas, considerm o reea neuronal probabilistic n care stratul numit ,uniti ale formei conine elemente avnd structura din figura . Pentru o distribuie normal a densitii de probabilitate, estimatorul pentru clasa A este:

funcie ce apare la ieirea unitii formei, unde XW. Unitile sumatoare adun datele de la unitile formei ce corespund mulimii de instruire si au o pondere variabil, Ck ,(Figura ).
21

Ponderea Ck este dat de Ck = -(hBk IBk) (hAk IAk) ( nAk nBk) unde nAk i nBk sunt numrul formelor de antrenare pentru clasa A k respectiv Bk , h sunt probabilitile a priori, I sunt funcii de pierdere n cazul unei decizii eronate iar THR (Figura ) este funcia prag. Instruirea const n identitatea dintre vectorul Wi i fiecare form de antrenare x. Astfel, este necesar cte o unitate pentru fiecare form din mulimea de instruire.

Figura 5. Unitatea formei 5.2

Figura 6. Neuron sumator

REELE NEURONALE FUZZY

Combinarea celor dou clase de sisteme cognitive : nuanate (fuzzy) i neuronale, s-a impus prin performanele bune, de civa ani. Fuzzyficarea arhitecturilor neuronale mrete capacitatea reelelor neuronale de a recunoate (clasifica) forme complexe, distorsionate sau incomplete. O structur de reea neuronal a fost propus de ctre Watanabe . Acest model folosete neuronul logic(Figura 7). Neuronul logic are avantajul vitezei i al unei capaciti discriminatorii remarcabile (pragul fiind independent de mrimea n bii a componentelor vectorului de intrare). Acum avem dou tipuri de vectori pondere: Wp = (Wp1 ,.., Wpn)

22

i Wn = (Wn1 ,.., Wnn) Rspunsul analog y, ce urmeaz a fi cuantizat, are forma y = (xi i) xI fiind intrrile. Ieirea binar a sistemului este z = SGN(y-h), unde h este pragul fixat. Vectorul pondere este ajustat dup diferena e ntre ieirea dorit i rspunsul sistemului la diferite intrri n cursul instruirii iar h se calculeaz cu operaii logice fuzzy: ht = (Wpi)(wni) hB = (Wpi)(Wni) h = (hT + hB)

Figura 7. Configuraia unui neuron logic tip ADN

23

6. Aplicaii ale Reelelor Neuronale


6.1. REELE NEURONALE N PROBLEME DE CONTROL I DE MODULARE A SISTEMELOR Controlul automat si modelarea sistemelor dinamice (liniare sau neliniare) constitue o aplicaie major a reelelor neuronale. Este cunoscut faptul ca un sistem dinamic este descris de ecuaii difereniale care, in funcie de complexitatea sistemului, au adesea o rezolvare laborioasa. Dei majoritatea reelelor neuronale sunt statice, un proces dinamic poate fi modelat in timp discret oferind reelei exemple de instruire constnd n intrri si ieiri trecute ale procesului. Reeaua este capabil sa nvee transformarea neliniar f, unde y(k)=f(x) , x = [u(k-1), u(k-2),, u(k-nu),y(k-2),, y(k-ny)]T , in care x(u) si y sunt, respectiv, intrarea si iesirea sistemului. Ordinele dinamice nu si ny ale sistemului trebuie sa fie cunoscute a priori sau trebuie estimate din setul se date. Problema identificrii sistemului neliniar implic att estimarea ct i aproximarea erorilor. n cazul proceselor liniar, funcia devine hiperplanul y(k)=b1u(k-1)+b2u(k-2)++bnuu(k-nu) a1y(k-1)a2y(k-2)-anyy(k-ny). Descrierea complet a sistemului este dat de gsirea pantelor (-ai) si bi. Pentru exemplificare, se considera un proces dinamic simplu dar real, reprezentat n figur. Este un sistem de ordinul unu care conine o neliniaritate tip arctg, are o constant de timp T 10s si un ctig k 2. Funcia de transfer este deci Y(k) f(u(k-1), Y(k-1)). u
0.1903 z-1 1- 0.9048 z-1

y
arctan(1)

Figura. 8. Proces dinamic de ordinul unu

24

O modelare eficient a sistemului de mai sus const intr-o combinaie de optimizare liniar si una neliniar. O prim abordare pornete cu alegerea centrilor si a dispersiei prin metoda neliniar a perceptronului multistrat, urmat de calcululul ponderilor prin optimizare liniar (metoda matricei pseudo-inverse). A doua cale folosete mai nti optimizarea liniar obinuita a centrilor, a dispersiei i a ponderilor, dup care algoritmul perceptronului va produce o acordare fin a soluiei obinute. Algoritmul combinat de optimizare este urmtorul: 1 Selecia centrilor i a dispersiei prin grupare, folosind metoda celui mai apropiat vecin. 2 Optimizarea liniar a ponderilor. 3 Dac performanele sunt satisfctoare, stop. Dac nu, se continu cu parametri iniiali ai reelei. 4 Reactualizarea centrilor i a dispersiei prin optimizarea neliniar. 5 Optimizarea liniara a ponderilor. 6 Se merge la pasul 4 pan la obinerea convergenei in timpul minim. 6.2. PRELUCRRI DE IMAGINI CU REELE NEURONALE Proprietile de baz ale reelelor neuronale, anume faptul ca sunt aproximatori universali i ca au o capacitate de predicie deosebit, i gsesc utilizarea imediat in cadrul altor domenii, cum ar fi: prelucrarea de imagini, recunoaterea formelor vizuale(scris i amprente) sau recunoaterea vorbirii. Filtrarea zgomotelor, accentuarea i detecia contururilor, segmentarea imaginii i extragerea caracteristicilor sunt cele mai importante operaii de procesare. Dei metodele clasice de prelucrare satisfac majoritatea aplicaiilor exista tehnici hibride de tipul segmentare /clasificare, pentru care metodele conexioniste ofer performante superioare in raport cu rata de recunoatere i cu timpul de calcul. Implementarea se poate realiza cu reele neuronale celulare, care sunt circuite analogice neliniare ce permit o implementare VLSI, reelele celulare putnd efectua prelucrri paralele de semnal in timp real. Ecuaia de ieire a unui nod oarecare reprezint un filtru bidimensional, neliniar i invariant n spaiu. O aplicaie foarte util este recunoaterea on line a semnturilor grafologice cu ajutorul unui neurocalculator. Se pot folosi drept

25

caracteristici coordonatele planare i presiunea stiloului, extrase cu ajutorul unei tabele grafice. Sunt luate n consideraie variabilitatea semnaturilor corecte, precum si semnaturile false. 6.3. SISTEM EXPERT CU REEA NEURONALA MULTISTRAT O arhitectur reprezentativ de sistem expert bazat pe o reea neuronala . multistrat instruit cu algoritmul propagrii inverse a fost propus n. Algoritmul de instruire accept forme de instruire pe interval, ceea ce face posibil i nvarea cu intrri irelevante i ieiri posibile. Un utilizator al sistemului poate defini tipurile de intrri i ieiri (real, ntreg, scalar, mulime), ca si modul lor de codificare (virgul mobil, binar, unar). Intrrile i ieirile expert n proiectarea particular a sistemelor expert, este necesar s se aleag intrrile si ieirile expert care vor gsi o rezolvare optim a problemei aplicative. diferite posibiliti de intrri i ieiri expert, astfel nct diferite moduri de codificare s respecte necesitile aplicaiilor particulare. S considerm un sistem expert neuronal cu un numr de intrri (simptome) i ieiri (diagnostice). Acestea pot fi variabile de tip real (ntreg), scalar cu valori definite de utilizator i mulime. Un exemplu de sistem expert de diagnostic medical simplu poate avea urmtorii parametri: INTRRI: IEIRI: DURERE DE GT:scalar din (NU, DA) TEMPERATURA: real din [36, 42] BOALA: scalar din (SANATOS, RECE, ANGINA, GRIPA) INCAPACITATEA_DE_MUNCA: scalar din (NU, DA) MEDICATIE: mulime din (DROPSURI, ASPIRINA,

PENICILINA) Valorile intrrilor i ieirilor intr-un sistem expert neuronal sunt codificate de valori analogice ale straturilor neuronilor de intrare i ieire utiliznd virgula flotant, codurile binare i unare. Tipul real codificat binar este, de fapt, de tip ntreg. Codificarea n virgul flotant necesit numai un neuron. n codificarea unar i binar exist, in general, mai muli neuroni cu dou stri (-1 i 1) conform definiiei de tip. Valoarea unui tip arbitrar este mai nti

26

transformat la o valoare numeric denumit index. Evaluarea indexului este ilustrat in Tabelul 1, pentru valori de diferite tipuri, date pentru exemplul de mai sus. Tip Real ntreg Scalar Mulime Valoare 38 38 grip Dropsuri penicinina Index 38 2 1 3/7 Virgul mobil -1/3 1 3/7 Cod binar -1, 1,-1 1,1 1,-1, 1 Cod unar -1, -1, -1, 1 -1, -1, -1, -1, -1, 1, -1,-1

Tabelul 1. Exemple de codificri Un expert i formuleaz cunotinele sub form de exemple tipice de inferene. O inferen este o pereche compus dintr-un vector de intrri tipice i vectorul corespunztor al ieirilor obinuite prin rspunsurile expertului la aceste intrri. De exemplu, in medicin, documentaia medical despre pacieni poate fi luat ca baz pentru crearea unei mulimi de exemple tipice de inferen. n acest caz, intrrile corespund cu rezultatele examinrilor medicale si ieirile sunt diagnosticele ori recomandrile medicamentoase date de doctor. Pentru exemplul de la seciunea 6.3. mulimea exemplelor de inferen poate lua urmtoarea form: { [ (NU, 38.6), (GRIP, DA, {DROPSURI, ASPIRIN,}) [ (DA, 37.2), (ANGIN, DA, {PENICILIN} ) ), ..., [ (NU, necunoscut), (SNTOS, NU, {ASPIRIN} ) ] } Baza de cunotine a sistemului expert neuronal propus este o reea neuronal multistrat. Apare, ins, problema codificrii valorilor irelevante i necunoscute ale intrrilor i ieirilor expert. Pentru a nelege importana acestei probleme, s considerm un sistem expert medical cu 50 de intrri reprezentnd rezultatele tuturor examinrilor medicale. n caz particular, multe dintre acestea sunt irelevante pentru determinarea diagnosticului final (de exemplu, razele X nu sunt necesare in stadiul de diagnoz a anginei). Pentru a rezolva aceast problem de codificare, putem crea mai multe exemple de inferen substituind toate valorile posibile pentru intrri i ieiri irelevante. Acest proces conduce, in general, la o cantitate mare de date i este dificil de realizat. De aceea vom generaliza neuronul clasic la un

27

neuron interval Valoarea irelevant sau chiar necunoscut a unei intrri sau ieiri expert este codificat utiliznd ntregul interval de stare a neuronilor. Fie [-1, 1] acest interval. Valoarea cunoscut este codificat de un singur punct din interval dup procedura de codificare descris anterior. n acest fel, obinem mulimea alctuit din forme de instruire interval. Forma de instruire interval este compus din vectorul strilor de intrare interval ale neuronului i din vectorul corespunztor al strilor interval de ieire. n exemplul nostru, utiliznd . tipul natural de codificare, forma de instruire interval este: { ( [1,1], [-1; 11 [-1,1] NU [-1,1]) necunoscut ( [ 1,1], [-1 -1], [-1-1], [-1 -1], SNTOS [1.1], [-1,-1], NU [-1 1], [1,1], [-1 1] ) } aspirin Funcia neuronului interval Se introduce predicatul FP cu neuronul ca parametru, care este adevrat dac i numai dac acest neuron este un neuron de ieire care codific ieirea expert in virgul flotant. n aceast abordare, se iau n consideraie intrrile interval [aj, bj], j i , ale neuronului i. Potenialul intern de interval [x; , y] i starea intervalului [ai, bj] (ieirea) pentru acest neuron sunt date de: yi FP(i) ai = Si(xi) , i yi EP(I) bi = Si(yi), in rest, Unde n rest ;

28

Algoritmul de instruire. Se consider mulimea de instruire {(Ik Ok) k=1,N}, unde Ik este vectorul intervalelor de intrare i O k este vectorul de ieire dorit corespunztor intervalelor de ieire ale reelei [Akv, Bkv], v indic neuronul de ieire relevant. Considernd [av(Ik), bv(Ik)] drept starea intervalului actual neuronului de ieire v pentru intrarea reelei Ik. Definim funcia de eroare parial Ek drept o sum de diferene dintre ieirea dorit i cea actual: Ek=12((av(Ik)-Akv)2+(bv(Ik)-Bkv)2). Funcia erorii totale E a reelei neuronale multistrat cu privire la ntreaga mulime de instruire este suma funciilor erorilor pariale: E=Ek.
K=1 N

Minimizarea erorii se face dup metoda gradientului. Dup ce reeaua neuronal a fost construit se poate verifica dac baza de cunotine neuronal creat este capabil sa deduc concluziile noastre. Verificarea poate fi fcut cu ajutorul unei mulimi de test.

29

Bibliografie
1. ***, Curs de ingineria reglrii automate. 2. Dumitrescu, D. 3. Encarta Encyclopedi 1999

30

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