Cap. 3. Retele Neurale

35
Partea a II-a Tehnologii avansate în SEE: Inteligenţă artificială

description

Cap. 3. Retele Neurale

Transcript of Cap. 3. Retele Neurale

  • Partea a II-aTehnologii avansate n SEE:Inteligen artificial

  • Cap 3. Reele neuronale artificiale Reelele Neuronale Artificiale (RNA) sunt sisteme dinamice de prelucrare a informaiei, formate dintr-un numr mare de elemente neuronale de prelucrare, interconectate. RNA se caracterizeaz prin procesare paralel, nvare din exemple, comportare bun n regim de date parial perturbate, iar problema analizat nu trebuie formalizat prin reguli clare. Dou direcii distincte ce constituie modelele dominante (paradigmele) ale inteligenei artificiale: Paradigma logico-simbolic care presupune mecanisme de reprezentare simbolic a cunotinelor i utilizarea diferitelor modele logice pentru a deduce noi cunotine din faptele memorate n baza de cunotine a sistemului; Paradigma conexionist prin care s-a introdus un nou concept de calcul calculul neuronal i a generat realizri cunoscute sub numele de RNA.O alt abordare pornete de la urmtoarele premise:Nu sunt cunoscute modelul matematic i algoritmul pentru gsirea soluiei problemei, iar identificarea formalismului logico-matematic de rezolvare este foarte dificil sau imposibil;Sistemul informatic trebuie s fie capabil s nvee din exemple (experien), s se autoinstruiasc i s gseasc singur soluii; Sistemul trebuie s se poat adapta unei palete largi de probleme.

  • Cele mai atractive caracteristici ale RN sunt:

    posibilitatea prelucrrii total paralele, asigurnd construirea unor arhitecturi deosebit de performante, rspunsurile fiind oferite n timp real;

    nvare din exemple (supervizat sau nesupervizat) a fenomenului pentru care se antreneaz;

    procesul care este prezentat n perioada de antrenare nu trebuie descris prin reguli clare. Aceast caracteristic face uoar modelarea unor procese complexe, a cror legi de funcionare sunt fie prea complicate, fie sunt neclare din punct de vedere analitic;

    comportare bun n situaia unui set de date de intrare incomplet, performan datorat capacitii de a asocia datele de intrare disponibile cu setul (sau seturile) complet (complete) de date de antrenare cu care rezoneaz cel mai bine;

    comportarea bun n regim de date de intrare parial greite, datorit aceluiai mecanism de lucru prezentat anterior;

    funcionarea relativ corect i n situaia n care anumii neuroni se defecteaz, datorit memorrii distribuite a informaiei n reea. Astfel, orice neuron particip la formarea potenialilor neuroni de ieire pentru toate seturile de vectori de intrare (antrenare). 3.1 Reele neuronale artificiale

  • 3.2 Analogia ntre structura sistemului nervos i reelele neuronale artificialeCelula nervoas are cu unele excepii urmtoarea structur (fig. 3.1):

    mai multe dendrite ramificate prin care recepioneaz informaii diferite de la ali neuroni;corpul celulei care realizeaz o prelucrare a stimulilor informaiilor primite i elaboreaz rspunsul;un axon o fibr unic care transmite rspunsul elaborat ctre alte celule;sinapse ramificaii ale axonului care realizeaz legturi cu ali neuroni (axonul unei celule umane realizeaz n medie 103 legturi sinaptice cu ali neuroni). Fig. 3.1. Structura celulei nervoase.

  • 3.3 Modele formale ale neuronului artificialNeuronul formalEste un element de procesare a informaiei care modeleaz, de o manier simplificat, neuronul real. Cea mai simpl versiune de neuron formal este un automat linear cu dou stri (fig. 3.2): activ (+1) i inactiv ( 1). Unele modele de RNA, folosesc convenia activ (+1) i inactiv (0).Neuronul formal are o structur asemntoare neuronului uman, fiind o unitate elementar de procesare care realizeaz o operaie simpl pe o mrime de intrare pentru a produce o mrime de ieire. Acesta este alctuit dintr-un corp, un set de intrri i o ieire. Fig. 3.2. Structura neuronului formal.

  • 3.3 Modele formale ale neuronului artificial

  • 3.3 Modele formale ale neuronului artificialFunciile de activare

  • 3.3 Modele formale ale neuronului artificial

  • 3.3 Modele formale ale neuronului artificial

  • Modelul McCulloch-Pits (MCP), reprezint primul model formal al neuronului i de altfel i cel mai simplu i a fost propus de W. McCulloch i S. Pitts n anul 1943.

    Funcia de baz a acestui neuron este aceea c, folosind o anumit schem, adun ponderat intrrile i produce o ieire, numai dac suma respectiv depete o valoare de prag Modelul formal de neuron MCP utilizeaz ca funcie de transfer funcia treaptFig. 3.4. Modelul formal al unui neuron McCulloch-Pits. 3.3 Modele formale ale neuronului artificial

  • 3.3 Modele formale ale neuronului artificial(3.5)

  • 3.3 Modele formale ale neuronului artificialNeuronul clasificator sau perceptronul Pornind de la modelul MCP, psihologul Rosenblatt (1957) a introdus noiunea de perceptron sau neuron clasificator (fig. 3.5). Fig. 3.5. Modelul perceptronului. Ecuaiile de funcionare ale perceptronului sunt urmtoarele:(3.6)

  • 3.3 Modele formale ale neuronului artificialFig. 3.6. Comportarea perceptronului n cazul unei clasificri binare.Modelul astfel definit al perceptronului poate fi utilizat n clasificarea unei mulimi de vectori de intrare n dou clase, fie A, corespunztoare ieirilor , fie B corespunztoare ieirilor . Elementele clasei A sunt separate de elementele clasei B atunci cnd, care determin frontiera celor dou semispaii n spaiul cu n dimensiuni (fig. 4.6).

  • Etapa de nvare are ca scop calculul ponderilor i al valorii pragului de activare pe baza unei mulimi de M exemple, pentru fiecare exemplu specificndu-se valorile de intrare mpreun cu ieirea y corespunztoare clasei A sau clasei B. Informal, corecia ponderilor se face astfel: dac pentru un exemplu perceptronul se activeaz cnd ar trebui s fie inactiv, se reduc ponderile wi cu o cantitate proporional cu xi, iar dac perceptronul nu se activeaz dei ar trebui s o fac, se crete wi cu o cantitate proporional cu xi 3.3 Modele formale ale neuronului artificialSemnificativ este faptul c structura neural a perceptronului este prima nzestrat cu un algoritm de nvare supervizat. Acest algoritm modific valorile ponderilor ori de cte ori la intrarea reelei este prezentat o configuraie (pattern) incorect clasificat. Dup un numr finit de iteraii, ponderile capt valori stabile, care corespund nvrii frontierelor de separaie ntre configuraii aparinnd claselor diferite. n funcionarea perceptronului se disting dou etape: de nvare pe baza exemplelor i apoi, de clasificare a exemplelor necunoscute.

  • 3.3 Modele formale ale neuronului artificial

  • 3.3 Modele formale ale neuronului artificial

  • 3.4 Structuri ale reelelor neuronale artificiale Structura general n general, neuronul formal calculeaz numai suma ponderat a intrrilor, asupra creia se aplic o funcie de activare ce are n general o form neliniar. Pentru ndeplinirea unor funcii care s fac posibil abordarea unor probleme complexe, de interes practic, este necesar ca neuronii s fie asociai ntr-un sistem numit reea neuronal.Fig. 3.9. Arhitectura tipic a unei RNA.

  • Reelele neuronale sunt organizate pe straturi; reeaua din figura 3.9 conine trei straturi de neuroni, dintre care primul este stratul de intrare, iar ultimul este stratul de ieire, stratul intermediar purtnd denumirea de strat ascuns. Singurele straturi care realizeaz procesarea propriu-zis a informaiei sunt stratul ascuns i cel de ieire. Neuronii din primul strat au numai rolul de a prelua mrimile de intrare n reea; de aceea aceti neuroni fie nu au funcii de activare, fie folosesc funcii de activare identitate ( ). Legturile dintre straturile RNA se realizeaz prin conexiuni sinaptice ponderate. Pentru RNA din figura 3.9, fiecare neuron dintr-un strat este legat cu toi neuronii din stratul urmtor i nu exist legturi ntre straturile neconsecutive (de exemplu intrare-ieire). O astfel de structur este cunoscut sub denumirea de RNA complet conectat. 3.4 Structuri ale reelelor neuronale artificiale Structura RNA este descris complet de matricea ponderilor conexiunilor dintre dou straturi consecutive [W], ale crei elemente indic influena pe care ieirea neuronului i din stratul inferior o are asupra activrii neuronului j din stratul superior.

  • 3.4 Structuri ale reelelor neuronale artificiale RNA i dovedesc capacitatea de tratare global, asociind neuronii prin intermediul unor ponderi ( ). Ansamblul ponderilor W constituie parametrii ce caracterizeaz, ntr-o manier absolut, procesul modelat de reea. Astfel, antrenarea reelei necesit o strategie de ajustare a ponderilor respective un algoritm de antrenare. n cadrul antrenrii se prezint reelei neuronale un numr de exemple (intrri/ieiri), ale cror atribute sunt cunoscute i reprezentative pentru modelul de proces avut n vedere. Ansamblul respectiv de exemple se numete, ca i n cazul arborilor de decizie, mulime de antrenare. Proprieti ale RNA:fiecare neuron acioneaz independent de ceilali neuroni din acelai strat; ieirea unui neuron depinde numai de semnalele ce se aplic pe conexiunile sinaptice de intrare;activarea fiecrui neuron depinde numai de informaii cu caracter local; informaia ce este prelucrat de neuron provine numai de pe conexiunile adiacente, nefiind necesar cunoaterea strilor altor neuroni cu care neuronul considerat nu are legturi directe;numrul mare de conexiuni existente asigur un grad ridicat de rezervare i uureaz reprezentarea distribuit a informaiei. Primele dou proprieti permit funcionarea eficient a RNA n paralel, iar ultima proprietate le confer o sensibilitate redus fa de posibilele perturbaii i caliti de generalizare greu de obinut cu sistemele clasice de calcul.

  • 3.4 Structuri ale reelelor neuronale artificiale Perceptronul multistrat MLP Perceptronul, unitatea funcional a unei reele neuronale, este capabil s realizeze o clasificare binar (n dou clase). Pentru a obine o clasificare ntr-un numr mai mare de clase ( ) se va utiliza o structur cu mai muli perceptroni conectai n paralel. n acest caz, intrrile sunt conectate la fiecare neuron, obinndu-se astfel o structur conexionist cu n intrri i m ieiri, numrul de ieiri fiind egal cu numrul de clase. Un exemplu este clasificat ca aparinnd clasei , dac ieirea este activ, restul ieirilor fiind inactive Fig. 3.10. Structur cu m neuroni

  • 3.4 Structuri ale reelelor neuronale artificiale Datorit acestui tip de organizare stratificat, ca n figura 4.10, asemenea reele neurronale poart denumirea de perceptron multistrat (Multi Layer Perceptron MLP). Celulele elementare ale MLP se numesc neuroni i se deosebesc de perceptronul definit de Rosenblatt prin utilizarea unor funcii de activare de tip sigmoid, n locul funciei treapt. Perceptronul multistrat (MLP) reprezint un model de RNA cu activare direct, care conine unul sau mai multe straturi de neuroni ntre stratul de intrare i stratul de ieire. Aceste straturi suplimentare reprezint nivelurile ascunse ale perceptronilor multistrat. n figura 3.12 se prezint un perceptron multistrat cu m ieiri i un strat ascuns. Fig. 3.12. Perceptron multistrat cu un singur strat ascuns.

  • 3.4 Structuri ale reelelor neuronale artificiale (3.8)

  • 3.4 Structuri ale reelelor neuronale artificiale Reele neuronale backpropagation Perceptronii multistrat cu mai multe ieiri i funcii de transfer sigmoidale se mai numesc i reele backpropagation, denumire care provine de la algoritmul de nvare utilizat de aceste structuri i anume algoritmul de propagare napoi a erorii introdus de Rumelhart i membrii grupului Parallel Distributed Processing n 1986. Valorile intrrilor acestor reele sunt valori reale cuprinse n intervalul [0, 1] i funcia de transfer trebuie s fie continu i derivabil pe domeniul de definiie. De obicei se utilizeaz urmtoarea funcie sigmoid: (3.9) Se observ c dac suma intrrilor este 0, valoarea ieirii este i, pe msur ce suma intrrilor crete, ieirea se apropie de valoarea +1. Pe msur ce suma intrrilor scade, valoarea ieirii se apropie de 0. Datorit caracterului funciei de transfer, valorile ieirilor nu vor putea fi niciodat 0 sau 1. ntr-un proces de clasificare, fiecare ieire corespunde unei regiuni de decizie sau unei clase; pentru un exemplu necunoscut se selecteaz clasa corespunztoare ieirii cu cea mai mare valoare, de obicei aceea care tinde la valoarea +1.

  • Funcionarea unei reele perceptron multistrat cuprinde dou etape: etapa de nvare n care, pe baza mulimii de exemple cunoscute, se sintetizeaz ponderile i valorile pragurilor de activare i etapa de recunoatere (testare), n care reeaua este utilizat pentru a clasifica mulimi de valori necunoscute.

    Algoritmul de nvare al reelelor backpropagation cuprinde dou etape principale:

    parcurgere direct a reelei, de la intrri spre ieiri, n care se activeaz reeaua i se determin valorile ieirilor;

    parcurgere napoi a reelei, de la ieiri spre intrri, n care ieirile calculate se compar cu ieirile din exemple i se determin o estimare a erorii, aceast estimare a erorii fiind propagat napoi i utilizat la actualizarea ponderilor. 3.4 Structuri ale reelelor neuronale artificiale

  • Algoritmul reelei backpropagation 3.4 Structuri ale reelelor neuronale artificiale

  • 3.4 Structuri ale reelelor neuronale artificiale

  • 3.4 Structuri ale reelelor neuronale artificiale

  • 3.4 Structuri ale reelelor neuronale artificiale

  • 3.4 Structuri ale reelelor neuronale artificiale Observaii: n situaia n care este satisfcut criteriul de terminare, algoritmul a reuit (reeaua a nvat), n caz contrar, reeaua nu a nvat. Pentru a putea gsi o soluie, fie se modific viteza de antrenare, fie se aleg alte valori iniiale pentru ponderi, sau ambele propuneri.

    Algoritmul de nvare backpropagation poate fi vzut, la fel ca n cazul perceptronului, ca un proces de cutare, al crui spaiu de cutare este reprezentat de toate combinaiile posibile de ponderi i valori de deplasare. Un algoritm backpropagation poate ajunge s calculeze un set de ponderi care nu rezolv problema (nu clasific corect exemplele). Cu alte cuvinte, nu exist un analog al teoremei de convergen a perceptronului pentru perceptronii multi-strat.

    S-a constatat c aceste reele neuronale se comport bine de cele mai multe ori, mai ales pentru un numr mare de ponderi, deci de legturi. Reelele de tip backpropagation, dei mult utilizate la ora actual, prezint dezavantajul c timpul de instruire este relativ ridicat n principal datorit unui factor de nvare desemnat interactiv. Chiar i pentru cazuri simple, numrul de etape necesar pentru calcularea unor ponderi corecte este extrem de mare. n plus, numrul de exemple necesar crete relativ exponenial cu dimensiunea reelei.

  • 3.4 Structuri ale reelelor neuronale artificiale

  • 3.4 Structuri ale reelelor neuronale artificiale

  • 3.4 Structuri ale reelelor neuronale artificiale Aceste erori sunt propagate de la stratul de ieire la stratul ascuns i apoi la nivelul stratului de intrare: semnalul de eroare al unui neuron din stratul ascuns poate fi determinat n funcie de semnalul de eroare al neuronilor din stratul de ieire, semnal propagat napoi spre intrare. De aici a provenit i denumirea algoritmului cu cei doi pai, adic propagarea nainte a semnalului i propagarea napoi a erorii n procesul de antrenare. n cazul implementrii practice a acestui algoritm, actualizrile se realizeaz pentru un singur exemplu la un moment dat.Alegerea parametrilor MLP n general, este acceptat ideea c MLP poate aproxima cu o precizie foarte bun orice funcie continu neliniar, ns cu preul creterii dimensiunilor reelei. Teorema lui Kolmogorov d i numrul unui asemenea MLP: M, , N. Numerele M i N reprezint numrul de elemente din primul strat (care nu efectueaz procesri), respectiv din ultimul strat.

  • 3.4 Structuri ale reelelor neuronale artificiale Unele recomandri pentru construcia reelei MLP:

    Numrul neuronilor din stratul de intrare depinde de specificul problemei, n particular, de numrul de intrri considerate n aplicaia respectiv;

    Dimensiunile stratului de ieire depind, de asemenea, de specificul problemei, precum i de ali factori, cum ar fi: tipul mrimilor de ieire (analogice sau binare), existena sau absena unei ieiri speciale pentru semn etc. Cu alte cuvinte, numrul neuronilor din stratul de ieire depinde de forma i de structura n care se doresc a fi prezentate estimrile pentru mrimile de ieire;

    Numrul neuronilor din stratul ascuns. n principiu, se recomand s se foloseasc un numr ct mai mic de neuroni ascuni, deoarece fiecare neuron ascuns multiplic numrul conexiunilor. Totodat, numrul neuronilor din stratul ascuns poate fi apreciat de dimensiunile exemplelor de intrare.

    O posibilitate de dezvoltare a reelei, cunoscut sub denumirea de Cascade Correlation, pornete de la un singur neuron ascuns i, pe durata antrenrii, creeaz neuroni suplimentari, n msura n care acetia contribuie la mbuntirea performanelor;

  • 3.4 Structuri ale reelelor neuronale artificiale

  • 3.4 Structuri ale reelelor neuronale artificiale