Sunteți pe pagina 1din 66

Introducere Optimizarea reelelor cu tehnici inteligente

Sinergia a doi factori : nevoia i imaginaia au marcat, n esen, evoluia civilizaiei


umane. De la ideea realizrii inteligenei artificiale, care a aprut pe la nceputul acestui secol,
ca pur ficiune, pn la roboii inteligeni de astzi, creai din nevoia de a ne uura viaa,
drumul a fost extrem de anevoios, dar raportat la scara evoluiei umane, extrem de rapid.
Semnificaia termenului de inteligen este nc o problem de dezbatere.
Inteligena implic abilitatea de a deduce date utile din informaia memorat, de a face
raionamente, de a construi arhitecturi ale gndirii.
nc de la nceputul cercetrilor s-au conturat dou direcii diferite de dezvoltare a
inteligenei artificiale:
paradigma logico-simbolic - dezvoltarea unui soft adecvat, utiliznd calculatoarele clasice
existente (inteligena artificial);
paradigma conexionist - realizarea unui hard de concepie cu totul nou, care s modeleze
mecanismele gndirii umane (reelele neuronale);
Cele dou direcii de cercetare au evoluat n paralel uneori, alteori una a focalizat
interesul n detrimentul celeilalte. S-au conturat ca un rezultat al cercetrilor din domeniul
fiziologiei normale i patologice a sistemului nervos uman, a fizicii, matematicii,
calculatoarelor, i le-au impulsionat la rndul lor evoluia. Dezvoltarea reelelor neuronale a
fost stimulat n special de rezultate slabe ale programelor de inteligen artificial n procesul
de nvare. nvarea este o caracteristic esenial a inteligenei umane, iar pentru reelele
neuronale nvarea este o caracteristic intrinsec.
Programele realizate pentru calculatoarele convenionale au euat n a furniza cadrul
pentru reprezentarea cunoaterii ntr-o manier care s permit sinteze automate, demonstrnd
creativitatea inteligenei umane. Ele nu au realizat nici mcar un contact real cu posibilitile
i slbiciunile creierului. Se pare c materia cenuie, dei mult mai nceat, are o arhitectur
mult mai potrivit pentru procesarea informaiilor naturale. Oamenii sunt mai precii, mai
flueni, mai rapizi, n special n problemele complexe, mbuntindu-i performana prin
experien.
Acolo unde formalismul convenional a euat ca urmare a exploziei combinatoriale i
a timpului mare de procesare datorat secvenialitii, reelele neuronale vin s ofere un cadru
nou de procesare a cunoaterii. In mod similar cu organizarea creierului, reelele neuronale
utilizeaz o procesare masiv paralel i distribuit.

Definiie
Reelele neuronale (RN) sunt sisteme neliniare formate dintr-un numr mare de
procesoare elementare relativ simple, numite neuroni (sau uniti, sau perpeptroane) care
opereaz n paralel . Cunotinele sistemului sunt reprezentate prin ponderile asociate
legturilor dintre neuroni. nvarea se realizeaz prin modificarea ponderilor
interconexiunilor.

Caracteristicile reelelor neuronale

Din definiia reelelor neuronale se contureaz clar dou caracteristici semnificative,care


reprezint i sursa procesrii de calcul sporite (fa de metodele convenionale):
structura paralel i distribuit
capacitatea de a nva.

1
1.Structura paralel i distribuit
Fie citeva entitati ce trebuie reprezentate si o retea de procesoare elementare.
Reprezentarea locala aloca cite un procesor pentru fiecare entitate. In reprezentarea distribuita
fiecare entitate este un model de activitate distribuit asupra mai multor elemente de procesare.
Astfel, fiecare procesor elementar este implicat in mai multe modele. Avantajul consta in
eficienta cu care se utilizeaza posibilitatile fiecarui procesor, nu in usurinta notarii sau
implementarii. De exemplu, doua imagini diferite vor fi reprezentate prin modele de activitate
diferite asupra aceluiasi sistem. n acest sens reprezentarile distribuite sint locale la scar globala.
Fiecare procesor, la rndul su este potenial afectat de activitatea global a tuturor celorlalte
procesoare din reea. Reprezentarea cunoasterii este similara celei umane, care demonstreaza
distribit per global i local pentru auz, vedere, vorbire...
Reprezentarile distribuite asigura o utilizare eficienta a hardului disponibil. Un item este
un model de activitate asupra unor procesoare elementare. Fiecare procesor este un detector de
caracteristica. Informatia are o reprezentare activa, prin ponderile conexiunilor intre unitatile
modelului de activitate. O descriere partiala a caracteristicilor itemului dorit determina activarea
unitatilor corespunzatoare din modelul sau de activitate. Interactiunile dintre unitati permit
unitatilor active sa influenteze alte unitati, completnd modelul si generind itemul care se
potriveste cel mai bine. In nici o situatie, cu exceptia avariilor majore, nu se blocheaza
procesarea.

Celelalte caracteristici ale R.N.decurg, de fapt, din proprietatile reprezentarilor


distribuite, foarte asemanatoare cu cele ale reprezentarii umane a cunoasterii.

2.Caracterul esenial generativ


Reelele neuronale au capacitatea de a-i modifica valorile parametrilor, i prin urmare ,
performanele, ca rspuns la semnalele din exterior, deci de a nva.

2.1 Reprezentarea legturii intrare-ieire


Exist o clas larg de reele neuronale numite cu control care nva din exemple. Asa
cum copii nu trebuie sa aiba notiuni de psihologie comparata pentru a-si recunoaste mama, apoi
treptat obiectele din lumea ce-i inconjoara, nici programatorii nu trebuie sa asigure retelelor
descrieri cantitative de obiecte, seturi de criterii logice pentru a distinge obiectele de altele
similare.
Se dau R.N. exemple dint-un set de antrenament ,iar ea nva n timpul unui proces
numit antrenare , modificndu-i parametrii caracteristici respectiv ponderile
interconexiunilorr neuronale. Fiecare exemplu const dintr-un semnal unic de intrare i rspunsul
corespunztor dorit, alese aleator din setul de antrenament. Reeaua i modific ponderile n
sensul minimizrii diferenei dintre rspunsul dorit i starea sa curent de ieire, conform unui
criteriu statistic oarecare ,n timpul antrenamentului.
Antrenamentul se repet pentru diferite modele de intrare, pn cnd reeaua atinge o stare
staionar,din care modificrile ulterioare al parametrilor si sunt nesemnificative. Astfel reeaua
nva pe baza exemplelor s construiasc un model al legturii intrare ieire care i va permite s
furnizeze, dup terminarea procesului de antrenament rspunsuri apropiate de cele dorite chiar n
condiiile n care la intrare se aplic date care nu au fost folosite n etapa de nvare.

2.2 Adaptarea
Capacitatea de adaptare este strns lagat de procesul de nvare i este indispensabil n
situaia n care reeaua opereaz nt-un mediu nestaionar.
Exist , din acest punct de vedere, dou tipuri de reele neuronale:

2
cu ponderi fixe, care i modific ponderile numai n procesul de nvare, dup care le
nghea la valorile finale rezultate
cu ponderi adaptabile, la care procesul de nvare continu i n etapa de funcionare propriu-
zis (nvare on line) ,n care la intrare se aplic date care nu au fost utilizate n faza de
nvare propriu-zis. In acest caz este necesar un algoritm de adaptare suficient de rapid, care
s permit modificarea ponderilor n timp real. n plus, trebuie rezolvat i problema
stabilitii, care impune condiii contradictorii n privina vitezei de convergen.

3. Abilitatea de a generaliza automat la aparitia unor noi situaii


Oamenii au o maniera flexibila de accesare a informaiei din memorie. Ei pot sa apeleze
informatii (iteme) din descrieri partiale, chiar si cnd acestea sint eronate.
Lumea reala prezinta doar arareori informatiile cu precizia ceruta de un program de calculator.In
calculatoarele conventionale informatia reprezinta o copie statica a unui model. Regasirea
informatiei este o cautare secventiala, intr-o memorie tampon (operativa). Bineinteles, si
calculatoarele conventionale au programe care tolereaza date de intrare partial eronate
Insuficienta datelor de intrare, erorile lor, ct i posibiliile de calcul de calcul a calculatoarelor
convenionale fac adesea imposibila utilizarea acestora in aplicatiile practice.
R.N.se adapteaza intrarilor afectate de zgomot, furniznd si in aceste conditii raspunsul
corect. Ele realizeaza generalizarile necesare prin structura lor, si nu prin elaborarea de noi
programe, ca in cazul calculatoarelor conventionale.
Generalizarea este automata intr-o retea distribuita.Modelele necorelate nu interactioneaza.
Experimentarea unor modele similare duce la intarirea ponderilor conexiunilor comune.Astfel
reteaua extinde comportarea adecvata pentru un anumit model de intrare la modele similare.
Reteaua va invata sa asocieze tendinta a doua modele similare si in prezenta zgomotelor.

4.Capacitatea de a extrage regularitatile mediului pe baza similaritatii modelelor


R.N. pot sintetiza "idealul" dintr-un set de antrenament oarecare. Ele extrag regularitatile
modelelor similare. De exemplu, unei R.N. antrenate sa recunoasca alfabetul i s-au aratat numai
imagini afectate de zgomot. Dupa antrenament, sistemul a furnizat caractere perfect formate
(Carpenter si Grossberg). O retea antrenata sa formeze timpul trecut pentru verbele regulate, va
conjuga in mod similar si verbele neregulate. In plus va forma trecutul si pentru cuvinte care nu
sint verbe(Rumelhart si McClelland). Deci sistemul a extras, abstractizat si stocat caracteristicile
esentiale ale setului de antrenament, formindu-si reprezentarile interne ale acestora.

5. Flexibilitatea la schimbarea mediului


Fiecare nod dintr-o retea este un procesor elementar, care opereaza independent de toate
celelalte procesoare din sistem. Astfel incit pentru rezolvarea unor probleme mai complexe, siste-
mul se poate mari intr-o maniera modulara, prin adaugare de procesoare fara a fi necesara
restructurarea.

6. Tolerana la deteriorare
In creierul uman, distrugerea patologica a unei zone nu duce la blocarea sistemului.
In timp, alte zone devin capabile sa preia, cu o marja de eroare, functiile zonelor afectate. Pe de
alta parte pierderea difuza de neuroni din intreaga materie cenusie este continua (zilnic pierdem
zeci de mii de neuroni). Functiile creierului ramin nealterate, datorita compensarii prin structura.
Acest proces este valabil pina la un prag.
ntr-un mod similar, performana reelei neuronale se degradeaz treptat, ntr-un mod
similar celui din sistemul nervos uman, n funcie de deteriorarea interconexiunilor neuronele sau

3
a funcionrii neuronilor nii. Datorit procesrii distribuite, reeaua ca sistem va continua s
funcioneze , chiar n condiii de deteriorare, pn la gradul de avarie major.

7. Neliniaritatea
Modelele adoptate pentru funcia de transfer intrare-ieire a neuronilor elementari sunt ,
n general , neliniare, iar interconexiunile distribuie practic neliniaritatea n ntreaga reea.Acest
aspect este determinant n numeroase aplicaii, mai ales n cele de identificare-modelare de
sistem, n care sistemul analizat are un caracter neliniar intrinsec.

7.Viteza de procesare
Timpul necesar unei R.N. pentru a furniza iesirea este independent de numarul
asociatiilor stocate. Procesarea nu corespunde unei cautari secventiale, ci unui proces de relaxare,
de minimizare a unei functii de cost. Aceasta are ca efect stabilizara retelei intr-un minim global.
Timpul de stabilizare este o constanta in majoritatea arhitecturilor. O retea data ce stocheaza zece
milioane de asociatii este la fel de rapida ca una ce stocheaza zece mii. De aici avantajul major al
R.N. in aplicatiile ce necesita o mare viteza si capacitate de procesare.

8.Implementarea
Prin structura masiv paralel reelele neuronale reprezint un cadru adecvat pentru
implementrile VLSI. Soluiile oferite utilizeaz deci ,n general circuite VLSI, dei s-au
raportat i realizri optice .Gama de produse oferite include att chip-uri care conin cteva zeci
de neuroni elementari, plci cu rol de coprocesor care se includ n calculatoare clasice, ct i
calculatoare care funcioneaz integral dup principii neuronale, dar dedicate unor aplicaii
specifice.

Scurt istoric
Conceptul de "neuron" a fost introdus n 1943 de McCulloch et Pitts, ca un model
matematic pentru neuronul elementar biologic. Dei caracterizat prin limitri majore acest
model a permis explicarea funcionrii unor ansambluri de neuroni elementari, demonstrnd
capacitatea lor de a efectua calcule matematice i logice.
n 1957 Rosenblatt a descris perceptronul, primul model operaional cu capabiliti
de nvare, capabil s soluioneze probleme de clasificare. Rosenblat a demonstrat i o
teorem de convergen a algoritmului de adaptare corespunztor. n 1958 a fost proiectat
primul neurocomputer Mark I. Perceptronul care a funcionat cu succes n recunoaterea de
caractere. Perceptronul a stimulat cercetare pn n 1969, cnd printr-un studiu riguros
publicat sub numele de "Perceptrons" ei demonstreaz limitrile majore ale arhitecturilor
neuronale cu un strat. Neexistnd n acel moment nici o teorie referitoare la reelele multistrat
cei doi cercettori au lansat ideea ca limitrile se extind i asupra reeleor multistrat. Prestigiul
celor doi savani au determinat refocalizarea ateniei n alte domenii de cercetare, ducnd
practic la anularea investiiilor n urmtorii cincisprezece ani.
Puini au fost cercettorii care i-au continuat studiile n domeniu. n 1960 Widrow i
colaboratorii si propune ADALINE (ADaptive LInear NEuron) i MADALINE (more
ADALINE) pentru rezolvarea unor probleme filtrare, de recunoatere a formelor. Primele
succese au fost primite cu mare entuziasm de lumea tiinific. Specialitii au emis ipoteza c
i alte procese asociate cu inteligena i memoria uman pot fi modelate prin reele neuronale.
La nceputul anilor 80 descoperirile teoretice ct i progresul tehnologic au dus la un
reviriment al domeniului. Au fost descoperite i implementate reguli de nvare noi (ca de
exemplu bine cunoscuta regula a retropropagrii erorii pentru reelele multistrat) care au pus
n valoare potenialul aplicativ al reelelor neuronale. n 1982 J.J Hopfield introduce un punct
de vedere elegant asupra reelelor neuronale, care permite interpretarea lor ca sisteme

4
energetice crora li se poate asocia o funcie de energie. Evoluia sistemului este spre
minimizarea funciei de energie similara unei funcii de cost specific aplicaiei.
Prima conferin internaional consacrat reelelor neuronale are loc n 1987 la San
Diego (SUA). n urmtorii ani apar primele organizaii de profil i primele reviste dedicate
domeniului.
n prezent majoritatea universitilor au grupuri de cercetare heterogene, incluznd ingineri,
matematicieni, informaticieni, psihologi, medici, biologi.

Direcii de aplicabilitate a RN n telecomunicaii


Datorit potenialului extraordinar de procesare, adaptabilitii, flexibilitii, i a
vitezei extraordinare de procesare, RN fac posibil rezolvarea problemelor complexe ce pot
apare n telecomunicaii i sunt capabile:
s modeleze i s extrag caracteristicile traficului din experien;
s se adapteze la solicitrile dinamice ale reelei de comunicaii;
s prezic comportarea traficului i s-l controleze dinamic;
Aplicaiile RN n telecomunicaii sunt n plin expansiune i asigur o mbuntire a
funcionrii i siguranei procesului de comunicaie n urmtoarele direcii:.

Modelarea i identificarea de sisteme neliniare:


Abilitatea RN de a reprezenta orice funcie, att real ct i complex, liniar ct i
neliniar constituie motivul aplicrii lor n modelarea i identificarea sistemelor neliniare.
Aceast proprietate este cunoscut sub numele de "aproximare universal"[S. Haykin, 95].
Exist aplicaii ale RN n modelarea canalelor de comunicaii neliniare [M. Ibnkahla,
98], [R. Parisi, 97], modelarea amplificatoarelor neliniare, cum ar fi tuburile cu und
progresiv [M. Ibnkahla,97] i amplificatoarele cu dispozitive semiconductoare [M.
Ibnkahla,98], proiectarea de emitoare i receptoare [U. Mitra, 95], respectiv n estimarea
direciei semnalului i formarea acestuia [A.K.Y. Lai, 02], n proiectarea antenelor adaptive
[A.K.Y. Lai, 02]. Se urmrete astfel minimizarea perturbaiilor care pot fi introduse n
transmisie, determinate de neliniaritatea i fluctuaiile parametrilor canalelor de comunicaie,
reflexii, efecte de interferen intersimbol i interferen cu canalele adiacente. Utilizarea
antenelor adaptive cu RN permite transmisii la viteze mai mari n condiiile unei capaciti de
recepie superioare. Metodele convenionale, bazate pe algebra liniar, care implic adesea
calcule complexe, cu inversri de matrici, nu fac fa cerinelor de transmisie n timp real. Ele
necesit n plus antene calibrate cu caracteristici uniforme i sunt sensibile la defectele de
fabricaie. RN depesc toate aceste probleme oferind soluii robuste, precise i n timp real.
Receptoarele convenionale ale semnalelor codate cu acces multiplu cu diviziune n
cod (CDMA code division multiple acces) au euat n reconstrucia informaiei atunci cnd
numrul semnalelor transmise a fost mare. n plus aceste receptoare necesit cunoaterea
codurilor tuturor utilizatorilor care interfer [M. Varanasi, 90]. Receptoarele de semnale
CDMA cu RN elimin att zgomotul inerent canalului ct i interferena datorat accesului
multiplu [X.M. Gao, 97] i reconstruiesc semnalele transmise fr a necesita cunoaterea
codurilor de mprtiere [U. Mitra, 95]. Implementarea VLSI analogic confer receptoarelor
adaptive cu RN viteza de calcul necesar comunicaiilor moderne de debit ridicat [J. Choi,
90].

Egalizarea de canal
Abordnd egalizarea de canal ca o problem de clasificare neliniar, RN genereaz
curbe neliniare de separare a semnalelor, inclusiv complexe, astfel nct realizeaz cu succes
egalizarea i detecia semnalelor transmise prin canale complexe, profund neliniare i

5
variabile n timp [S. Chen, 94]. Performanele egalizoarelor neuronale raportate de literatura
de specialitate [G.De. Vecciana, 92], [M. Ibnkahla, 97], [A. Hussain, 97], [A. Guntsch, 98],
[C. Botoca,00], [N. Miclu,04], sunt superioare egalizoarelor convenionale att din punctul
de vedere al preciziei ct i al vitezei de procesare.
Utilizarea RN la recepie permite eliminarea att a distorsiunilor liniare ct i celor
neliniare introduse de canalul de comunicaie n caracteristica de faz i cea de amplitudine a
semnalului de comunicaie. ntre efectele nedorite compensate menionm: interferena
intersimbol, interferena cu canalele adiacente, zgomotul aditiv, fluctuaiile de faz i
amplitudine ale semnalelor transmise datorate condiiilor meteo de propagare.

Eliminarea ecoului
Pentru eliminarea ecoului, respectiv pentru eliminarea zgomotului de fundal i a
reverberaiilor, tehnicile convenionale au gsit soluii acceptabile. Suprapunerea acestor dou
efecte nedorite, mai evidente n cazul transmisiilor fr fir, n condiiile transmisiilor multiple,
constituie o problem n mare parte nerezolvat ns pn n prezent. RN sunt o bun
alternativ datorit potenialului lor deosebit de procesare, n timp real [M. Moonen, 97].

Codarea, decodarea i codurile corectoare de erori


Aceast direcie necesit o vitez i o capacitate de procesare deosebite.
Adaptabilitatea i flexibilitatea RN le permite s funcioneze eficient n situaii complexe,
acolo unde presupunerile simplificatoare ale tehnicilor de codare i decodare nu sunt
satisfcute [M. Ibnkahla, 97]

Procesarea de imagini
Compresia imaginilor este important pentru multe aplicaii din telecomunicaii, ca de
exemplu detecia prin satelit, comunicaiile multimedia, televiziunea digital, Internetul. RN
sunt o alternativ de succes la procesarea tradiional datorit factorului de compresie ridicat
realizat, a calitii imaginilor reproduse, vitezei de procesare n timp real [S.B.Zahir, 00].
Literatura de specialitate consemneaz rezultate remarcabile n aceast direcie, de la
procesrile simple de imagini statice, la cele complexe, de imagini video, n micare.
Menionm: extragerea de contur, filtrarea, sortarea de obiecte n funcie de orientare sau
dimensiune, detecia de minime i maxime ntr-o imagine pe scara nuanelor de gri, mrirea i
micorarea de imagine, segmentarea imaginilor i recunoaterea texturilor n imaginile
transmise prin satelit, recunoaterea caracterelor scrise pentru automatizarea serviciilor potale,
eliminarea zgrieturilor sau a altor perturbaii n faxuri i copiatoare, recunoaterea bancnotelor
i blocarea copiatoarelor inteligente pentru evitarea fraudelor.
n ceea ce privete detecia micrii, se raporteaz permanent realizri noi n:
extragerea unui anumit model din imagine (detecia gurii i a ochilor pe imaginile faciale n
micare, detecia mnerelor de u din imagini pentru orientarea orbilor ntr-un mediu
necunoscut),
reconstrucia de obiecte tridimensionale prin interpolare i aproximare, rotaia obiectelor
tridimensionale;
analiza i detecia micrii;
detecie de inte multiple i urmrire;
controlul roboilor la distan, ntr-un mediu necunoscut;

Optimizarea traficului de comunicaii


Reelele neuronale fac posibil rezolvarea problemelor complexe ale comunicaiilor
moderne. Ele ofer soluii de mare vitez n:

6
caracterizarea i predicia traficului de comunicaii [N. Leitao, 95] (estimarea calitii
serviciilor);
controlul comutrii, controlul fluxului i congestiei [S. Jagannathan, 01], [I. Reljin, 97];
dirijarea dinamic a traficului de comunicaii [E. Nordstrom,95];
proiectarea de reea [C. Srivaree-Ratana, 99];
atribuirea de canal n reelele de comunicaii mobile [J. Nie, 99];
Capacitatea RN de a nva din exemple este un avantaj esenial pentru managementul
adaptiv al resurselor. Pentru controlul rapid i exact al traficului este necesar adesea
caracterizarea traficului i predicia sa. O RN este capabil s nvee funcia densitate de
probabilitate a traficului, s selecteze parametrii semnificativi statistici i s estimeze valorile
previzibile ale lor. Caracterizarea, clasificarea i predicia traficului reprezint o aplicaie
direct a RN. Strategiile de control cu RN ale comutrii au evoluat n general ca o soluie la
problemele de optimizare. Simulrile au demonstrat beneficiile utilizrii RN n rutarea
dinamic prin mbuntirea semnificativ a performanelor n special n condiii de trafic
intens.

Analiza i service-ul on-line


Companiile care furnizeaz servicii de telefonie, bnci, companii de asigurare, oficii
de vnzare de bilete on-line utilizeaz un distribuitor de apel automat. Sistemul este orientat
spre oferta de servicii, avnd un grup de ageni ataai fiecrui serviciu. Sistemul distribuie
apelurile sosite spre servicii, respectiv nspre ageni. Utilizarea unei RN pentru monitorizarea
on-line a apelurilor ct i pentru analiza off-line duce la mbuntirea performanelor
ntregului sistem de comunicaii i la creterea parametrilor de calitate ai serviciilor [T.
Clarkson, 02].
Detecia fraudelor n telefonia mobil este o problem major n comunicaiile
prezentului, ce implic supravegherea tuturor apelurilor, deci manipularea unei baze de date
enorme. Problema implic att o clasificare statistic ct i o predicie temporal. Un detector
de fraud telefonic, produs de firma NORTEL, este n prezent utilizat cu deosebit succes [T.
Clarkson, 02].

7
Lucrarea nr.1

1. Scopul lucrrii practice


Lucrarea este o introducere n domeniul reelelor neuronale. Se prezint cteva noiuni
fundamentale ca de exemplu modelul unui neuron (cunoscut i sub denumirea de perceptron),
funcia de activare , reguli de nvare i cteva aplicaii practice.

2. Noiuni teoretice

Modelul unui neuron este prezentat n Fig. 1

x1

x2


Intrri Ieirea y




xp
Pragul

Fig. 1: Modelul unui neuron

Ieirea neuronului este:

p
y f w i xi
i 1

unde:
wi sunt numere reale numite ponderi ;
xi sunt intrri;
este o constant , numit prag;
f(.) este funcia de activare;

O pondere pozitiva reprezint o intrare excitatoare. O pondere negativ reprezint o intrare


inhibitorie . Ponderile wi sunt modificate n timpul procesului de antrenament n conformitate
cu regula de nvare.

3.1 Funcia de activare


Funcia de activare reprezint funcia de transfer intrare-ieire a neuronului. Ea combin
intrarea curent cu starea de activare existent n neuron a(t) pentru a genera o nou stare de
activare a(t+1).
a ( t 1) f (a ( t ), net ( t ))
i i i

8
Funcia de activare poate fi determinist sau stohastic (probabilistic).Vom prezenta n
cele ce urmeaz cteva exemple. Cteva exemple sunt:
funcia Heaviside (cunoscut n reelele neuronale i sub numele de hard-limitatoare):
unipolar (t) (treapt unitate) sau bipolar sgn(t);

1 dac net i ( )t 0
ai (t 1) sgn(net i (t)
1 dac net i ( )t 0
Intrarea net este dat de suma ponderat a intrrilor neuronului.

f(net)
1

-1

net
-2 -1 0 1 2

Fig.2 Funcia signum

f(net) f(net) f(net)

1
1 1
0
0
net net net
-1 -1
-1

Alte cteva exemple de funcii de activare


a) funcia bipolar cu prag ; b)semi liniar; c) sigmoid bipolar ;

Adesea funcia de activare trebuie s fie o funcie neliniar, nedescresctoare, astfel nct intrarea
net trebuie s depeasc o valoare numit prag pentru determinarea unei noi activri :

a (t 1) fi ( w ija (t ) i (t ))
i j j
Uzual funcia de activare este o funcie neliniar, numit logistic sau sigmoid, dat de
relaia :

9
1 dac net i (t) i

a i (t 1) net i (t) dac net i (t) i
0 n rest

Un exemplu de funcie sigmoid este :
1
a i ( t 1) .net i ( t )
1e

unde este un factor de proporionalitate. Avantajul acestei funcii este derivata sa, simplu de
determinat :
f ' ( x ) f ( x )[1 f ( x )]

Funcia tangent hiperbolic este i ea des utilizat deoarece intervalul su de rspuns


este [-1, +1].:
ex ex
tanh( x )
e x e x

i derivata sa se calculeaz relativ uor :

d tanh( x) 4
[sec h( x )]2 x
dx (e e x ) 2

Exist reele care utilizeaz funcii de activare probabilistice. Probabilitatea ca


neuronul s fie activ este :

1
p(a i (t ) 1) net i ( t )

1 e T

unde T este o constant, numit temperatur. Aceasta d panta curbei de probabilitate.

Probabilite
aa

Intrarea net

10
Fig.3 Fonction probabilistique dactivation
Fig.3 Funcie probabilistic de activare

Reelele cu funcii neliniare sunt uzual utilizate, performanele lor fiind superioare celor
cu funcii liniare sau semiliniare. Se pot utiliza i alte tipuri de funcii, unele cunoscute din teoria
aproximrii, care de la aplicaie la aplicaie conduc la performane superioare.
Dei majoritate funciilor de activare sunt monotone, exist i funcii nemonotone care
conduc la performane foarte bune n special n memoriile asociative.

f(x) f(x) f(x)

x x x

Fig.4 Funcii de activare nonmonotone

3.2 Reguli de nvare


Configurarea ponderilor unei reele neuronale, respectiv a unui neuron trebuie fcut
astfel nct aplicarea unui set de intrri s genereze un set de ieiri dorite (ieire dorit). Exist
diferite metode pentru determinarea ponderilor :
fixarea explicit, utiliynd informaie apriori referitoare la particularitile i eventual
restriciile la care este supus aplicaia considerat ;
determinarea ponderilor prin antrenare, genernd reelei modele de nvat i lsnd-o s-i
modifice ponderile conform unei reguli de nvare, n mod iterativ ;
O condiie esenial este ca algoritmul de antrenare s fie convergent, la un moment dat
ponderile s rmn constante, indiferent de intrrile aplicate.
Cteva dintre regulile uzuale vor fi prezentate n continuare :
Cteva dintre regulile uzuale vor fi prezentate n continuare :
1) Regula lui Hebb
Conform acestei reguli ponderea n pasul k1 se modific proporional cu produsul dintre
intrarea i ieirea neuronului :

w ij o i x j
unde:

11
wij este variaia vectorului pondere wij de la neuronul j ctre neuronul i din
pasul k n pasul (k+1), dat de relaia: w ij [k 1] w ij [k ] w ij ;
oi este ieirea neuronului i;
xj este intrarea n neuronul j ;
este o constant de care depinde viteza de nvare, (o,1);
Aceast regul de nvare este fr control (nesupravegheat) deoarece nu utilizeaz
rspunsul dorit.

2) Regula perceptronului :
Este o regul supervizat pentru c n calculul variaiei ponderii se utilizeaz rspunsul
dorit notat cu di :

w ij .[d i sgn( w T
i x )].x j

unde x este vectorul intrrilor n neuronul j x=[x1 x2 xj xn ]


3) Regula Delta (sau regula Widrow-Hoff, supervizat)
Denumirea de Delta este dat de diferena dintre ieirea curent pentru cazul prticular n
care f(.)1 i rspunsul dorit :
w ij .[d i o i )].x j

Regula este cunoscut i sub denumirea autorilor si regula Widrow i Hoff.

4) Regula Delta generalizat (supervizat)


Modificrile n ponderi se calculeaz cu :

w ij .[d i o i )].f ' (net i )x j

unde f este derivata funciei de activare, deci este valabil doar pentru funcii de activare
continue .
5) Regula de nvare a corelaiei
Este tot o variant a regulii lui Hebb:
w ij d i x j

6) Regul de nvare de tip competitiv


w mj (o j w mj )

Se modific doar ponderile neuronului m ctigtor, n rest ponderile rmn


nemodificate.
7) Regula outstar (a lui Grossberg)
w ij (d i w ij )

Exist bineneles multe alte reguli de nvare dezvoltate pentru a ameliora


performanele RN. Pe parcursul cursului vor fi prezentate i alte reguli de nvare.

4. Funciile Matlab utile pentru aceast lucrare practic sunt:


4.1)Funcii de iniializare:

12
randnc pentru a da valori iniiale aleatoare ponderilor i pragului, ntr-un
vector coloan ;
randnr pentru a da valori iniiale aleatoare ponderilor i pragului, ntr-un
vector linie ;
rands pentru a da valori iniiale aleatoare simetrice;

4.2) Funcii de activare:


hardlim funcia Heaviside unipolar;
hardlims funcia Heaviside bipolar;
logsig funcia logistic logaritmic;
purelin funcia liniar;
tansig funcia sigmoid de tip tangent;

4.3) Reguli de nvare:


learnh regula de nvare Hebb (1);
learnhd regula de nvare Hebb (2);
learnos regula de nvare Hebb (3);
learnp regula de nvare de tip perceptron;
learnwh regula Widrow-Hoff;

4.4) Funcii de afiare:


barrerr histograma valorilor pentru fiecare vector de ieire;
errsurf calculul suprafeei de eroare pentru perceptronul simplu cu o intrare i
un prag ;
hintonw reprezentarea simbolic a ponderilor;
hintonwb reprezentarea pragului;
ploterr reprezentarea simbolic a funciei eroare;
plotfa reprezentarea simbolic a valorilor dorite furnizate reelei ;
plotlr reprezentarea simbolic a funciei de nvare ;
plotpc reprezint linia de clasificare generat de perceptronul cu dou intrri;
plotpv reprezint vectorii de nvare pentru perceptronul cu dou intrri;

5. Desfurarea lucrrii
5.1 Neuronul cu o intrare
Se lanseaz programul MATLAB. Se selecteaz din menu-ul Help, Examples and
Demos, apoi din Toolboxes, Neural Networks.
Se ncarc Simple neuron and transfer functions.
5.1.1
Se alege funcia de activare cu F. Ieirea neuronului este dat de relaia:
a=f(w.p+b)
Reprezentai funcia de transfer selectat, n spaiul intrrii selectnd pragul b la zero.
Modificai pe rnd intrarea p, pragul b i ponderea conexiunii w. Observai schimbrile
asupra funciei de activare i ieirea curent. Ce concluzie putei trage
5.1.2 Repetai punctul 5.1.1 pentru toate funciile de activare prevzute n F.

5.2 Neuronul cu dou intrri


Se ncarc Neuron with vector input.

13
5.2.1 Selectai funcia de activare cu F. Modificai intrrile p(1) i p(2) mutnd
indicatoarele triunghiulare. In mod similar modificai w i b. Intrarea net i ieirea net se
vor modifica i ele. Observai i notai schimbrile.
5.2.2 Repetai punctul 5.2.1 pentru toate funciile de activare prevzute n F.

Lucrarea nr. 2
Limitele perceptronului
Separabilitatea liniar i separabiltatea nonlinear

1. Noiuni teoretice
Se poate demonstra c un neuron adaptabil (perceptronul) nu poate discrimina dect clase
liniar separabile.

Definiie
Clasele distincte se pot separa prin aa zise suprafee de decizie. Pentru determinarea
suprafeelor de decizie trebuie evaluat un set de funcii de discriminare. Dou clase se numesc
liniar separabile dac funciile de discriminare au forma urmtoare:
N
g i ( X) a o a
n
n . xn

unde a0, a1,an sunt constante.

Deci dou categorii sunt liniar separabile dac pot fi separate printr-o dreapt (Fig1).
Funciile logice SI, SAU i NU implic clasificri separabile printr-o dreapt.
x2

Categoria
C2

Categoria x1
C1

Dreapt de decizie
w1. x1+ w2 .x2-=0

Fig.1 Dou categorii liniar separabile

Cel mai cunoscut caz de categorii nonseparabile liniar este cel al funciei SAU
EXCLUSIV (XOR). Tabelul de adevr al funciei XOR este urmtorul :

x1 x2 XOR

14
(0,1) (1,1)

Categoria C2
0 0 0
0 1 1
Intrarea x2 1 0 1
1 1
Categoria C1 0

Categoria C2

(0,0) (1,0)
Intrarea x1

Regiunile de decizie ale funcieie SAU Exclusiv nu pot fi separate printr-o dreapt, ci
prin dou drepte , cum se poate vedea n Fig.2.

Fig.2 Spaiul modelelor de intrare pentru problema lui SAU EXCLUSIV

Limitele de nvare ale unei reele neuronale cu un singur strat de neuroni adaptivi nu
sunt date de algoritmul de nvare ci de topologia reelei, care permite divizarea spaiului de
intrare doar n dou semiplane.

Dac funcia SAU EXCLUSIV este adecvat codat se pot utiliza trei neuroni de intrare,
celui de-al treilea aplicdu-i-se la intrare produsul primelor dou. Problema de nonseparabilitate
liniar se transform ntr-una de separabilitate liniar, concretizat prin urmtorul tabel de
adevr :

x1 x2 x3 XOR
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0

Dup cum se poate observa cea de-a treia coloan se obine prin multiplicarea primelor
dou. Fie funcia de activare dat de relaia:

1 dac net i (t)


f (net(t))
0 dac net i (t)
Dac se aleg ponderile w1 1, w2 1, w3 -2 i pragul neuronului 0, problema lui XOR
devine o problem de separabilitate liniar. Deci un aspect important n practica RN este o
reprezentare adecvat a problemei de rezolvat.
O alt metod pentru rezolvarea unor probleme non-separabile liniar este utilizarea de
reele cu mai multe straturi. Pentru limite de decizie mai complexe sunt necesare mai multe
straturi. Pentru SAU EXCLUSIV sunt necesare dou straturi de neuroni. Fig.3 reprezint dou
variante pentru implementarea funciei .

15
x1 1 =1 =0
1
XOR
-2

x2
=0.3
1 =0.5
x1 0.6
1 XOR

1
1
x2 -0.2

=1.1
Fig.3 Dou reele pentru nvarea funciei logice XOR

Pentru limite de decizie mai complexe sunt necesare mai multe straturi de neuroni.
Reelele din Fig.3 se numesc cu dou straturi, pentru c au dou straturi de neuroni adaptabili.

O RN cu dou straturi este capabil s identifice orice fel de regiuni convexe, dac
numrul neuronilor din stratul ascuns este suficient i ponderile sunt adecvat adaptate.

Fig.4 Regiuni de decizie pentru o RN cu dou straturi de neuroni

Fig.4 prezint dou exemple


O RN cu dou straturi poate forma regiuni de decizie convexe obinute prin intersecia
semiplanelor de decizie ale neuronilor primului strat. Fiecare neuron al startului ascuns
genereaz un hiperplan de separare. Neuronii stratului de ieire genereaz regiuni de decizie mai
complicate, formate prin intersecia semiplanelor primului strat.

16
O RN cu trei straturi poate implementa regiuni de decizie arbitrare, complexitatea
fiind limitat de numrul de neuroni. S-a demonstrat c precizia unei clasificri neliniare
de ctre o RN cu trei straturi (2 ascunse ) poate fi fcut arbitrar de bun.

Deci cu alte cuvinte o RN cu trei straturi este capabil s proceseze orice transformare
neliniar continu cu o precizie arbitrar de bun.

Fig.5 Regiuni de decizie pentru o RN cu trei straturi de neuroni

2. Scopul lucrrii practice


Se prezint problema separabilitii i a nonseparabilitii liniare i generaliti despre
performanele RN cu un strat, dou respectiv trei straturi de neuroni.
Se studiaz performanele unui neuron cu ponderi adaptabile cu funcie de activare
hardlimitatoare, respectiv liniar.

3. Desfurarea lucrrii
Se lanseaz programul MATLAB. Se selecteaz din menu-ul Help, Examples and
Demos, apoi din Toolboxes, Neural Networks.

3.1 Limitele neuronului adaptabil


ncrcai programul Decision Bounderies .
Neuronul testat are dou intrri cu valori n intervalul (-3,3).Selectai vectorii de intrare
mutnd cu mouse-ul punctele albe, respectiv negre, pentru a alege diferite probleme. Mutai
dreapta de decizie a neuronului ncercnd s clasificai modelele de intrare astfel nc-t nici
unul dintre modele s nu aibe contur rou (caz n care nu poate fi clasificat nici ntr-una dintre
cele dou categorii posibile). Observai i notai valorile ponderilor i pragul. Ce concluzii
putei trage n legtur cu posibilitatea de clasificare a unui neuron

3.2 Neuronul cu ponderi adaptabile


ncrcai programul Perceptron learning rule .
3.2.1 Selectai cel mult cinci modele de intrare, trgnd cu mouse-ul punctul alb (negru)
n planul modelelor de intrare. Click Random pentru a iniializa aleator ponderile de intrare.
Click Learn pentru a aplica regula de nvare unui singur vector de intrare. Click Train
pentru a aplica regula de nvare pentru cinci vectori de intrare. Notai ponderile w i pragul
b obinute n urma antrenrii. Ce fel de probleme poate soluiona un neuron adaptabil
3.2.2 Repetai 3.1 definind mai multe probleme.
3.2.3 Alegei mai mult de cinci modele de intrare. Ce putei constata
3.2.4 Vizualizai cu NOTEPAD programul sursa pentru implementarea neuronului cu
ponderi adaptabile.

17
3.3 Selectai Classification with a 2 inputs perceptron .
Dai Start pentru a iniializa ponderile. Pe ecran se pot vedea cei patru vectori de
antrenament i coordonatele lor. Ponderile se vor adapta dac selectai Next pentru a clasifica
n dou categorii vectorii de intrare. Un al cincilea model cu care va fi confruntat neuronul va
fi i el clasificat ntr-una dintre cele dou categorii.

3.4 Selectai Outlier input vectors


Dai Start pentru a iniializa ponderile. Pe ecran se pot vedea cinci vectori de antrenament i
coordonatele lor. Unul dintre vectorii de intrare este departe de toi ceilali vectori.El se
numete "outlier". Ponderile se vor adapta dac selectai Next pentru a clasifica n dou
categorii vectorii de intrare. Observai c antrenarea dureaz mult mai mult dect n cazul
anterior. Odat antrenat neuronul , orice alt model planul modelelor de intrare va fi i el
clasificat ntr-una dintre cele dou categorii.

3.5 Selectai Normalised perceptron rule


Repetai paii din 4.4. Observai c neuronul se va antrena mult mai rapid, n doar 3 epoci
fa de 32 n cazul anterior. Pentru antrenarea neuronului n acest caz se folosete o regul de
nvare ce implic normalizarea vectorilor de intrare, deci este mai puin sensibil la
variaiile vectorilor de intrare.

3.6 Selectai Linearly nonseparable input vectors


Rulare programului v permite s constatai c un neuron adaptabil nu poate clasifica
modele de intrare nonseparabile liniar.

3.7 Selectai Pattern association showing error surface


Funcia de activare a neuronului utilizat este liniar. Ponderile se vor adapta astfel nct
soluia va corespunde minimului suprafeei de eroare. Vizualizai suprafaa de eroare n
spaiul modelelor de intrare.

3.8 Rulai programul Training a linear neuron


Prin acest program se antreneaz un neuron pentru a rspunde unui model de intrare cu
un anumit model de ieire. Vizualizai suprafaa de eroare. Cte rspunsuri posibile are
neuronul?

3.9 Selectai programul Linear fit to a nonlinear problem .


Programul v permite s gsii cea mai bun soluie pentru o problem neliniar, de
asociere a unui model de intrare cu un model de ieire.

3.10 Rulai programul "Undetermined problem" pentru a antrena un neuron liniar s


rspund pentru un model de intrare dat cu un model de ieire dorit. ntruct aceasta este o
problem neliniar, soluia obinut nu va fi unic. Testai cteva variante.

3.11 Selectai "Linearly depenendent problem" Vectorii aplicai la intrarea neuronului sunt
liniar dependeni. ncercai s dai o definiie pentru liniar dependen. Vectorii de ieire care
se doresc a se asocia nu sunt n aceeai relaie de liniar dependen ca i vectorii de intrare.
Problema dat spre rezolvare este una de tip neliniar, astfel nct eroarea la ieirea neuronului
liniar nu va fi nul.
Pentru toate subpunctele din "Desfurarea practic a lucrrii" notai modele de intarre,
modelele de ieire dorite, ponderile i pragul neuronului obinute ca soluie.

18
Lucrarea nr.3
1. Scopul lucrrii
Scopul lucrrii este :
testarea unor aplicaii implementabile cu neuroni adaptivi liniari ce utilizeaz regula
Widrow-Hoff: filtrarea adaptiv, aproximarea de funcie, identificarea de sistem;
studiul diferitelor variante ale algoritmului retropropagrii erorii i a influenei
parametrilor asupra convergenei algoritmului ;
testarea unor aplicaii ce utilizeaz RN multistrat antrenate cu algoritmul retropropagrii
erorii: filtrarea adaptiv, controlul unui sistem, identificarea de sistem neliniar;

2. Noiuni teoretice. Reele multistrat

Incapacitatea reelelor cu un strat adaptiv de a transforma modele arbitrare de intrare n


modele arbitrare de ieire, a fost depait utiliznd un strat intermediar, numit ascuns ntre intrare
si ieire.
n forma lor general, reelele neuronale multistrat, (MLP multilayer perceptrons) Fig.1.
au un strat de intrare, un numr de straturi ascunse i un strat de ieire. Cnd informaia se
propag prin reea de la intrare spre ieire aceste reele se numesc de tip "spre nainte" (feed-
forward).

x1


ui
xi
wji uj



xN wkj uk

Strat de ieire

Strat de intrare
Strat ascuns
Fig.1 Arhitectura unei reele neuronale multistrat

O funcie de activare liniar , cel mult semiliniar, pentru neuronii stratului de ieire este
suficient pentru majoritatea aplicaiilor:

0, pentru net(t)
net(t)

ai (t 1) f net , pentru net (1)
2
1, pentru net(t)

19
Literatura demonstreaz necesitatea ca funcia de activare a unitilor ascunse s fie
cel puin semiliniar pentru a se depi performantele reelelor cu un strat. Uzual ea este o
funcie aa zis sigmoid:
1
0 pk
( w kj .opj ( t ) k ) (2)
1e j

unde este un factor de proporionalitate.


Avantajul unei astfel de funcii este calculul simplu al derivatei:

f ' ( x ) f ( x )[1 f ( x )] (3)


Adesea se utilizeaz funcia tangent hiperbolic, deoarece are valori n intervalul
[-1, +1]:

e x e x
tanh( x ) (4)
e x e x

Derivata ei este:
d tanh( x ) 4
[sec h( x )]2 x (5)
dx (e e x ) 2

Pentru antrenarea reelei MLP se utilizeaz uzual algoritmul cu "propagare invers a


erorii".

Algoritmul propagrii inverse a erorii (back-propagation)


Algoritmul a fost fundamentat independent de mai muli cercettori din domeniul
analizei numerice (Bryson & Ho, 1969) i al statisticii (Werbos n 1974) pn n cel al RN
(Parker 1982 , Le Cun 1986, Rumelhart, Hinton & Wiliam 1986).. Algoritmul este o nvare cu
control n dou faze i este cunoscut i sub denumirea de "regula delta generalizat", denumire
introdus n "Parallel Distributed Processing" de grupul creat de Rumelhart i Mc Clelland .

Prima etap
n prima faza, modelul p de intrare se propag prin reea din strat in strat, pn la ieire.
Fie notaiile:
N input : numrul intrrilor n RN (care d dimensiunea vectorilor de intrare);
N h : numrul unitilor stratului ascuns;
N output : numrul unitilor stratului de ieire;
Intrarea net n fiecare neuron ascuns este pentru fiecare model de intrare p:

Ninput
net pj w
i 1
ji .x i j (6)

Ieirea fiecrui neuron ascuns este o funcie de suma ponderat a intrrilor i pragul :

N input
oj f( w
i 1
ji x i j) j=1,.., N h (7)

20
n cazul unei reele neuronale cu un singur strat ascuns, ieirea o k a neuronului k de ieire se
exprim n funcie de informaia primit din stratul ascuns cu relaia:

Nh Nh
ok f (
j1
w kj o j k ) ou net k w
j1
ij o j k k=1,.., N output (8)

unde vectorul w k ( w k1 w k 2 ...w kj ) este vectorul ponderilor conexiunilor neuronului k de


ieire. Funcia global realizat de RN la ieirea neuronului k este deci:

Nh N input
ok f ( wk 1
kj f ( w
i 1
ji x i j ) k ) k=1,.., N output (9)

Pentru neuronii unui strat funcia de transfer este n general aceeai.


Ieirea curent ok se compar cu intrarea de control tpk, genernd, n unitile de iesire, o
eroare pk:

pk ( t pk o pk ).f ' (net pk ) (10)

unde f' este derivata funciei de activare a neuronului.

Etapa a doua
n faza a doua, erorile se propag de la ieire spre intrare, din strat n strat determinnd
schimbarea ponderilor conexiunilor n sensul minimizrii erorii la nivelul fiecrui neuron n
parte. Regula de nvare pentru conexiunile dintre neuronii de ieire i cei ascuni este:

p w kj . pk .o pj (11)

unde este constanta de nvare care poate lua valori n intervalul (0,1).
Pentru unitile ascunse, indexate dup j, erorile pj se calculeaz cu ajutorul erorilor de la
neuronii de ieire pk cu relaia:

pj ( pk . w kj ). f `( net pj )
(12)
k

Apoi se modific ponderile conexiunilor dintre neuronii ascuni i intrri cu o regul de


nvare (care poate fi aceeai ca cea dat de relaia 11):

p w ji . j .o pi (13)

Dac n RN exist mai multe straturi ascunse eroarea se evalueaz pentru fiecare strat cu
relaia (12) n care erorile reprezint erorile stratului ascuns superior i apoi se determin noile
ponderi dintre stratul anterior i cel succesiv (ntr-o convenie de notare a straturilor de la intrare
spre ieire). n reea pot exista i ponderi fixe. Dac exista uniti de ieire i n straturile ascunse,
acestea nsumeaz dou tipuri de erori: erori rezultate din compararea ieirii cu rspunsul dorit i
erori obinute prin propagare de la unitile de ieire spre unitile cu care sunt cuplate.

Observaie

21
Aceast procedur minimizeaz eroarea ptratic medie n fiecare iteraie ( dac vitez de
nvare este adecvat aleas). Rezultatele practice arat c RN converge n general spre un
minim local (care poate fi i global), care reprezint n unele cazuri o soluie acceptabil. n
literatura de specialitate sunt prezentate mai multe metode pentru evitarea minimelor locale,
aspect care va fi abordat ulterior.

Se poate demonstra c algoritmul implementeaz un gradient descendent al


erorii totale n spaiul ponderilor, adic:

dE
w ( t 1) w ( t ) . (14)
dw

unde dE/dw este gradientul aleatoriu necunoscut al erorii totale dintre modelele de intrare i
modele de ieire dorite. White a demonstrat c relaia (14) este o aproximare stohastic.

Demonstraie
Se demonstreaz c o RN antrenat cu regul de nvare dat de relaia (11)
minimizeaz eroarea ptratic medie pentru toate modele de intrare dac funcia de activare a
neuronilor este sigmoid:

Fie funcia de activare a neuronilor o funcie sigmoid dat de relaia:

1
f (net p ) o p net p (15)
1e
i
net p k w
j
kjo pj k

net p j w
i
ji o pi j

Fie eroarea ptratic medie a RN pentru un model p :

1
Ep
2
(d
k
pk o pk ) 2 (16)

Eroarea total pentru toate modelele p este:

E total E
p
p
(17)

Trebuie s se demonstreze de fapt c pentru fiecare model p:

E p
pk .o pj (18)
w kj

-------------------------------------------------------------------------------------------------

Se tie c pentru algoritmul BKP variaia ponderilor este dat de relaia (11):

22
p w kj p k o pj

Trebuie deci s se demonstreze c:

E p
p w kj (19)
w kj

Utiliznd metoda derivrii n lan obinem:

E p E p net p k E p E p o pk
i
w kj net p k w kj net p k o pk net p k
dar
net p k
o pj
w kj

o p k
netp k

o pk 1 o pk f ' netp k

Ep
o pk

d pk o pk

Dac se nlocuiete aceast ultim relaie n relaia (19) se obine chiar relaia (11):


p w kj f ' net p k d pk o ok o pj p k o pj q.e.d.
-------------------------------------------------------------------------------------------------

Pentru unitile ascunse trebuie demonstrat c variaia ponderilor :


p w ji pj o pi
p k w kj
'

f net p o pi
j
k

determin un gradient descendent al erorilor


E p
p w ji (20)
w ji
Pentru unitile ascunse:
E p E p net p j

w ji net pj w ji

E p E p o pj

net pj o pj net pj

23
Ep Ep net pk Ep
o pj
net
k pk o pj
net
k pk
w kj

net p j
o pi
w ji

o pj
net p j

f ' net p j
Se tie c:

p j
pk w kj
'

f net p
j

k
Ep
Dac se nlocuiete w n relaia (20) se obine chiar relaia (13), ceea ce trebuia
ji

demonstrat.

Observaii
Algoritmul presupune o etap de antrenament, una de testare i apoi cea de utilizare.
Crearea bazei de date, mprirea acesteia n mod adecvat influeneaz major succesul sau eecul
funcionrii unei RN. n timpul antrenamentului, fiecare pereche p de model de intrare-model de
control, este prezentat repetat. n timpul testrii se aplic doar modelele de intrare,
verificndu-se statistic corectitudinea funcionarii. n cazul n care performanta este acceptabila
reeaua poate fi utilizat.
Dezavantajul metodei const n necesitatea unei prezentri repetate a modelelor n timpul
antrenamentului (deci la un timp ndelungat afectat antrenamentului).

Exemplu

Fie o RN cu trei neuroni de intrare I=3, doi neuroni ascuni L=2 i trei neuroni de
ieire J=3. Matricea interconexiunilor dintre neuronii de intrare i cei ascuni W de
ordinul L I=2 3 este:

0.5 0.3 0.1


w11 w 21 w31
W (21)

w12 w 22 w32 0.3 0.2 0.1



Matricea interconexiunilor dintre neuronii ascuni i cei de ieire Z, de ordinul J L=3
2 este:
z 11 z 12 0.1 0.2

Z z 21 z 22 0.3 0.4 (22)
z 31 z 32 0.5 0.6

24
Scopul este ca RN s nvee s asocieze un set de modele de ieire cu un set de modele de
intrare.
1 0.1
Fie de exemplu intrarea x 2 care trebuie s genereze ieirea dorit t 0.3 .
3 0.7
Se consider pentru simplitate viteza de nvare unitar i pentru toi neuronii o
aceeai funcie de activare, sigmoid.
ntr-o prim etap informaia se transmite de la intrare spre ieire. Se calculeaz intrarea net
n neuronii ascuni b cu relaia:

0.5 0.6 0.3 1.4


b W .x (24)
0.3 0.4 0.3 1.0

Aplicnd funcia de activare sigmoid, ieirea neuronilor ascuni va fi:

1 0.8022
h f(b)= b
(25)
1 e 0.7311

Aceast informaie se transmite neuronilor stratului de ieire, a cror activare devine:

0.1 0.8022 0.2 0.7311 0.2264


a Z h 0.3 0.8022 0.4 0.7311 0.5331 (26)
0.5 0.8022 0.6 0.7311 0.8397

Aplicndu-se i n aceti neuroni funcia de activare sigmoid se obine vectorul ieirilor:

0.5564
o f (a ) 0.6302 (27)
0.6984

Astfel a fost generat un prim rspuns al reelei. Se calculeaz apoi diferena dintre rspunsul
dorit t i ieirea curent a neuronilor de ieire:
0.4564
e t o 0.3302 (28)
0.0016
Pentru calculul semnalelor de eroare cu relaia (10) se determin derivata funciei de
activare a neuronilor de ieire:
0.5564 0.4436 0.2468
f (a ) o 1 o 0.6302 0.3698 0.2330 (29)
0.6984 0.3016 0.2106

Se evalueaz erorile stratului de ieire cu relaia (10):


0.1126
iesire f ' (a) e o (1 o ) ( t 0) 0.0770 (30)
0.0003

25
Acum poate ncepe etapa a doua, de nvare.Erorile se transmit napoi spre neuronii
straturilor anterioare permind modificarea ponderilor n conformitate cu regula de nvare.
Se calculeaz ca o etap intermediar o matrice R ai crei termeni rj,l se obin prin
multiplicarea semnalului de eroare a neuronului de ieire j cu ponderea conexiunii de la
neuronul ascuns l la neuronul de ieire j, cu relaia: rj, l j z j, l (s-a notat cu j
iesire iesire

componenta j a vectorului ieire )


R Z 1 T iesire Z iesire iesire

.1 .2 0.1126 0.1126 0.0113 0.0225



.3 .4
0.0770
0.0770
0.0231 0.0308
(31)

.5 .6

0.0003 0.0003 0.0002 0.0002

(1T este un vector linie cu elemente de valoare 1)


Erorile fiind propagate se modific ponderile conexiunilor dintre neuronii ascuni i
cei de ieire Z cu relaia (11):
Z[t 1] Z Z Z iesire h T
unde:
0.1126 0.0904 0.0823
iesire h T
0.0770 0.8022 0.7311 0.0617 0.0563
0.0003 0.0003 0.0002

Rezult:
.1 .2 0.0904 0.0823 0.0096 0.1177

Z[t 1] .3 .4 0.0617 0.0563 0.2383 0.3437 (32)
.5 .6 0.0003 0.0002 0.5003 0.6002

Se determin erorile neuronilor ascuni. Notm cu f suma ponderat a erorilor


neuronilor de ieire cu care este cuplat fiecare dintre cei doi neuroni ascuni. Se obine:

T T .0 0342
f R 1 Z iesire
.0 0531
Cu relaia (12) se calculeaz:

26
.0 0054
ascuns f'(b) f h 1 h Z iesire
T

.0 0104
Se modific ponderile dintre intrri i neuronii ascuni cu relaia (13):

0.5 0.3 0.1 0.0 54


W[t+1]=W+W=W+ascunsxT=
1 2 3
0.3 0.2 0.1 0.0104

.5 .3 .1 0.0054 0.0108 0.0163 .4946 .2892 .0837
.3 (33)
.2 .1 0.0104 0.0209 0.0313 .2896 .1791 .0687

Viteza de nvare are o importanta deosebit n evoluia procesrii. O viteza de


nvare mare, asigura o convergen rapid, dar poate determina oscilaii ale reelei. O vitez
mic are ca efect mrirea timpului de procesare i poate duce la mpotmolirea n minime
locale cu o probabilitate mai mare.
Prin introducerea unei relaii ntre schimbarea curent a ponderii i modificarea ei
anterioar , se pot realiza pai mai mari (convergen mai rapid ), fr a utiliza viteze mari de
nvare:
p w ij ( n 1) . pj . o pi . p w ij ( n)
unde: este o constant, numit momentum, ce determin efectul ponderilor anterioare asupra
ponderii curente.
Aceasta relaie practic realizeaz o filtrare a variaiilor mari ale erorilor n spaiul pondere.

3. Desfurarea lucrrii
Se lanseaz programul MATLAB. Se selecteaz din menu-ul Help, Examples and
Demos, apoi din Toolboxes, Neural Networks.

2.1 Selectai Adaptive linear prediction. Aplicaia realizeaz predicia unui semnal pe
baza ultimelor cinci eantioane, utiliznd regula Widrow Hoff i o vitez de nvare
=0.1.Se vizualizeaz semnalul de intrare, semnalul de ieire curent marcat cu
albastru i diferena dintre ele, eroarea. Se observ c dei semnalul de intrare are
dou frecvena diferite, filtrul se adapteaz la schimbrile din semnal pentru a
prezice cea mai bun estimare (n medie ptratic a semnalului de intrare).

27
2.2 Selectai Linear prediction. Aplicaia realizeaz o aproximare de funcie cu
ajutorul unui neuron linear, din ultimele cinci eantioane ale semnalului de intrare.
Funcia aproximat este sin(4..t).Vizualizai semnalul de intrare, de ieire i
eroarea.

2.3 Selectai Linear system identification. Aplicaia implementat este de identificare


de sistem, utiliznd un neuroni adaptivi liniari. Sistemul necunoscut genereaz
sin((sint).10t). Intrrile n RN. Sunt ultimele trei eantioane ale semnalului de
intrare. Rspunsul dorit este ieirea sistemului necunoscut. Vizualizai intrarea,
ieirea i eroarea RN. Ce concluzie putei trage?

2.4 ncrcai programul Too large a learning rate .


Cu ajutorul acestui program se poate constata c n cazul n care viteza de nvare este
prea mare reeaua oscileaz i nu poate gsi soluia optim.

2.5 Rulai programul Generalization . Modificai numrul neuronilor din stratul ascuns
i gradul de dificultate al funciei aproximate de RN. Observai i notai diferitele
situaii studiate i performanele obinute de RN.

2.6 Selectai Steepest descent backpropagation . Reeaua din figur implementeaz o


aproximare de funcie. Exist trei posibiliti de selectare a parametrilor reelei ce se
pot antrena cu algoritmul BKP. Selectai cu mouse-ul punctul de plecare al antrenrii
pe graful curbelor de nivel ale erorii.(Curbele de nivel sunt desenate pe scara
nuanelor de gri, negrul corespunznd minimului. Punctul marcat cu rou reprezint
soluia optim. Alegei diferite puncte de plecare i observai comportarea reelei n
preajma minimelor locale. Deschidei fiierul nnd12sd1 pentru a observa modul de
implementare, intrarea i rspunsul dorit.

2.7 ncrcai programul Momentum backpropagation . Deschidei fiierul nnd12mo


pentru a observa modul de implementare, intrarea i rspunsul dorit. Testai influena
vitezei de nvare i a momentumului asupra modului de funcionare al RN.Pentru
aceasta alegei viteza de nvare 0,1; 0,5; 0,9; 1; 4; 10. Pentru fiecare dintre aceste
valori alegei constanta momentum de diferite valori 0,1, 0,5; 0,9;1.

2.8 Selectai Conjugate gradient backpropagation .

Algoritmul conjugate gradient backpropagation este o variant a algoritmului BKP


care utilizeaz o vitez de nvare variabil pentru a mri convergena.
w ( t 1) w ( t ) ( t ).p( t )
unde p(t) este direcia de variaie ponderii
p(0) -g(0)
unde g(0) este gradientul erorii n momentul t=0
p( t 1) g ( t 1) ( t ).p( t )
Exist mai multe metode de obinere a valorii lui
1. Formula Fletcher-Reeves
g T ( t 1).g ( t 1)
( t )
g T ( t ).g ( t )

28
2. Formula Patak Ribiere
g T ( t 1).[g( t 1) g ( t )
( t )
g T ( t ).g ( t )

Selectai cu mouse-ul punctul de plecare al antrenrii pe graful curbelor de nivel ale


erorii. Punctul marcat cu rou reprezint soluia optim. Alegei diferite puncte de plecare
i observai comportarea reelei. Care este performana reelei comparativ cu algoritmul
standard BKP?

2.9 Selectai Adaptive linear system identification. Aplicaia realizeaz predicia unui
semnal pe baza ultimelor dou eantioane, utiliznd regula retropropagrii erorii i o
vitez de nvare =0.5.

2.10 ncrcai programul Model reference control . O reea neuronal antrenat


BKP realizeaz controlul unui pendul inversat. Pendulul inversat este un pendul
vertical prins ntr-o articulaie pe un crucior mobil. Pendulul tinde s cad la
orizontal datorit forei gravitaionale. Un motor controlat de RN deplaseaz
cruciorul pentru a menine n poziie vertical pendulul.

2.11 ncrcai programul Nonlinear control system identification . O reea


neuronal este antrenat BKP pentru a realiza identificarea unui sistem neliniar
necunoscut, n acest caz un pendul inversat.

Lucrarea numrul 4

1.Scopul lucrrii
Scopul lucrrii este studiul reelei Hopfield:
Implementarea unei reele care s memoreze anumite modele ;
Verificarea posibilitii de apel din memorie a unui anumit model memorat atunci cnd la
intrare se aplic modelul eronat ;
Studiul memorrii de modele nedorite

2. Reeaua Hopfield . Noiuni teoretice

Reeaua Hopfield este o reea neuronal cu reacie, n care starea fiecrui


neuron la un moment dat depinde i de ieirile tuturor celorlali neuroni la momentul
anterior.
Structura ei este prezentat n Fig.1. Are un singur strat de neuroni, complet
interconectai, adic fiecare neuron este conectat cu toi ceilali. Ieirile neuronilor sunt
binare 0 i 1, sau bipolare -1 i +1 . Matricea ponderilor este simetric
wij=wji.Autoreacia est nul wii=0 (fenomen observat de alfel i n neuronii biologici).
Aceasta mbuntete performanele obinute cu modele bipolare.

29
w12 w1i w1N

x1 x2 xi xN

w2i wiN
w2m

Fig.1 Reeaua neuronal Hopfield

Exist dou modaliti de implementare a unei reele neuronale Hopfield determinate


de aplicaia n care este utilizat: ca sistem discret pentru o memorie asociativ i ca
sistem continuu pentru o problem de optimizare.

1.1 Reeaua neuronal Hopfield ca memorie asociativ


n funcionarea unei reele neuronale ca memorie asociativ exist dou faze:
de nmagazinare a informaiilor;
de regsire a informaiei dorite din memorie (recall sau retrieval);

1. nmagazinarea informaiilor Fie un set de p modele bipolare X1, X2, X3, XP, de
dimensiune N, pe care dorim s le memorm.Aceste modele se numesc i modele
prototip sau modele fundamentale. Ponderile interconexiunilor se determin cu o
generalizare a regulii lui Hebb, regula bipolar hebbian (outer product rule):

p
w ij X ki X kj (1)
k 1

innd cont i de faptul c autoreacia trebuie s fie nul w ii=0, relaia (5.1) se
poate scrie sub form matriceal:
P
W X Tk .X k p.I (2)
k 1

unde :
I este matricea unitate de dimensiune N x N ;
p este numrul modelelor memorate;
Xk este model prototip Xk =[ X k1 X k2 X k3 X kN];
termenul p.I a fost introdus pentru anularea ponderilor de autoreacie;

De exemplu pentru a coda modelul bipolar [1,-1] ntr-o reea cu doi neuroni se obine
matricea W1 :

30
1 01 0 1w1 2
.1 (3)

1 01 01 w21
Pentru a simplifica formalismul matematic al regsirii informaiei se poate utiliza i un
1
termen de proporionalitate n relaia (5.2):
N
1 P T p.I
W
N k 1
X k .X k
N
(4)

Regsirea informaiei dorite din memorie


Un model de intrare bipolar x =[ x1 x2 x3 xN] , N dimensional, este impus
ca stare a RN Hopfield . Tipic el este o versiune incomplet sau afectat de zgomot al

31
unui model memorat. Actualizarea strii neuronilor este asincron, un singur neuron
i schimb starea la un moment dat n conformitate cu funcia de activare. Intrarea
net a acestui neuron depinde de ieirile tuturor celorlali:
N
neti [k + 1] = w ji .x j [k ] Ii (5)
j1

unde:
xj este starea de activare a neuronului j;
Ii este o intrare constant, numit curent de polarizare ;
N este numrul neuronilor reelei ;
Se aplic apoi funcia de activare care poate fi o funcie bipolar cu prag , dat de
relaia :

1 dac neti[k] i

f (neti[k 1]) f (neti[k]) dac neti[k] i ( 6)
0 dac net [k]
i i

sau funcia signum:


f (net i [k 1] sign (net i [k ])) (7
)

La o nou iteraie un alt neuron i schimb starea n conformitate cu regula de


actualizare.Se determin pentru acesta intrarea net cu relaia (5) i apoi noua stare cu
relaia (6). n final RN ajunge ntr-o stare invariant n timp care satisface condiia de
stabilitate, adic ntr-unul dintre atractori.

Observaii
1.
Fie X= [1,1] aplicat la intrarea reelei anterior introduse (care a memorat modelul
[1 1] ).
Printr-o actualizare asincron un singur neuron i schimb starea. Fie acesta
neuronul unu. Doar prima coloan a matricii pondere este implicat (ponderile
neuronului unu ctre neuronul doi). Starea neuronului 2 rmne 1.

0 1
X.W1 1 1. 1 1 (8)

1 0
Aplicnd din nou reelei vectorul [-1,1] prin W i actualiznd neuronul 2 se obine
acelai vector
[-1,1] . Dei s-a dorit memorarea doar a modelului [1, -1] implicit, prin codarea
bipolar hebbian a fost memorat i modelul complementar [-1,1].

32
2. Actualizarea asincron permite interpretarea informaiei procesate de reeaua
Hopfield ca un proces aleator. Pentru actualizarea neuronilor uneori se stabilete o
schem de actualizare astfel nct n medie fiecare neuron s fie actualizat de acelai
numr de ori. Actualizarea asincron dup o lege probabilistic permite
caracterizarea statistic a reelei Hopfield (ancorarea ei n fizica statistic). Evoluia
strilor reelei nu este n mod unic definit de o anume stare iniial, n spaiul
{0,1}m, ea depinde de schema de actualizare.

3. Contribuia cea mai important a lui Hopfield este introducerea unei funcii de
energie n analiza comportamentului RN. Aceasta permite abordarea RN ntr-o
manier similar sistemelor fizice, marcndu-le evoluia. Fie funcia ce
caracterizeaz reeaua Hopfield :
n n n
E ( x ) w ij .x i .x j 2 i .x i (9)
i 1 j1 i 1

Se poate demonstra c de fiecare dat cnd un neuron i schimb starea, E(x)


descrete :
n n n n n n
E E( x n ) E ( x v ) w ij .x in .x nj 2 i .x in w ij .x iv .x vj 2 i .x iv
i 1 j1 i 1 i 1 j1 i 1
n n
2.x nk . w
j1, j k
ij .x nj 2. k .x nk 2.x kv . w
j1, j k
ij .x vj 2. k .x kv

(10)
n v
unde x ( x ) este starea nou (veche) a neuronului k, singurul neuron care i
k k

schimb starea n iteraia curent. Toi ceilai neuroni ik rmn n aceeai stare x nk
= x kv astfel nct vor exista termeni care se anuleaz.
Exist dou situaii posibile:
1.cnd starea neuronului k a fost x kv 1 i devine x nk 1
n n

Pentru c w ij .x j w
n
ij .x vj se poate rescrie relaia (10) :
j1, j k j1, j k
n
E 2( x kv x nk ).( w
j1, j k
ij .x vj k ) (11)

Semnul celui de-al doilea factor al produsului din relaia (11) este plus pentru c
n

starea neuronului k devine +1 dac este ndeplinit condiia ( w


j1, j k
ij .x vj k ) 0 .

Diferena ( x x ) 0 este negativ, deci E este i ea negativ.


v
k
n
k

2. cnd starea neuronului k a fost quand x kv 1 i devine x nk 1 .


Semnul celui de-al doilea factor al produsului din relaia (11) este minus pentru c
n

starea neuronului k devine 1 dac este ndeplinit condiia ( w


j1, j k
ij .x vj k ) 0 .

Diferena ( x x ) 0 este pozitiv, deci E este negativ.


v
k
n
k

Observaii
1. Aplicaiile posibile ale reelei Hopfield sunt de memorie asociativ i de optimizare.

33
2. Memoriile asociative implementeaz o transformare ntre o mulime de modele
aparinnd spaiului de intrare i o mulime de modele aparinnd spaiului de ieire.
Ori de cte ori la intrare se aplic un model particular , la ieire se obine modelul
asociat acestuia.
Un caz particular este autoasocierea, cnd un model este asociat cu el nsui. Scopul
procesrii este completarea de model sau eliminarea zgomotului, asociindu-se modelul de
intrare , incomplet, sau afectat de zgomot cu el nsui la ieire. Reeaua Hopfield est o RN
auto-asociativ .
Capacitatea de memorare cea mai mare dintre toate memoriile asociative cunoscute.
Capacitatea de memorare este numrul modelelor distincte pe care sistemul le poate nva cu
precizie i rememora, deci coda i decoda.

N
C (12)
log 2 N

Pentru determinarea capacitii de memorare se poate folosi i o relaie empiric


aproximativ C=0,15.m.
3. Optimizarea este o tehnic pentru rezolvarea unor probleme ce implic minimizarea
unei unei funcii de cost asociate n raport cu nite constrngeri impuse . Funcia de cost
este funcia de energie asociat RN. Astfel nct pentru reeua Hopfield optimizarea este
o aplicaie direct. Prin minimizare RN converge ctre o stare stabil producnd o
soluie optim (sau lng optim).
O problem celebr de optimizare este problema comis voiajorului. Acesta
trebuie s viziteze N orae , trecnd o singur dat prin fiecare ora. Comis voiajorul
cunoate distana dintre oraele pe care trebuie s le viziteze, problema este de a
determina traseul optim (n ce ordine s treac prin fiecare ora) , astfel nct
distana pe care o parcurge s fie minim.
Aceasta este o problem ce necesit explorarea a unui numr de N!
=1x2x3x.xN variante distincte. Numrul este relativ comod pentru valori mici ale
lui N , dar crete exponenial cu valoarea lui N. se spune c este o problem de tip
NP- complet .

Exemplul 1
Construii o reea Hopfield care s memoreze modelele X 1=[1 -1] i X2=[-1 1], printr-o
codare bipolar hebbian.
a) Determinai matricea ponderilor. De ce este suficient memorarea unui singur model?
b) Determinai strile succesive ale reelei pn n starea final pentru toate intrrile posibile.
Ce observai?
c) Se tie c pentru cazul particular al pragurilor i ponderilor nule funcia de energie a reelei
1
este : E X.W .X T . Determinai evoluia reelei pentru intrrile de la punctul b. Ce
2
putei spune despre stabilitatea reelei ?

Soluie

34
a) Reeaua are 2 neuroni. Este suficient memorarea unui singur model pentru c un artefact
al codrii bipolare hebbiene este memorarea modelelor complementare. Matricea ponderilor
este :

1 01 0 1w1 2
.1 (13)

1 01 01 w21
b)Intrrile posibile sunt : X=[1 1], [-1 -1], [1 -1] et [-1 1].
Fie strarea iniial X1= [1,1]. Fie neuronul 1 cel care ii schimb starea. Starea
neuronului 2 rmne neschimbat.Noua stare va fi :

35
0 1
X1.W1 1 1. 1 1 (14)

1 0
Se aplic funcia de activare, funcia signum. Stare reelei rmne aceeai [-1,1]. Dup
actualizarea neuronului 2 starea reelei va fi tot [-1,1], care este un punct de echilibru.
Dac se aplic la intrare X2 = [-1 -1] se obine prin actualizarea primului neuron:

0 1
X2.W1 1 1. 1 1 (15)

1 0
[sign (1) 1] [1 1] (16)

Prin actualizarea neuronului 2:

0 1
1 1. 1 1 (17)

1 0
[1 sign ( 1)] [1 1] (18)

Reeaua va ajunge ntr-un alt punct de echilibru [1 -1]. Pentru celelalte stri posibile,
care reprezint modelele memorate [1 -1] i [-1 1], reeaua nu-i va schimba starea . n
concluzie, indiferent de starea iniial RN, va evolua nspre unul dintre punctele sale de
echilibru
c) Pentru starea iniial X1= [1 1] energia RN este:

36
1 0 1 1 1
E1i[1 ]. . [1] (2)1 (19)

2 1 01 2 1 2
A doua stare , care este i cea final are energia urmtoare:

37
1 01 1 1
E1f[1 ]. . [1 ] (2)1 (20)

2 1 01 2 1 2
Pentru starea iniial X2= [-1 -1] energia reelei este:

38
1 01 1 1
E2i[1 ]. . [1 ] (2)1 (21)

2 1 01 2 1 2
Starea final are energia :

39
1 0 1 1 1
E2f[1 ]. . [1 ] (2)1 (22)

2 1 0 1 2 1 2
n mod similar se poate calcula energia i pentru celelalte intrri care sunt puncte de
echilibru ale reelei. Pentru aceste cazuri energia rmne la o aceeai valoare 1. Deci n toate
cazurile energia are o evoluie descresctoare astfel nct satisface condiia de stabilitate

Exemplul 2
Construii o reea Hopfield cu patru neuroni care s memoreze modelul X 1=[1 1 1 -1],
printr-o codare bipolar hebbian. Fie funcia de activare funcia signum, pragurile i curenii
de polarizare nuli.
a) Determinai matricea ponderilor.
b) Fie starea iniial una dintre urmtoarele:
X0=[1 1 1 1] ;
X0=[1 1 -1 -1] ;
X0=[1 -1 1 -1] ;
X0=[-1 1 1 -1] ;
Actualizai neuronii n ordinea 1, 2, 3, et 4. Determinai strile succesive ale reelei pn n
starea final pentru toate intrrile posibile .
c) Se tie c pentru cazul particular al pragurilor i ponderilor nule funcia de energie a reelei
1
este : E X.W .X T . Determinai evoluia reelei pentru intrrile de la punctul b. Ce
2
putei spune despre stabilitatea reelei ?

40
Soluie
Structura reelei este cea din Fig.2. Matricea ponderilor este dat de relaia:
W X 1T .X 1 U (23)

41
1 1 0 0 1111 1 0 0
1 0 1 0 1111 0 1 0
W .1 1 1.
1 0 1 0 1111 0 1 0

1 0 0 1 1111 0 0 1
(24)

1110
1101
W
1011

0111
42
z-1

z-1

z-1

z-1

Fig.2 Structura reelei din exemplul 2

b) Fie starea iniial: X=[1 1 1 1]. n mod secvenial, conform schemei de actualizare cte un
neuron i actualizeaz starea:

0 1 1 1
1 0 1 1
X0.W 1 1 1 .1 1 1 1 1 (25)
1 1 0 1

1 1 1 0
Noua stare a neuronului 1 este f (1) 1 1 1 1 1 1 1 . (26)

ntr-un mod similar se actualizeaz neuronul 2, 1 f (1) 1 1 , apoi neuronul 3 , a crui stare
devine 1 1 f (1) 1 . Neuronii 2 i 3 rmn n aceeai stare 1. Doar neuronul 4 i schimb
starea :

43
0 1 1 1
1 0 1 1
1 1 1 .1 1 1 1 1 (27)
1 1 0 1

1 1 1 0
Stare final va fi 1 1 1 f (1 ) 1 1 1 1 , care este un atractor al reelei .
Dac starea iniial este X=[1 -1 -1 1], dup actualizarea primului neuron ea devine:

0 1 1 1
1 0 1 1
X.W 1 1 1 .1 3 1 1 1 (28)
1 1 0 1

1 1 1 0
sgn(3) 1 1 1 1 1 1 1 (29)

Se actualizeaz al doilea neuron:

0 1 1 1
1 0 1 1
X.W 1 1 1 .1 1 3 1 1 (30)
1 1 0 1

1 1 1 0
1 sgn ( 3) 1 1 1 1 1 1 (31)

Dup actualizarea celui de-al patrulea neuron starea reelei devine:

44
0 1 1 1
1 0 1 1
1 1 1 1. 1 1 3 1 (32)
1 1 0 1

1 1 1 0
1 1 sgn (3) 1 1 1 1 1 (33)

Starea final va fi:

0 1 1 1
1 0 1 1
1 1 1 1. 1 1 1 3 (34)
1 1 0 1

1 1 1 0
1 1 1 sgn(3) 1 1 1 1 (35)

Modelul X=[-1 1 1 1] este un model nedorit, dar este un atractor al reelei memorat
printr-o codare bipolar hebbian .
d) Pentru starea iniial X= [1 1 1 1] energia reelei este:

45
1110 1 1
1101 1 1
1 1
Ei 11 1 . . 13 1 . 0 (36)

2 1011 1 2 1

0111 1 1
Pentru starea succesiv, care este i cea final energia este:

46
1110 1 1
1101 1 1
1 1
Ef 11 1 . . 33 31. 6 (37)

2 1011 1 2 1

0111 1 1
Asfel nct evoluia energiei reelei este descresctoare, deci satisface condiia de stabilitate..

3. Desfurarea lucrrii
Se lanseaz programul MATLAB. Se selecteaz din menu-ul Help, Examples and
Demos, apoi din Toolboxes, Neural Networks.

3.1 ncrcai programul Hopfield two neuron design . Acesta permite construirea unei
reele Hopfield cu doi neuroni cu dou puncte de echilibru, [+1 -1] i [-1 +1].
Verificai cu help NEWHOP modul de implementare a RN.
Funcia de activare utilizat este SATLINS. Extragei expresia analitic a funciei.
Cei doi atractori ai reelei sunt reprezentai n planul strilor de intrare posibile prin
puncte roii. Rulai programul pentru diferite intrri posibile. Ce constatai?

3.2 Selectai programul Hopfield unstable equilibria .

47
Reeaua Hopfield anterior construit are i un punct de echilibru nedorit. Verificai c
toate strile iniiale aflate la egal distan (notai aceste stri) de cei doi atractori dorii vor
conduce n punctul de echilibru nedorit [0 0].

3.3 ncrcai programul Hopfield three neuron design . Acest program implementeaz
o reea Hopfield cu trei neuroni cu dou puncte de echilibru dorite, [+1 -1-1] i [+1 +1 -1],
marcate n spaiul strilor posibile cu puncte roii. Testai reeaua pentru diferite modele de
intrare. Ce putei constata?
Aplicai la intrare unul dintre modelele [+1 0 -1] i [+1 0 -1]. Reeaua va evolua nspre
centrul spaiului strilor. Ce reprezint acest model?

3.4 Implementai o reea Hopfield folosind o codare bipolar hebbian i funcia de


activare SATLINS.
Considerai modelul de intrare [-1 -1 +1] i determinai evoluia reelei. Ce reprezint
acest model pentru RN implementat ? Verificai evoluia reelei i pentru [0.8 0.5 -1].
Comparai rezultatele obinute cu cele ale reelei implementate soft. Ce concluzii putei
trage?

3.5 ncrcai programul Hopfield spurious stable points. Programul implementeaz o


reea Hopfield cu cinci neuroni care memoreaz patru modele dorite. Notai aceste modele.
Verificai evoluia reelei pentru diferite modele de intrare. Ce atractori nedorii ai mai gsit?

48
Lucrarea nr.5
1. Noiuni teoretice
1.1 Reele neuronale cu nvare competitiv
Arhitectura unei reele neuronale cu nvare competitiva este prezentata in fig.1.
nvarea competitiva este o procedura cu sau fr control, aplicabil n timp real.

Fig.1 Structura general a unei reele competitive

Unitile unui strat se mpart n grupri (bazine), care nu se suprapun. Numrul de uniti
poate varia de la o grupare la alta. Fiecare unitate primete conexiuni excitatorii de la toate
unitile din stratul anterior i transmite conexiuni inhibitorii ctre toate unitile gruprii din
care face parte. Unitile unei grupri intra n competiie pentru a rspunde unui model de intrare

49
dat. Unitatea care are intrarea cea mai mare tinde ctre valoarea de activare maxima, n timp ce
toate celelalte tind ctre valoarea minima. nvarea are loc prin modificarea ponderilor,
conform unei strategii cunoscute n literatura sub numele
de "ctigtorul ia totul ".In final o singura unitate va fi activa ntr-o grupare. Astfel are loc
specializarea unitilor asupra seturilor de modele de intrare similare. Fiecare unitate devine un
detector de caracteristica sau clasificator de model.
In decursul anilor, mai muli cercettori au elaborat modele competitive, avnd la baza
diferite reguli de nvatare: von der Malsburg (1973), Grossberg (1972, 1976), Fukushima
(1975), Bienenstock , Cooper i Munro (1980), Rumelhart i Ziepser (1985).

1.2 Caracteristici
1. Unitile unui strat sunt asemntoare, cu excepia unui set de caracteristici care le
face sa rspund n mod diferit la aplicarea unui model de intrare. Dac exista doua uniti intr-o
grupare, fiecare este activ pentru valorile opuse ale unei caracteristici binare. Dac exista trei
uniti, fiecare este activa la una dintre valorile unei caracteristici ternare. Astfel o grupare poate
fi considerata ca formatoare a unei caracteristici M -are, n care fiecare model este clasificat ca
avnd una dintre cele M valori posibile ale acestei caracteristici.
2.Dac exista o structura n modelele de stimuli unitatea va fragmenta modelele n
caracteristici structural relevante. Dac stimulii sunt puternic structurai, clasificatoarele vor fi
stabile. Dac stimulii nu au o structura clar, cnd o unitate , cnd alta, va cstiga competiia,
genernd instabilitate.
3. Clasificarea depinde att de valorile iniiale ale ponderilor , ct i de secvena curenta
de stimuli. Un stimul Sj consta dintr-un model binar de 1 i 0.
4. Pentru o unitate uj suma ponderilor liniilor de intrare este constant
w ij 1
i
O unitate nva prin trecerea ponderilor de la liniile active la cele inactive. Doar unitile
care vor ctig competiia nva.

1.3 Procedura de nvare competitiv conine,n esen, urmtorii pai:


1. Se iniializeaz vectorii pondere:
w i ( 0 ) x( i ); i 1, 2, . . . n
Pentru eantionul de intrare aleator x(t) se gsete cel mai apropiat vector pondere, w j(t), care
va fi declarat ctigtor:
w j ( t) x( t ) min w i ( t) x ( t )
i

unde x=(x1) (x2) ..(xn) este norma euclidian a lui x


2 2 2

2.Se actualizez ponderea nodului ctigtor conform relaiei:

pentru nvarea competitiv nesupravegheat:


w j ( t 1) w j ( t) c t [x ( t) w j ( t)]
unde ct definete o secven de coeficieni de nvare descresctoare:
t
c t 0.1[1 ]
10000
pentru 10000 de eantioane de nvare ale lui x(t)

pentru nvarea competitiv supravegheat:

50
w j ( t 1) w j ( t ) c t . rj ( x( t )).[ x( t ) w j ( t )]
unde -rj(x(t))= 1 dac clasificarea fcut a fost corect
-rj(x(t))= -1 dac clasificarea fcut nu a fost corect

pentru nvarea competitiv diferenial:


w j ( t 1) w j ( t ) c t . f j ( y j )).[x( t ) w j ( t )]
unde fj(yj(t)) reprezint variaia n timp a ieirii neuronului j ctigtor din stratul 2
f j ( y j ( t)) f j ( y j ( t 1)) f j ( y j ( t ))
Practic se utilizeaz doar semnul diferenei.

4. Pentru neuronii nectigtori ponderile rmn neschimbate.

1.4 O interpretare geometric


Dac toate modelele Sk au acelai numr de linii active de intrare (uniti active n
stratul inferior) modele stimul au o aceeai lungime. Fiecare model de intrare poate fi vzut ca
un punct pe sfera N dimensional. Modelele de intrare similare vor fi reprezentate prinn
puncte apropiate pe sfer.
i vectorii pondere au o lungime fix (deoarece suma lor este 1) deci i ei se vor
reprezenta printr-un punct pe sfera N dimensional. La prezentarea unui model la intrarea
reelei, neuronul care are cea mai mare stare de activare este cel al crui vector pondere este
mai aproape de stimul. El va fi declarat ctigtor. Ori de cte ori un neuron ctig
competiia vectorul su pondere se va roti din locaia curent nspre locaia modelului de
intrare.
n Fig.2a sunt reprezentai 8 stimuli, grupai n trei regiuni pe sfer.
Fig.2b. Cnd se aplic un model de intrare va ctiga competiia neuronul al crui
vector pondere este mai apropiat. Vectorul pondere se va deplasa spre gruparea cea mai
apropiat de modele.
Fig3c Vectorii pondere ai celor trei neuroni din figur au migrat nspre centrul gruprii
mai apropiate.

2a 2b 2c

Fig.2 O interpretare geometric a unei reele competitive

1.5 Reele cu autoorganizare "Kohonen"


Pornind de la constatarea ca pentru modelarea interna a structurilor de date creierul
utilizeaz transformri (mapping) spaiale, Kohonen a realizat o reea detectoare de caracteristici.
Reeaua Kohonen este capabila sa identifice caracteristicile comune ale modelelor de intrare
( dac acestea exist), i sa realizeze o clasificare a acestora. Date multidimensionale pot fi

51
reprezentate intr-un spaiu cu dimensiune mult redusa, uzual cu doua dimensiuni. Funcionarea
cortexului uman este asemntoare.
O reea tipica Kohonen are un singur strat de neuroni adaptivi. Fiecare intrare se
conecteaz la toi neuronii din reea. Fiecare neuron interacioneaz cu vecinii si.
Printr-un proces ciclic se compar vectorii de intrare cu vectorii "nmagazinai" ( prin
ponderile conexiunilor) n fiecare dintre nodurile de ieire.
Se evalueaza distana:
n
d j (t ) [x i (t ) w ji (t )]
i 1
Dac intrarea x(t) se potrivete cel mai bine cu vectorul w j(t) (deci dac dj este minim)
neuronul j este declarat ctigtor.
Ponderile conexiunilor se modific pentru toi neuronii din vecintatea neuronului ctigtor
proporional cu distana. Procedeul este inspirat din fenomenul inhibiiei laterale din creier.

w j (t 1) w j (t ) .h( j, k ).[x(t ) w j ( t )]

Funcia h(j,k) este o funcie proporional cu distana dintre neuronii j i k, cunoscut sub
denumirea dat de form, ca "plria mexican". H(j,j) este 1.
O funcie posibil este h(j, k) e - (j - k)2
Vecintile descresc n timp ca mrime spre o limita predefinit, localiznd zona de
maxim activitate. Algoritmul va produce grupri pentru toate tipurile de clase gsite n datele
de antrenament Reeaua devine astfel o hart topografica de caracteristici. Ordonarea pe hart a
gruprilor si timpul de convergenta sunt dependente, de modul n care, datele de antrenament
sunt prezentate reelei. Odat antrenata reeaua, detectoarele de caracteristici trebuie ins
etichetate manual.
Kohonen si colaboratorii au utilizat aceste reele n recunoaterea vorbirii, realiznd un
procesor hard, ca parte integranta a unui sistem mai mare.

1.6 Cuantizarea vectorial (learning vector quantization LVQ)

Realizeaz mprirea spaiului modelelorde intrare ntr-un numr disjunct de subspaii


i reprezint fiecare model de intrare cu eticheta subspaiului de care aparine. Accentul aici
fa de alte proceduri de grupare se pune nu atat pe gruparea modelelor intrare pe baz de
similaritate, c-t pe cuantizarea adic mprirea spaiului modelelor de intrare. Densitatea
neuronilor i deci a subspaiilor este mai mare n zonele n care probabilitatea de apariie a
modelelor e mai mare.
De ex. n figur n partea de sus a planului R 2 exist doar 2 subspaii, modelele de intrare fiind
mai puine dect n partea de jos unde sunt 5 subspaii, deoarece modelele de intrare sunt mult
mai dese

52
Se aproximeaz astfel o funcie de variabile aleatoare, aici funcia densitate de
probabilitate a modelelor de intrare cu un numr finit de vectori de referin numii i
vectori index, sau prototip
(code vectors)

x2

x1

Cuantizarea vectorial fr control (unsupervised LVQ)


Fiind dat setul de vectori de intrare fiecare vector x va fi aproximat printr-un vector
pondere prototip wref. Vectorii prototip se pot determina printr-un algoritm competitiv
standard. Ponderea neuronului care ctig competiia se modific cu regula de nvare
Kohonen.
w j (t 1) w j (t ) (t ).[ x (t ) w j (t )]
Toi ceilai neuroni nu-i modific ponderile.
w j (t 1) w j (t )
Dup determinarea vectorilor prototip, acetia se eticheteaz, fiecare urmnd s reprezinte una
dintre clasele modelelor de intrare.
Se poate demonstra c LVQ realizeaz convergena nspre valori numite centroizi, care
minimizeaz eroarea de cuantizare.

x. p( x ).dx
Ck
wk xkmediu

Ck
p( x ).dx

p(x) este densitatea de probabilitate;


wk este centroidul clasei Ck;
Deci pentru a identifica vectorul de intrare este suficient s se precizeze indexul j al vectorului
prototip wj care a realizat cea mai bun aproximare

Observaii
1.Eroarea de reconstrucie:
x wk

53
2. Dac se cunoate densitatea de probabilitate p(x) se poate face o estimare adaptiv
(cuantizare vectorial adaptativ).

Cuantizarea vectorial cu control


Se presupune c toi vectorii referin aparin unui numr finit, cunoscut de clase.
Fiecare clas este reprezentat printr-un numr de vectori de referin. n timpul
antrenamentului apartenena la o clas este cunoscut i n etapa de test vectorul x de intrare
este asociat clasei al crui vector referin este cel mai aproape de intrare.

Cuantizarea vectorial de tipul 1


Fie un numr de vectori de referin n spaiul modelelor de intrare, uzual mai muli
vectori ptr. fiecare clas.
1. Se asociaz fiecrui neuron i o clas de apartenen
2. Se aplic un model de intrare xp a crui etichet de clas este (dp).
3. Se determin pe baza unei distane metrice (de ex. cea euclidian) neuronul al crui vector
referin wk este cel mai aproape de vectorul de intrare min x w i .
4. Dac clasificarea este corect, adic vectorul x i vectorul pondere wk aparin aceleiai
clase, vectorul pondere al neuronului ctigtor se modific cu relaia:

w k (t 1) w k ( t ) (t )( x( t ) w k ( t ))

Dac clasificarea este incorect, adic x i vectorul pondere w k aparin la clase diferite,
vectorul neuronului ctigtor este ndeprtat de intrare cu:

w k (t 1) w k (t ) ( t )( x(t ) w k (t ))

Pentru toi ceilali neuroni ponderile rm-n neschimbate:

w i (t 1) w i (t )

Unde (0,1) este constanta de nvare. Se recomand ca valoarea acesteia s descreasc


liniar n timp.

Cuantizarea vectorial de tipul 2

1. Se asociaz fiecrui neuron i o clas de apartenen, respectiv o etichet


2. Se aplic un model de intrare xp a crui etichet de clas este (dp).
3. Se determin pe baza unei distane metrice (de ex. cea euclidian) primii doi neuroni ai
cror vectori referin sunt cei mai apropiai de vectorul de intrare.

x p w k 2 x p w k1 x p w i

Unde este eroarea de aproximare

4. Etichetele de clas corespunztoare dpk1, dpk2 sunt comparate cu eticheta corect dp.
S considerm c :
dp dk2 ; d p d k1

54
Neuronul k2 va ctiga competiia. Se aplic regula de nvare diferit ptr. Cei doi
neuroni ctigtori ai competiiei:

wk 2 (t 1) wk 2 (t ) (t )( x(t ) wk 2 (t ))

wk 1 (t 1) wk 1 (t ) (t )( x(t ) wk 1 (t ))

wi (t 1) wi (t ) pentru toti ceilalti neuroni i k1, k 2

Vectorul xp trebuie s aparin unei "ferestre" definite ca un plan median ntre vectorii
wk1 i wk2. Fie:

x p w k1 d1 ; xp w k2 d2

Vectorul xp aparine ferestrei "w" dac:

d1 d 2 1w
min( ; ) s avec s
d 2 d1 1 w

Se recomand utilizarea unei ferestre cu o limit superioar de (0.2, 0.3).


Prin aceast procedur vectorul wk2 se ndreapt nspre modelul de intrare n timp w k1 se
ndeprteaz de el.
Au fost dezvoltate diferite variante ale cuantizrii vectoriale dependent de:
Modul de definire al claselor;
Numrul de neuroni ctigtori luai n considerare;
Posibilitatea adaptrii numrului de neuroni la ieire;
Diferite reguli de nvare, mai selective sau mai puin selective;
Algoritmii LVQ pot fi utilizai n reele neuronale multistrat , ca o etap intermediar n:
Recunoaterea de caractere
Aproximarea de funcii

2. Scopul lucrrii
Scopul lucrrii este studiul principiului de funcionare competitiv i al unor reelecompetitive:
Reeaua cu autoorganizare de tip Kohonen;
Cuantizarea vectorial;
Cteva dintre modelele competitive ale lui Grossberg : Instar i Outstar ;
Testarea unor aplicaii ce utilizeaz reele competitive;

3. Desfurarea lucrrii
Se lanseaz programul MATLAB. Se selecteaz din menu-ul Help, Examples and
Demos, apoi din Toolboxes, Neural Networks, i apoi Other Neural Networks Design
Textbook Demos

3.1 Din Chapter 14 demos ncrcai programul Competitive learning.

55
Modelele de intrare sunt organizate n trei categorii reprezentate prin culori, pe un cerc.
Plasai vectorii pondere ai celor trei neuroni i selectnd Train observai cum se orienteaz
aceti vectori nspre centrele gruprilor pe care le reprezint.
Selectai modele de intrare disparate pe cerc i verificai din nou dac cei trei neuroni
vor nva i aceste clase. Alegei valorile iniiale ale ponderilor departe de modelele de
intrare. Vor nva neuronii cele trei categorii n toate situaiile

3.2 Din Chapter 14 ncrcai programul Competitive classification.


Cum a fost formularizat clasificarea modelelor de intrare, aici nite fructe n funcie de
greutate, textur i form Cte straturi are reeaua neuronal Ci neuroni are reeaua n
fiecare strat

3.3 Selectai din menu-ul Help, Examples and Demos, apoi din Toolboxes, Neural
Networks, programul Competitive learning.
Neuronii reelei competitive nva s reprezinte diferite regiuni ale spaiului de intrare,
acolo unde apar modelele de intrare, reprezentate prin puncte.
Tastai help NEWC pentru a obine informaii referitoare la modul de funcionare al
reelei competitive.
Vectorii pondere ai celor 8 neuroni se vor orienta spre centrele de greutate ale gruprilor
modelelor de intrare, realiznd o clasificare a acestora.
La aplicarea unui model de intrare va fi activ doar neuronul corespunztor clasei de
apartenen .

3.4 ncrcai din menu-ul Help, Examples and Demos, apoi din Toolboxes, Neural
Networks programul One dimensional self organising map
O RN competitiv de tip Kohonen nva s reprezinte diferite regiuni ale spaiului de
intrare, rspunznd la modele similare (care aparin unei regiuni) prin activarea neuronului
corespunztor clasei. RN nva topologia spaiului de intrare.
Modelele de intrare sunt 100 de punct pe un cerc de raz unitate. Reeaua implementat
are 10 neuroni. Dup 1000 de iteraii fiecare neuron va nva s rspund (s fie activ) pentru
unul dintre cele 10 intervale ale segmentului de cerc de pe care au fost selectate modelele de
intrare. Vectorii pondere marcai prin puncte roii sunt vectorii prototip pentru cele 10 clase .

3.5 Selectai din menu-ul Help, Examples and Demos, apoi din Toolboxes, Neural
Networks Two dimensional self organising map
O RN competitiv de tip Kohonen de dimensiune 5x6 neuroni nva s clasifice 1000
de vectori bidimensionali de coordonate x1, x2, cu valori n intervalul
-1,+1.
Ponderile sunt iniializate la 0 astfel nct ele vor fi reprezentate n planul ponderilor
printr-un punct. n timp ponderile se vor autoorganiza ntr-o reea regulat fiecare neuron
ncercnd s reprezinte una dintre cele 5x6 zone ale spaiului modelelor de intrare

3.6 Din Other Neural Networks Design Textbook Demos, Chapter 14 demos ncrcai
programul 2 D Feature Map. Pentru diferite constante de nvare i diferite vecinti
antrenai reeaua pentru a reprezenta spaiul modelelor de intrare.
Notai experimentele i concluziile trase.

56
Lucrarea nr.6

1. Scopul lucrrii
Scopul lucrrii este studiul reelei competitive MAXNET ntr-o aplicaie practic de
recunoatere de caractere

2. Noiuni teoretice generale

n reeaua MAXNET fiecare neuron este cuplat cu el nsui excitator i i inhib pe toi
ceilali:

pentru i j
w ij
1 pentru i j (6.20)

1
unde < 1 este o constant pozitiv mic, iar N numrul de neuroni din RN
N
Relaia (6.20) se poate scrie ca o matrice de dimensiune NxN:

1 ...
1 ...
WN = (6.
... ...

... 1
21)

Modelul de intrare este activ doar n momentul iniial x[0]. Fiecare neuron proceseaz
intrarea sa net conform relaiei (6.1), adic sub form matricial:

57
T
net[0] WN .x[0] (6.22)

Apoi se determin ieirea aplicndu-se funcia de activare intrrii nete:

o[ k 1] f ( net[ k ]) (6.23)

Funcia de activare este definit de relaia:

net[k] pentru net[k]


f (net[k]) (6.24)
0 pentru net[k]
Ieirile tuturor neuronilor la momentul k+1 se folosesc pentru a determina intrarea
net n neuroni la momentul urmtor de timp k+2. Se poate demonstra c aplicndu-se n mod
recursiv relaiile (6.23) i (6.24) reeaua MAXNET va converge nspre o situaie n care doar
neuronul cu cea mai mare intrare net iniial va rmne activ n timp ce toi ceilali vor
converge spre activarea zero. Din acest motiv reeaua MAXNET se numete i reea de tipul
(" ctigtorul ia totul " n englez winner-takes-all).
O reea similar este MINNET care la ieire va avea un singur neuron activ, acela cu
cea mai mic stare de activare iniial.

Exemplul 1
Tipic o reea neuronal competitiv este alctuit din dou straturi de neuroni:
-stratul de msurare al distanei;
-stratul competitiv, de tip MAXNET sau MINNET;
Structura unei reele neuronale competitive este reprezentat n figura:

x(n) d(n) y(n)


D(x,W) Strat

Maxnet
p m m

Regul de
nvare

Fig. Structura reelei neuronale competitive

Fie un clasificator neuronal de caractere, implementat cu o reea Hamming ca prim strat


i o reea Maxnet ca al doilea strat. Literele C, I, T sunt modelele prototip . RN va selecta

58
clasa creia i aparine modelul aplicat la intrare, respectiv clasa la distana Hamming cea mai
mic fa de acesta.
Stratul Hamming va avea la ieire un neuron cu cea mai mare stare de activare , dac
distana Hamming dintre modelul de intrare i categoria reprezentat de acel neuron va fi
minim. Stratul MAXNET suprim ieirile tuturor neuronilor cu excepia celui care a avut cea
mai mare stare de activare iniial.
Fie modelul prototip pentru o clas m, s m [s1m s m2 ... s mN ] .
Matricea ponderilor pentru stratul Hamming care realizeaz o clasificare n p categorii
este dat de relaia:

s1(1) s (21) s (N1)


1
WH s1( 2) s (22) s (N2)
2 (p) (p)
s 1 s 2 s (Np )

Pentru litera C, modelul prototip, conform imaginii de mai jos, are structura
s1=[1 1 1 1 -1 -1 1 1 1 1].
n mod similar pentru litera I modelul prototip este s2=[-1 1 -1 -1 1 -1 1 -1 1 ] i pentru
litera T modelul prototip este s3=[1 1 1 -1 1 -1 -1 1 -1 ]. Matricea ponderilor pentru reeaua
Hamming este:

1 1 1 1 1 1 1 1 1
1
WH 1 1 1 1 1 1 1 1 1
2
1 1 1 1 1 1 1 1 1

Intrarea net pentru reeaua Hamming este dat de relaia


1 m T N
net m s x , pentru m=1,2, , p
2 2
sau de :
net m N HD( x , s ( m ) )

unde HD este distana Hamming, numrul de poziii n care cei doi vectori difer.
Practic net ne d numrul de poziii n care cei doi vectori x i sm se aseamn.

1
f (net m ) net m
N

59
Intrrile reelei Hamming sunt date de:

1
1

1

1
1 9 5 9
net 1 1 1 1 1 1 1 1 1 1 1 7
2 2 2 2
1
1

1

1

1
1

1

1
1 9 3 9
net 2 1 1 1 1 1 1 1 1 1 1 3
2 2 2 2
1
1

1

1

1
1

1

1
1 9 1 9
net 3 1 1 1 1 1 1 1 1 1 1 5
2 2 2 2
1
1

1

1

Ieirile reelei Hamming sunt intrri pentru reeaua Maxnet la momentul 0 :


1 7
f ( net 1 ) net 1
9 9

1 3
f (net 2 ) net 2
9 9

1 5
f ( net 3 ) net 3
9 9

ntr-o form vectorial modelul de intrare n reeaua Maxnet este:

60
7 3 5
x[0]
9 9 9

Dac se alege =0.2 (care respect condiia <1/3), matricea ponderilor pentru reeaua
Maxnet WN este :

1 1
1
5 5
1 1
WN 1
5 5
1 1
5 5 1

Intrarea net n MAXNET este la momentul initial :

1 1 7
1 5 5 9 0.599
1 1 3
net[0] WN x[0] 1 0.067
5 5 9
1 1 5 0.333
1
5 5 9

Ieirile reelei Maxnet, respectiv intrrile nete la iteraiile succesive sunt:

0.599
o[1] f ( net[0]) 0.067
0.333

1 1
1 5 5 0.599
1 0.520
1
net[1] WN f (net[0]) 1 0.067 0.120
5 5
1 1 0.333 0.120

5 1
5

0.520
o[ 2] f (net[1]) 0
0.120

61
1 1
1 5 5 0.520
1 0.480
1
net[2] WN f (net[0]) 1 0 0.140
5 5
1 1 0.120 0.096

5 1
5

0.480
o[3] f ( net[ 2]) 0
0.096

1 1
1 5 5 0.520
1 0.461
1
net[3] WN f (net[2]) 1 0 0.115
5 5 7
1 1 0.120 10
5 5 1

0.461
o[4] f ( net[3]) 0
0

Ieirea reelei MAXNET rmne pentru toate iteraiile succesive aceeai :

o[ 4] 0.461 0 0

Aadar modelul de intrare, prototipul afectat de zgomot va fi clasificat ca litera C.

Exemplul 2
Pentru litera C, modelul prototip, conform imaginii de mai jos, are structura
s=[1 1 1 1 0 0 1 1 1 1]
1 2 3

4 5 6

7 8 9

n mod similar pentru litera I modelul prototip este s=[0 1 0 0 1 0 1 0 1 ] i pentru litera T
modelul prototip este s=[1 1 1 0 1 0 0 1 0 ]. Matricea ponderilor pentru reeaua Hamming
este:
1 1 1 1 0 0 1 1 1
1
WH 0 1 0 0 1 0 0 1 0
2
1 1 1 0 1 0 0 1 0
Intrarea net pentru reeaua Hamming este dat de relaia

62
1 m T N
net m s x , pentru m=1,2, , p
2 2
sau de :
net m N HD( x, s ( m ) )

unde HD este distana Hamming, numrul de poziii n care cei doi vectori difer.
Practic net ne d numrul de poziii n care cei doi vectori x i sm se aseamn.

1
f (net m ) net m
n

Intrrile reelei Hamming sunt date de:


1

1
1

1
1 9 7 9
net 1 1 1 1 1 0 0 1 1 1 1 8
2 2 2 2
1
1

1

1

1

1
1

1
1 9 3 9
net 2 0 1 0 0 1 0 0 1 0 1 6
2 2 2 2
1
1

1

1

1
1

1

1
1 9 5 9
net 3 1 1 1 0 1 0 0 1 0 1 7
2 2 2 2
1
1

1

1

Ieirile reelei Hamming, intrri n reeaua MAXNET sunt:

63
1 8
f (net 1 ) net 1
9 9

1 6
f (net 2 ) net 2
9 9

1 7
f (net 3 ) net 3
9 9

Modelul de intrare este deci:

8 6 7
o[0]
9 9 9
Intrarea net n stratul MAXNET este:
1 1 8
1 4
4 9 0.528
1 1 6
net[0] WN o[O] 1 0.25
4 4 9
1 1 7 0.389
4 4 1
9

Ieirile stratului MAXNET sunt succesiv:


1 1
1 4 4 0.528
1 0.368
1
o[1] WN f (net[0]) 1 0.25 0.021
4 4
1 1 0.389 0.194

4 1
4

1 1
1 4 4 0.368
1 0.314
1
o[2] WN f (net[1]) 1 0.021 0.12
4 4
1 1 0.194 0.097

4 1
4

1 1
1
4 4 0.314 0.29
1 1
o[3] WN f (net[2]) 1 0 0.103
4 4
1 1 0.097 0.019

4 1
4

64
1 1
1 4 4 0.29
1 0.285
1
o[4] WN f (net[ 3]) 1 0 0.077
4 4
1 1 0.019 0.053

4 1
4

0.285
o[5] f (net[4]) 0
0

Ieirea reelei MAXNET este :

o[5] 0.285 0 0

Cel mai apropiat model prototip este deci cel corespunytor literei C.

x 1 1 1 1 0 0 1 1 1

65
66

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