Bazele RNA
-
Upload
raul-serban -
Category
Documents
-
view
223 -
download
0
Transcript of Bazele RNA
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 1/22
129
Capitolul 4
Bazele reţelelor neuronale
4.1 INTRODUCERE
Noţiunea de calcul poate lua mai multe aspecte. Din punct de vedereistoric, calculul a fost dominat de conceptul de calcul programat , în care
algoritmii sunt proiectaţi şi apoi implementaţi folosind arhitecturile dominantecurente. Este nevoie de un punct de vedere alternativ atunci când se consider ă operaţiile de calcul din sistemele biologice. De exemplu, calculul din creieruluman este diferit de paradigma mai sus amintită prin:
• calculele sunt masiv distribuite şi efectuate în paralel;• învăţarea înlocuieşte un program apriori de dezvoltare.
Împrumutând aceste caracteristici din natur ă, a apărut o nou model decalcul motivat biologic, acela al re ţ elelor neuronale artificiale (RNA).
Tehnologia RNA are potenţialul necesar pentru a deveni arhitectura de calculdominantă iar neuronii artificiali pot deveni blocuri fundamentale de tip RISC(R educed Instruction Set Computer). Paragrafele care urmează explorează ramificaţiile procesului de proiectare a reţelelor neuronale, inclusiv idei şiabordări noi, fundamente matematice şi exemple de aplicaţii.
RNA reprezintă atât un domeniu ştiin ţ ific cât şi o tehnologie: ştiinţa estedefinită prin cunoştinţe structurate (care, în general, privesc lumea fizică) iartehnologia reprezintă ştiinţa aplicată. Ambele aspecte vor fi explorate încapitolele care urmează, de la fundametele biologice şi matematice ale RNA până la soluţionarea problemelor pe baza RNA.
La începutul discuţiei despre RNA trebuie să fie luate în discuţie treichestiuni:
1. Este tehnologia RNA o tehnologie într-adevăr nouă, şi cum poate fi aceastautilizată?
2. Ce este comun cu sau derivat din alte tehnologii?3. Ce este comun tuturor RNA pe care le vom studia?
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 2/22
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 3/22
Concepte fundamentale
131
interconectare nerecurent ă, care nu conţine căi închise deinterconectare. Se poate remarca reprezentarea unităţilor grupate în straturi. Prin contrast, Figura 4.1b indică o strategie de interconectarerecurent ă, în care flexibilitatea arbitrar ă a interconexiunilor permiteexistenţa traseelor închise (feedback). În acest fel, reţeaua poate ficaracterizată printr-o dinamică temporală mai complexă decât în cazul primei strategii. De asemenea, topologia unei reţele poate fi statică saudinamică iar unele unităţi din Figura 4.1 sunt interfaţate direct cu lumeaexterioar ă, iar altele sunt unităţi "ascunse" sau interne. Aceste structurivor fi explorate în detaliu în Capitolele 5 − 8.
B. Unităţile individuale implementează o funcţie locală iar reţeaua globală,formată din unităţi interconectate, are o funcţionalitate corespunzătoare.Analiza acestei funcţionalităţi, cu excepţia cazurilor în care se folosescexemple de antrenare şi de test, este destul de dificilă. Mai mult,aplicaţia determină, prin intermediul specifica ţ iilor , funcţionalitateacerută; este rolul proiectantului reţelei neuronale artificiale să determine parametrii reţelei care satisfac aceste specificaţii.
C. Modificarea conectivităţii dintre elemente în funcţie de datele deantrenare reprezintă cheia procesului de învăţare. Cu alte cuvinte,
cunoştinţele sistemului, experienţa sau antrenarea sunt memorate subforma interconexiunilor reţelei.
D. Pentru a fi utile, sistemele neuronale trebuie să fie capabile să memoreze informaţia (adică, ele trebuie să fie "antrenabile"). Sistemeleneuronale sunt antrenate cu speranţa că vor avea o comportareasociativă corectă atunci când li se prezintă noi forme pentru a fi
(a) (b)
Intr ări
Ieşiri
Intr ări
Ieşiri
Figura 4.1 Topologii de bază: (a) reţea neuronală artificială nerecurentă;(b) reţea recurentă.
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 4/22
4/ Bazele reţelelor neuronale
132
recunoscute sau clasificate. Adică, obiectivul procesului de antrenareeste obţinerea unei structuri interne care să permită reţelei să identificecorect sau să clasifice forme noi, similare. Vom lua în considerare atâtmodelul învăţării supervizate cât şi pe cel al învăţării nesupervizate.
E. O reţea neuronală este un sistem dinamic; starea lui (ieşirile unităţilor şi ponderile interconexiunilor) se modifică în timp ca r ăspuns la intr ăriexterne sau în funcţie de o stare iniţială (instabilă).
În general, fiecare publicaţie referitoare la reţele neuronale artificiale (carte,articol, etc.) foloseşte propriile notaţii. În plus, unii autori folosesc vectorii subforma unor coloane iar alţii sub formă de linii. Pentru a simplifica situaţia, încele ce urmează se vor utiliza notaţiile descrise în continuare, care corespundunor concepte majore. Un vector este un caracter subliniat; se presupune că toţivectorii sunt vectori coloană.
x : Un vector în general.i : Un vector de semnale de intrare, fie pentru o unitate elementar ă decalcul fie pentru o reţea. A j -a intrare se notează ji . Dimensiunea implicită a lui
i este d , T d j iiiii ),...,,...,,( 21= , deşi adăugarea unei intr ări de polarizare necesită
redefinirea lui i sau creşterea dimensiunii d cu 1.o : Un vector al semnalelor de ieşire. Uneori io = , în cazul reţelelor
recurente sau stratificate. Dimensiunea implicită a lui o este c . so : Un vector care indică starea memorată dorită într-o reţea recurentă.
io : Ieşirea unităţii i . Adesea, )( ii net f o = .
inet sau inet : Vectorul de activare al reţelei, respectiv activarea reţelei pentru unitatea i .
jw : Ponderea corespunzătoare intr ării j a unei unităţi elementare.
ijw : Ponderea corespunzătoare intr ării j a unităţii i . Sau, când unităţile
sunt interconectate, ijw reprezintă ponderea interconexiunii de la unitatea j la
unitatea i . În procesul de antrenare, )(k wij se foloseşte pentru a nota ponderea
la momentul sau iteraţia k .
w sau pw : Vectorul ponderilor corespunzător unităţii p . De multe ori se
notează T w pentru a forma activarea reţelei.W : Matricea ponderilor. Elementul ijw , din linia i şi coloana j , a fost
definit mai sus. P : Matricea stimulilor (se mai poate nota S ) folosită pentru a reprezenta
vectorii de intrare ai reţelei, în mod curent în H . De multe ori se scrie subforma:
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 5/22
Aplicaţii ale calculului neuronal
133
⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜
⎝
⎛
=
T
n
T
T
T
i
ii
i
P
...3
2
1
.
R : Matricea r ăspuns a reţelei, cu o structur ă similar ă cu P .t : Un vector ţintă sau vector de ieşire dorit. E : Măsura erorii sau a energiei. H : Mulţimea de antrenare, etichetată sau nu. Cardinalul lui H este n ;
adică, această mulţime conţine n elemente.FF: Reţea cu propagare directă (feedforward).
Trei variabile importante
După cum am menţionat în definiţiile precedente, trei variabile sunt folositefrecvent şi consistent pe parcursul acestei lucr ări: d este numărul intr ărilor înreţea, c este numărul ieşirilor reţelei (este posibil ca cd = ) iar n este numărulde eşantioane de antrenare disponibile.
4.3 APLICAŢII ALE CALCULULUI NEURONAL
Emularea structurilor de calcul al sistemelor biologice poate conduce la
modele superioare de calcul pentru anumite clase de probleme. Printre acesteasunt: clasa problemelor de etichetare, de ordonare, de căutare şi alte probleme desatisfacere a unor restricţii; clasa problemelor de recunoaştere a formelor/obiectelor, mai ales pentru înţelegerea vederii şi a vorbirii; clasa problemelorcare tratează date imperfecte, contradictorii, incomplete, fuzzy sau probabilistice. Aceste probleme sunt caracterizate prin una sau mai multe dinurmătoarele: un spaţiu cu dimensiune mare pentru problema de rezolvat;complexitate; interacţiuni necunoscute între variabilele problemei sau care nu pot fi tratate matematic; un spaţiu al soluţiei care poate fi vid, poate conţine osoluţie unică sau (cazul tipic) care poate conţine un anumit număr de soluţii
utile. Mai mult (după cum indică lista următoare), se pare că reţelele neuronaleartificiale ofer ă soluţii pentru problemele care necesită intr ări ce pot proveni dela senzori de tip uman, cum sunt recunoaşterea vorbirii, a vederii sau a scrisuluide mână. Menţionăm că ceea ce nu este simplu este obţinerea soluţiei unei probleme oarecare printr-o reţea neuronală.
O trecere completă în revistă a tuturor aplicaţiilor RNA (încercate, reuşiteşi preconizate) nu este practică. Totuşi, o privire la publicaţiile cele mai populare
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 6/22
4/ Bazele reţelelor neuronale
134
şi la lucr ările unor conferinţe ştiinţifice poate furniza exemple ilustrative.Aplicaţiile RNA includ:• Procesarea imaginilor şi vederea artificială, inclusiv pre-procesarea,
segmentarea şi analiza, compresia imaginilor, vederea binocular ă, procesareaşi înţelegerea imaginilor variabile în timp, aplicaţii de inspecţie vizuală.
• Procesarea semnalelor, inclusiv analiza şi morfologia semnalelor seismice.• Recunoaşterea formelor, inclusiv extragerea caracteristicilor, clasificarea şi
analiza semnalelor radar, recunoaşterea şi înţelegerea vorbirii, identificareaamprentelor, recunoaşterea caracterelor (litere sau cifre), analiza şirecunoaşterea scrisului de mână (notepad).
• Medicină, incluzând aici analiza şi înţelegerea semnalelor furnizate deelectrocardiografe, diagnoza diferitelor boli şi procesarea imaginilormedicale.
• Sisteme militare, cu detecţia minelor submarine, clasificarea semnalelorradar şi recunoaşterea tactică a unui vorbitor.
• Sisteme financiare, analiza şi predicţia pieţei de acţiuni sau a celeiimobiliare, autorizarea căr ţilor de credit şi sisteme de securitate.
• Planificare, control şi căutare, inclusiv implementarea paralelă a problemelor de satisfacere a restricţiilor, reglare automată şi robotică.
• Inteligenţa artificială, inclusiv implementarea sistemelor expert.• Factori umani (interfaţare).• Sisteme de putere, inclusiv estimarea stării sistemelor, clasificarea şi
detecţia stărilor de tranziţie, detecţia defectelor, probleme de securitate.
Pentru că reţelele neuronale artificiale reprezintă un model de calcul relativ
nou, probabil că este mai sigur să spunem că avantajele, dezavantajele,aplicaţiile şi relaţiile cu calculul tradiţional nu sunt înţelese în întregime.Aşteptările (am putea spune hiper- ) pentru acest domeniu sunt deosebit de mari.În particular, reţelele neuronale sunt potrivite pentru aplicaţii care includ sistemeantrenabile pentru recunoa şterea şi asocierea formelor . Aprecierea că reţeleleneuronale artificiale pot conduce la rezolvarea tuturor problemelor deraţionament automat, sau a tuturor problemelor care conţin diferite transformări,este probabil nerealistă.
Avantaje
• Calculul se efectuează în paralel• RNA pot fi tolerante la defecte datorită paralelismului• RNA pot fi proiectate astfel încât să fie adaptive• Nu este nevoie de caracterizarea extensivă a problemei (în alt mod decât
prin setul de antrenare).
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 7/22
Ingineria calculului neuronale
135
Dezavantaje• Nu există reguli clare sau indicaţii de proiectare pentru o aplicaţie
arbitrar ă • Nu există o cale generală pentru a evalua modul intern de operare pentru
o reţea
• Antrenarea poate fi dificilă sau imposibilă • Este dificil să se prevadă performanţa viitoare a reţelei (generalizare).
4.4 INGINERIA CALCULULUI NEURONAL
4.4.1 Întrebări iniţiale
O abordare inginerească în rezolvarea unei probleme trebuie să impliceîncorporarea tuturor informaţiilor disponibile şi relevante despre acea problemă,
într-o manier ă structurată, pentru a putea formula o soluţie. Întrebările principalecare apar sunt:
1. Sunt RNA potrivite din punct de vedere tehnic, sau pot fi aplicate, pentru problema curentă de rezolvat?
2. Putem dezvolta sau modifica arhitecturi utile de RNA pentru situaţiacurentă şi, putem antrena RNA (determina parametrii săi)?
3. Există instrumente formale sau euristice care pot fi aplicate pentru aevalua proprietăţile soluţiei oferite de RNA? (de exemplu, care estecomplexitatea de calcul a procedurii care conduce la soluţia problemei?)
4.4.2 Proceduri neuro-inginereşti: înlocuirea proiectării cu antrenarea
În mod tipic, procesul de proiectare clasică inginerească include aplicareasistematică a principiilor ştiinţifice (matematice, fizice, etc.) pentru a dezvoltaun sistem care satisface anumite specificaţii. În acest sens, proiectarea poate faceapel la judecată, intuiţie şi, posibil, iteraţie. Pe de altă parte, procesul deantrenare include o anumită formă de învăţare pentru a for ţa comportareaviitoare a sistemului să îndeplinească anumite specificaţii. Învăţarea includecorecţia (ajustarea) parametrilor sistemului astfel încât r ăspunsul în următoareaiteraţie sau în următorul experiment să fie cât mai apropiat de cel dorit.
Neuro-ingineria înlocuieşte procesul clasic de proiectare şi conduce ladeterminarea componentelor caracteristice RNA, inclusiv arhitectura globală aRNA, topologia acesteia, parametrii unităţilor de calcul şi procedura deînvăţare/antrenare. Deşi acest nou proces poate părea evident, este necesar ă o judecată neuro-inginerească. Existenţa a milioane de posibilităţi în alegereatopologiilor sau a parametrilor face nepractică "for ţa brută" sau căutareaexhaustivă. În plus, după cum am menţionat înainte, trebuie văzut dacă soluţiaRNA este potrivită sau nu cu problema de rezolvat.
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 8/22
4/ Bazele reţelelor neuronale
136
4.4.3 Proceduri pentru ingineria sistemelor neuronale
Pe durata procesului de proiectare a soluţiilor bazate pe reţele neuronale, pot apărea multe întrebări, cum ar fi:
• Poate fi antrenată reţeaua pentru a realiza operaţia dorită sau, există o
oarecare ambiguitate în problemă care face soluţia imposibilă?• Presupunând că problema se poate rezolva, ce structur ă de reţea
(topologie) este mai potrivită?• Ce resurse de calcul sunt disponibile (timp, memorie, procesoare) pentru
a antrena şi implementa reţeaua?
Pentru aplicaţiile reale, proiectarea unui sistem bazat pe reţele neuronaleeste un proces complex, în mod curent iterativ şi interactiv. Deşi este imposibilsă se prezinte o procedur ă algoritmică universală, paşii care vor fi prezentaţi încontinuare reflectă eforturile şi preocupările tipice în acest domeniu.
Determinarea parametrilor RNA include:1. Strategia de interconectare/topologia reţelei/structura reţelei2. Caracteristicile unităţilor (pot fi diferite în interiorul unei reţele şi în
interiorul subdiviziunilor reţelei, cum sunt straturile reţelei)3. Procedura (procedurile) de antrenare4. Seturile de antrenare şi de test5. Reprezentările intrare/ieşire, pre- şi postprocesarea
Un proces tipic de antrenare poate conţine următoarele etape: Pasul 1: Studiul claselor de măsur ări/forme care pot fi luate în considerare
pentru a dezvolta posibile caracterizări (cantitative). Aceasta includeevaluările structurilor cuantificabile, caracterizări probabilistice şiexplorarea claselor posibile de măsuri ale similarităţii. În plus, trebuie să fie considerate la acest punct posibile deformări ale proprietăţilorinvariante precum şi caracterizarea surselor de zgomot.
Pasul 2: Determinarea tipurilor de măsur ări (intr ări) sau date caracteristice(preprocesate).
Pasul 3: Luarea în considerare a restricţiilor asupra performaţelor dorite alesistemului şi a resurselor de calcul.
Pasul 4: Luarea în considerare a accesibilităţii şi calităţii datelor de
antrenare şi de test. Pasul 5: Luarea în considerare a accesibilităţii structurilor potrivite şicunoscute de sisteme RNA.
Pasul 6 : Dezvoltarea unei simulări a RNA. Pasul 7 : Antrenarea sistemului RNA. Pasul 8: Simularea performaţelor sistemului RNA folosind setul (seturile)
de date de test. Pasul 9: Iterarea unor paşi anteriori până când se atinge performaţa dorită.
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 9/22
Tipuri de transformări
137
4.5 TIPURI DE TRANSFORMĂRI
Termenul "transformare" are mai multe conotaţii în proiectarea şi analizasistemelor RNA. Transformarea stărilor unei probleme conceptuale în starile
RNA este un exemplu. În contextul transformării unei stări specifice a RNA, sedoreşte o transformare specifică intrare/ieşire (I/O) sau, poate, transformareaunei stări variabile în timp, după cum se arată în Figura 4.2.
4.5.1 Sistemul de percepţie şi descrieri stimul-răspuns
Sistemul uman de percepţie include procesarea informaţiei memorate şi acelei care provine de la senzori, ca în cazul preprocesării şi percepţiei vizualesau auditive. O caracterizare elementar ă stimul-r ăspuns (S-R) a unui sistem de percepţie este prezentată în Figura 4.3. În sistemele biologice (în special la
vertebrate), semnalele de intrare din lumea exterioar ă se obţin prin intermediulunor celule receptoare, care r ăspund unei varietăţi de stimuli, cum sunt: lumina,căldura, substanţe chimice, vibraţii mecanice sau deplasări. Intrarea poate fi oformă vizuală, un sunet sau alţi stimuli biologici. R ăspunsul dorit (sau învăţat) poate lua forma unei recunoaşteri sau a unei reacţii.
Figura 4.2 Strategii de transformare în reţelele neuronaleartificiale şi reprezentări intrare/ieşire .
o
],0[o∈
i 1o
2o
co ji pentruooo
ji
i
≠=⋅
=∑0
1
i 1o
2o
mo
Codurile indică descrierea sau clasa
o 'o o′ este forma memorată "aproape" de o (Asociator neuronal)
i
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 10/22
4/ Bazele reţelelor neuronale
138
Un sistem de tip cutie neagr ă (black-box) este specificat prin intermediul
unei caracteristici S-R. În mod tipic, calculele interne nu sunt relevante, nu suntcunoscute sau nu pot fi cuantificate. Un punct de vedere este acela că reţeleleneuronale artificiale reprezintă o strategie de calcul nealgoritmică, de tip black-box, care poate fi antrenată. Vom spera să antrenăm cutia neagr ă neuronală astfel încât aceasta să înveţe r ăspunsul corect sau ieşirea (adică să facă oclasificare) pentru fiecare din eşantioanele setului de antrenare. Această strategie
este atractivă pentru proiectantul sistemului deoarece cantitatea necesar ă decunoştinţe apriori şi înţelegerea modului intern de operare a sistemului suntminime. Mai mult, după antrenare, sper ăm ca structura internă (neuronală) dinimplementarea artificială va fi capabilă să se auto-organizeze pentru a permiteextrapolarea atunci când este pusă în faţa unor forme noi, similare; se va faceapel la experienţa dobândită prin procesul de antrenare. Cu perspectiva black- box, în analiza unei aplicaţii, întrebarea "Care este modelul sistemului?" poate primi r ăspunsul banal "Cui îi pasă?"
De multe ori, structura reţelelor artificiale este ierarhică. În sensul cutieinegre aceasta înseamnă că există o "cutie de cutii" în care, cutiile interne pot
avea o structur ă topologică diferită. Această structur ă sugerează de asemenea că putem rearanja cutiile interne (şi conţinutul lor) şi interconecta alte "macro-cutii" pentru a abţine noi structuri de reţele.
Aspectul cheie în abordarea de tip "cutie neagr ă" este dezvoltarea relaţiilorîntre intrare şi ieşire. Zicala "Gunoi la intrare, gunoi la ieşire" ("Garbage in, garbage out " [Sch97]) se aplică şi în cazul cutiilor negre. Succesul uneiasemenea abordări este puternic influenţat de calitatea datelor şi a algoritmuluide antrenare. În plus, existenţa unui set de antrenare şi a unui algoritm deantrenare nu garantează că o reţea neuronală dată va putea fi antrenată pentru oanume aplicaţie.
4.5.2 Intrările şi ieşirile reţelei
Implementările RNA variază de la situaţii în care, de exemplu, intr ărileneuronilor individuali corespund valorilor intensităţilor pixelilor unei imagini, lacazuri unde se utilizează grupuri de neuroni pentru a reprezenta valorileanumitor caracteristici ale unui obiect. Acest proces important este ilustrat îndiscuţia care urmează, folosind o aplicaţie simplă de recunoaştere a caracterelor.
S R
Ajustare
ANN
Figura 4.3 Structura de bază a unuisistem S-R "black box".
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 11/22
Tipuri de transformări
139
Făcând referire la Figura 4.4, să presupunem că obiectivul este acela de adezvolta o structur ă de RNA ale cărei ieşiri să fie de forma celei de-a douastructuri din Figura 4.2, adică să fie un selector 1 din 10. de exemplu, atuncicând se prezintă reţelei cifra 6, numărul 6 de la ieşire, notat 6o , este 1 iar 0= jo ,
6≠ j . Înainte de a selecta intr ările RNA menţionăm că cifrele din Figura 4.4
sunt reprezentate grafic într-un dreptunghi 11×8 sau, matematic, printr-omatrice binar ă 11×8.
Selecţia intrărilor
Selec ţ ia intr ărilor este procesul de alegere a intr ărilor unei RNA şi, demulte ori, presupune o judecată considerabilă. Intr ările pot fi reprezentate desemnale de tip stimuli pre-procesate, cum ar fi datele ob ţinute prin cuantizarea şifiltrarea semnalelor vocale. În anumite cazuri, există instrumente matematicecare ajută în procesul de selecţie a intr ărilor. În alte cazuri, simularea poate ajuta
în alegerea intr ărilor potrivite. Restricţiile impuse asupra sistemelor de măsurare pentru o aplicaţie dată pot restrânge mulţimea intr ărilor posibile. De asemenea,dimensiunile operaţiilor efectuate înainte da obţinerea semnalelor de intrare(pre-procesare) pot influenţa intr ările alese.
În exemplul de recunoaştere a cifrelor menţionat anterior, o alegere ar ficonversia fiecărei matrici binare 11×8 într-un vector coloană 88×1 şi folosireacomponentelor acestuia ca intr ări ale RNA.
Figura 4.4 Digiţi folosiţi pentru a ilustra conceptul intrare/ieşire.
2 4 6 8
1
11
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 12/22
4/ Bazele reţelelor neuronale
140
Sau, după o oarecare analiză, din aceste matrici pot fi extrase caracteristicicare pot fi folosite ca intr ări ale RNA. Deocamdată, nu este foarte clar carevariantă este de preferat.
Distorsiunile intrărilor
De multe ori, se doreşte ca operaţia de transformare a intr ărilor realizată deo reţea neuronală să conducă la ieşiri care sunt invariante la (anumite) schimbărisau deviaţii ale formelor de intrare: transformările realizate de RNA trebuie să aibă proprietatea de invarian ţă la anumite perturbaţii. Un punct de vederealternativ este acela că acelaşi r ăspuns este dorit pentru o clasă sau o mulţime destimuli de intrare. De exemplu, oamenii sunt capabili să recunoască caractereletipărite sau scrise de mână, cu o mare varietate de dimensiuni şi orientări.Mecanismul exact pe care se bazează această abilitate este, deocamdată,necunoscut. Facând din nou referire la exemplul de recunoaştere a digiţilor, poate fi dezirabil să se recunoască cifrele şi atunci când lipsesc mici por ţiuni dinimagini sau când în imagini există o mai mare cantitate de informaţie. Mai mult, poate se doreşte recunoaşterea cifrelor în mod independent de poziţia acestora îninteriorul dreptunghiului 11×8. Acestea sunt obiective care pot fi realizate maigreu. Menţionăm de asemenea că alegerea caracteristicilor ca intr ări ale RNAfacilitează aceste procese.
Selecţia ieşirilor
Selecţia ieşirilor se realizează în paralel cu procesul de selecţia a intr ărilorşi este aproape întotdeauna un proces dependent de aplicaţie (de problema derezolvat). Ca o alternativă la structura 1 din 10, presupunem că ieşirea RNA estede asemenea un vector 11×8, corespunzător unei matrici 11×8. Transformareadorită, realizată de RNA, trebuie să realizeze conversia digiţilor afectaţi dezgomot, sau distorsionaţi, la vesiunile "standard" sau de referinţă, cum sunt celedin Figura 4.4.
Un alt exemplu legat de problema recunoaşterii cifrelor poate fi utilizareaunei RNA pentru a indica dacă cifra de intrare este <5 sau ≥5. Din nou,
folosind cea de-a doua structur ă din Figura 4.2, este posibilă implementarea unuiselector 1 din 2 sau a unei RNA cu o singur ă ieşire. O altă abordare poate fidezvoltarea unei RNA care transformă cifrele de intrare (sau caracteristici) într-ostructur ă 1 din 10. O a doua reţea poate prelua această ieşire şi poate generaieşirea <5 sau ≥5. Această structur ă este prezentată în Figura 4.5.
O problemă interesantă este dacă această reţea cascadată are ceva în comuncu o reţea care realizează direct transformarea globală?
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 13/22
Tipuri de transformări
141
Alte probleme ale reprezentării I/O
De îndată ce s-a realizat selecţia intr ărilor, alegerea modului dereprezentare a acestora devine extrem de importantă. Intr ările pot fi continue pe
un anumit interval, pot fi discrete, codificate, etc. Destul de des, alegerea uneianumite reprezentări a intr ărilor are o influenţă puternică asupra performaţelorreţelei proiectate.
Efectul I/O asupra transformărilor
Comportarea dorită a unei RNA este caracterizată printr-un set de perechiS-R care formează specificaţia unei relaţii. De exemplu, comportarea reţelelorneuronale poate fi caracterizată printr-un set de n perechi ordonate
ni r s H ii ,...,2,1)},{( = (4.1)
unde i s este stimulul i iar ir este r ăspunsul corespunzător. i s este un elementcare apar ţine domeniului transformării iar ir apar ţine co-domeniului. Domeniul
i s şi codomeniul ir se exprimă prin reprezentări preselectate; de exemplu, i s şi
ir pot fi vectori 1×d şi respectiv 1×c , notaţi s şi r sau i şi t . Scopul reţelei,în condiţiile în care se dă o topologie prespecificată şi sunt cunoscutecaracteristicile unităţilor de calcul, este acela de a învăţ a rela ţ ia exprimată prinecuaţia (4.1). Scopul poate fi reprezentat de proiectarea şi verificarea unei RNAcare implementează transformarea funcţională
)( i Di s f r = (4.2)
Unul dintre exemplele cele mai simple este reprezentat de cazul în care i s
şi ir sunt numere reale.
Figura 4.5 Folosirea cascadei de RNA pentru clasificarea digiţilor.
Digit - ieşire1 din 10
RNA
1 din 10 -<5
RNA
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 14/22
4/ Bazele reţelelor neuronale
142
4.5.3 Reprezentări vectoriale pentru caracteristicile S-R
Adesea, un stimul al unei RNA este reprezentat ca un vector x ; r ăspunsuldorit este exprimat prin vectorul d x . Transformarea dorită, realizată de RNA, seformulează ca:
r s f D
→: (4.3)
sau
)( s f r D
= (4.4)
Una dintre cele mai folosite transformări de forma (4.4) este transformarealiniar ă, care poate fi realizată prin intermediul unei matrici de transformare.
Aceasta are forma:
s M r ⋅= (4.5)
unde trebuie să aibă dimensiunile potrivite pentru realizarea multiplicării înrelaţia (4.5). Formularea vectorială a ecuaţiei (4.4) nu presupune apartenenţavectorilor stimul şi r ăspuns la acelaşi spaţiu vectorial.
4.5.4 Parametri, ponderi şi restricţii
Să consider ăm cazul unei singure unităţi, pentru care modificăm notaţia,astfel încât să introducem şi parametrii unităţii, adică:
),( p p a s f r = (4.6)
unde pa reprezintă parametrii unităţii p iar s reprezintă intrarea sau stimulul
unităţii p . Menţionarea unei singure relaţii dorite intrare/ieşire de forma ),( r s induce o restricţie evidentă asupra lui p f şi pa . Alte restricţii pot fi adăugate
sub forma altor perechi ),( r s . Această problemă de satisfacere a restricţiilor
poate avea sau nu o soluţie; de fapt, pot exista soluţii multiple. Să consider ămcaracteristica unei reţele
),,( wa s f r cii = (4.7)
unde i s şi ir reprezintă intrarea şi ieşirea reţelei, ca reprezintă caracteristicilereţelei iar w reprezintă interconexiunile acesteia ("ponderi"). Şi de această dată,
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 15/22
Structuri tipice
143
specificarea comportării dorite a reţelei sub forma unor perechi ),( ii r s conduce
la restricţii asupra valorilor f , ca şi/sau w . Cazul tipic este acela în care
alegem o structur ă de reţea cu anumite restricţii asupra lui w dar cu valoriiniţiale nedeterminate ale interconexiunilor (valori ale ponderilor individuale).În plus, presupunem că au fost alese caracteristicile unităţilor, f şi
c
a . Acum,
antrenarea devine un proces de găsire a uneia sau a mai multor soluţii(aproximative sau exacte) pentru w . Acest caz este luat în considerare în detaliuîn Capitolele 6 şi 8.
4.6 STRUCTURI TIPICE
Orice taxonomie pentru descrierea reţelelor neuronale artificiale trebuie să înceapă cu identificarea caracteristicilor relevante. Acestea includ:
• Caracteristicile unităţilor de calcul• Paradigme pentru învăţare/antrenare (software)• Topologia reţelei• Funcţia reţelei
4.6.1 Funcţiile RNA
Comportarea dorită a unei RNA ofer ă o altă posibilitate pentru distingereareţelelor. De exemplu, funcţia dorită a unei RNA poate fi specificată prinenumerarea unui set de stări stabile ale reţelei, sau prin identificarea unei ieşiri
dorite a reţelei ca funcţie de intr ările reţelei şi de starea curentă. Exemple"clasice" de clasificare a reţelelor neuronale în funcţie de scopul procesării sunt:
1. Asociator neuronal (Pattern Associator - PA). Această RNA asociază forme, care pot fi vectori. În mod curent, este implementată cu ajutorulreţelelor cu propagare directă. Acest tip de reţea este explorat în detaliuîn Capitolle 5 şi 6. Vom lua în considerare mecanismul de învăţare(antrenare) şi vom explora proprietăţile şi nuanţele acestui mecanism.
2. Modelul memoriilor adresabile prin con ţ inut (Content-AddressableMemory- CAM) sau memorii asociative (Associative Memory-AM).Acest tip de structur ă, exemplificat cel mai bine prin modelul Hopfield
din Capitolul 8, are la bază implementarea funcţiei de asociere prinreţele neuronale.
3. Re ţ ele auto-organizate (Self-Organizing Networks). Aceste reţeleexemplifică implementările neuronale ale învăţării nesupervizate, însensul că, în mod tipic, acestea îşi "auto-organizează" formele de intrareîn clase sau grupuri pe baza unei anumite forme de similaritate. Nu vomlua în discuţie în această lucrare reţelele auto-organizate.
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 16/22
4/ Bazele reţelelor neuronale
144
4.6.2 Structura unei reţele neuronale artificiale
Modul în care se conectează unităţile de calcul ale unei reţele neuronaledetermină structura acesteia. Am prezentat pe scurt structurile recurente şinerecurente. Mai mulţi neuroni pot fi interconectaţi local pentru a forma
"grupuri" care sunt slab sau indirect conectate cu alte grupuri. Sau, neuronii potfi organizaţi în grupuri sau straturi care sunt conectate (direcţional) cu altestraturi. Aplicaţia pentru care se va dezvolta o reţea neuronală presupunestabilirea arhitecturii reţelei. Printre posibilităţi, sunt incluse:
1. Proiectarea unei structuri dependentă de aplicaţie, care să realizeze uncalcul dorit. Un asemenea exemplu este prezentat în [CG87].
2. Selectarea unei structuri comune, pre-existente, pentru care există algoritmi de antrenare. Ca exemple, menţionăm reţelele cu propagaredirectă şi reţelele Hopfield.
3. Adaptarea unei structuri pre-existente astfel încât să fie potrivită cu a
aplicaţie specifică.[JS88]. Aceasta poate include folosirea semanticii saua altui tip de informaţie pentru a da sens comportării unităţilor saugrupurilor de unităţi de calcul.
În Figura 4.6 sunt prezentate două tipuri "generice" de RNA. Acestestructuri sunt doar exemple, dar ele sunt printre cele cărora (se pare) li seatribuie cea mai mare atenţie de către utilizatori.
1 L 2 L N L.....
Forma deintrare
Forma de ieşire(semnal) o
1 Lw 2 Lw N Lw
Ponderi ajustabile; folosite pentru antrenare
)1( +k x H L 1− z
Ponderi(memorare) H Lw Întârzierea tuturor unităţilor
(posibil asincronă)
)(k x
Figura 4.6 Structuri topologice generice.
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 17/22
Structuri tipice
145
4.6.3 Topologiile şi caracterizarea reţelelor
Pentru înţelegerea topologiilor şi a structurilor reţelelor ca funcţii deinterconexiunile unităţilor, distingem câteva concepte:
Reţele recurente
Reţele nerecurenteReţele stratificate, ierarhice sau orice alt tip de reţele structurate în modsimilar.
Structuri competitive.
Tipurile 1 şi 2 sunt mutual exclusive; totuşi, tipurile 3 şi 4 se pot aplica fiestructurilor recurente fie celor nerecurente. [Fie94] prezintă aceste subiecte înamănunt, inclusiv modul în care se formează straturile, şi face distincţia întreconexiuni simetrice şi nesimetrice. În Figura 4.7 şi în Figura 4.8 sunt prezentateexemple de structuri de tipul 3 şi respectiv 4.
Stratul neuronal"Figura"
R ăspuns
Stratul neuronal "Tipmuchie" şi conectare
Date de imtrare preprocesate(caracteristici)
Figura 4.7 Structura unei reţele neuronale de tip ierarhizat,
cu procesare paralelă (aplicaţie de vedere artificială).
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 18/22
4/ Bazele reţelelor neuronale
146
4.6.4 Complexitatea interconexiunilor şi scala problemei
Complexitatea interconexiunilor unei reţele poate fi extrem de mare.Aceasta este critică mai ales atunci când se ia în considerare extinderea uneireţele pentru probleme cu dimensiuni mari. De exemplu, să consider ăm o reţeastratificată (cu propagare directă) capabilă să transforme o imagine nn× într-oaltă imagine nn× . Stratul de intrare şi cel de ieşire vor conţine fiecare 2n
unităţi de calcul. Mai mult, dacă fiecare unitate din stratul de intrare ar ficonectată la fiecare unitate de ieşire (straturi total interconectate), reţeaua aravea 22 )(n interconexiuni. În cazul în care n este mic, numărul total deinterconexiuni poate fi nesemnificativ.; totuşi, scalarea problemei ridică preocupări practice serioase. Pentru o imagine cu rezoluţie medie, 512=n ,numărul total de interconexiuni este 104 1087,6 ×=n !
4.6.5 Interconexiuni de reacţie şi stabilitatea reţelei
Structura cu reacţie a reţelelor recurente din Figurile 4.1 şi 4.6 conduce la o
dinamică temporal ă a reţelei, adică, modificarea în timp. În multe cazuri,sistemul care rezultă, datorită naturii neliniare a caracteristicilor activare-ieşire aunităţilor şi strategiilor de ajustare a ponderilor, este un sistem dinamic puternicneliniar. Aceasta dă naştere unor preocupări legate de stabilitatea globală areţelei, inclusiv posibilitatea apariţiei oscilaţiilor, instabilitate sau lipsa deconvergenţă către o stare stabilă. Stabilitatea reţelelor neuronale neliniare esteun subiect destul de dificil şi nu va fi abordat în această lucrare.
Figura 4.8 Structura unei RNA inhibitoare (competitivă).
Regiuneinhibitoare
Regiuneinhibitoare
Regiuneexcitatoare
Element de procesare de bază
Vederelaterală
Elemente de
procesare
Vedere de sus
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 19/22
Metode de învăţare
147
4.7 METODE DE ÎNVĂŢARE
Învăţ area are sensuri deosebit de largi [Sch90]. Deşi termenii se folosescdeseori în mod alternativ, cei mai mulţi cititori vor recunoaşte cel puţin
distincţiile subtile dintre conceptele de antrenare, învăţare şi înţelegere.Conceptul de antrenare poate fi înţeles ca procesul de folosire a informaţieiastfel încât să determine sau să amelioreze comportarea transformării curente,
A f , către
D f . În cazul aplicaţiilor de asociere a formelor, H poate fi folosită
pentru a ameliora în mod iterativ A
f prin compararea r ăspunsului curent al
sistemului neantrenat, notat ar , unde
)( s f r Aa = (4.8)
cu r ăspunsul dorit sau ţintă, notat d r , unde
)( s f r Dd = (4.9)
"deplasând" A
f mai aproape de D
f prin procesul de antrenare. Desigur, trebuie
să se dezvolte o măsur ă potrivită a "gradului de apropiere".Învăţarea se poate baza pe metode deterministe, cum este cazul
algoritmului cu propagare inversă (Capitolul 7) sau al învăţării de tip Hebbian(Capitolul 8), sau pe metode stohastice, cum este cazul algoritmilor genetici.
4.7.1 Seturi de antrenare şi seturi de test
Să presupunem că proiectantul sistemului cu RNA dispune de o anumită cantitate de informaţie apriori, cum ar fi eşantioane de transformări intrare/ieşiresau doar eşantioane ale intr ărilor, care definesc comportarea dorită a sistemului.În învăţ area supervizat ă un set de transformări "tipice" I/O formează o bază dedate numită set de antrenare şi notată H . În sens general, H furnizează informaţie semnificativă despre modul în care se asociază datele de intrare cudatele de ieşire.
O mulţime etichetată de antrenare H poate fi descrisă sub forma uneo perechi ordonate:
ni r s H ii ,...,2,1)},{( == (4.10)
Ecuaţia (4.10) reprezintă o specificaţie pentru un set de transformări de lad R la c R . Menţionăm că (4.10) defineşte numai un număr limitat ( n ) din
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 20/22
4/ Bazele reţelelor neuronale
148
numărul total (posibil infinit) al acestor transformări. de exemplu, digiţii dinFigura 4.4 împreună cu ieşirea corespunzătoare a RNA, după cum s-a descris în paragraful 4.5.2, pot constitui un set de antrenare.
La învăţ area nesupervizat ă, elementele lui H nu sunt transformări ci, maidegrabă, intr ări sau stări ale reţelei, iar RNA trebuie să determine partiţiile
"naturale" sau grupurile eşantioanelor de date.Un exemplu de învăţare supervizată într-o reţea cu propagare directă esteregula delta generalizată (GDR - Generalized Delta R ule). Un exemplu deînvăţare supervizată pentru o structur ă recurentă este metoda Hopfield (CAM).Învăţarea nesupervizată într-o reţea cu propagare directă (nerecurentă) esteexemplificată prin reţeaua Kohonen auto-organizată. Metoda ART exemplifică învăţarea nesupervizată pentru o reţea cu structur ă recurentă.
Un set mutual exclusiv de transformări suplimentare de forma (4.10)serveşte ca set de test . Acest set se utilizează, după antrenare, pentru a testacapacitatea de generalizare a RNA. Referindu-ne la exemplul de recunoaştere a
cifrelor din paragraful 4.5.2, se poate folosi un set compus din caracteredistorsionate, afectate de zgomot şi deplasate.
4.7.2 Generalizare
Orice soluţie a ecuaţiei (4.10), de forma )( x f x d = , trebuie să satisfacă
ecuaţia în n puncte din d R . Apare o problemă importantă referitoare lacomportarea în alte puncte decât i xn . Aceasta introduce conceptul important de generalizare realizată de RNA (Capitolul 7). Un exemplu de generalizare a fostamintit în paragraful 4.5.2, în discuţia legată de problema de recunoaştere a
cifrelor. Generalizarea dorită a fost invarianţa la poziţie şi la distorsiuniledigiţilor cum este cazul datelor lipsă sau al datelor suplimentare.
Presupunem dată caracteristica S-R pentru o reţea cu o intrare şi o ieşire,sub forma unui set de patru perechi ordonate. Aceste puncte sunt reprezentate înFigura 4.9. Atât capacitatea de generalizare dorită cât şi cea realizată (adică,după antrenare) pentru această transformare realizată cu RNA pot lua multeforme. În Figura 4.9, ambele transformări funcţionale reprezentate graficrealizează obiectivul de transformare a setului de antrenare (aici, f ăr ă erori detransformare). Probabil că cei mai mulţi cititori vor prefera generalizarea dată decurba notată cu 1; totuşi, menţionăm că restricţiile de transformare furnizate
numai de setul de antrenare sunt satisf ăcute de ambele soluţii. Ar trebui să sefolosească date suplimentare (set de test) pentru a testa şi ameliora această transformare. Exemplul din Figura 4.9 conduce la o altă problemă interesantă,care conduce către generalizare. Să presupunem că intr ările şi ieşirile au fostconstrânse să fie discretizate (de exemplu, întregi). Cum ar trebui să se integrezeaceste restricţii în proiectarea RNA, inclusiv prin H , pentru a fi îndeplinite? Cualte cuvinte, cum vom for ţa generalizarea RNA să producă numere întregi?
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 21/22
Metode de învăţare
149
4.7.3 Curbe de învăţare
În domenii ca inteligenţa artificială, învăţarea capătă o conotaţie maigenerală, analogă într-un anumit fel cu procesele de auto-adaptare realizate defiinţele umane [MCM86], [Sch90]. Un sistem de învăţare îşi poate adaptastructura internă astfel încât să realizeze un r ăspuns mai bun, poate pe baza performanţelor anterioare, cuantificate. O măsur ă a performanţei poate fidiferenţa, sau eroarea, dintre ieşirea dorită a sistemului şi cea curentă. Conceptul
generic de învăţare este legat de multe tehnici de învăţare folosite în RNA,tehnici care au la bază corecţia erorilor (de exemplu, GDR şi variantele asociatedin Capitolul 7). În cadrul GDR, ca şi în cazul mai general al tehnicilorgradientului descrescător, sistemul se modifică după fiecare experiment sauiteraţie. Acest lucru poate conduce la o curbă de învăţ are "tipică" înexperimentele biologice, unde )(n P reprezintă probabilitatea ca subiectul(animal sau om) să furnizeze r ăspunsul corect în a n -a încercare dinexperimentul de învăţare. O formulă tipică [Bol79] pentru a prevedea această comportare, care de multe ori se potriveşte cu rezultatele experimentale, este
1,)1))(1(1(1)( 1 ≥−−−= − n P n P nθ , unde ]1,0[∈θ este un parametru de
învăţare. Atunci când asupra lui θ se impune o restricţie, 10 <<θ , eroareainiţială se micşorează în încercări ulterioare, ca o funcţie monotondescrescătoare. Din păcate, această performanţă monoton crescătoare esteadesea dificil de realizat în antrenarea practică a sistemelor cu RNA, după cumse arată în Figura 4.10.O altă măsur ă a performanţei este viteza de învăţare;totuşi, nu trebuie să facem confuzie cu viteza reţelei pentru aplicaţia curentă. Înmod normal, învăţarea se realizează off-line.
Figura 4.9 Dilema generalizare vs. memorizare
în contextul suprapunerii curbelor.
ir
i s
2
1
8/18/2019 Bazele RNA
http://slidepdf.com/reader/full/bazele-rna 22/22
4/ Bazele reţelelor neuronale
4.7.4 Măsura erorii şi traiectoria erorii
Măsura erorii şi traiectoria erorii se folosesc în general pentru a conduce şia evalua antrenarea. Există diverse măsuri ale erorii [Sch97]. Traiectorii tipicesunt prezentate în Figura 4.10. Menţionăm că Figura 4.10 reprezintă un scenariu
optimist în care eroarea descreşte.
Figura 4.10 Diferite traiectorii ale măsurii erorii.
(c)
(b)
(a)(d)
Eroarea
Iteraţia