Retelele Neuronale
CUPRINS
INTRODUCERE
CAPITOLUL I. REȚELELE NEURONALE
1.1. Modelarea neuronului artificial
1.2. Arhitecturi de rețele neuronale
1.3. Tipologia rețelelor neuronale
1.3.1. Criterii de aplicabilitate
1.3.1.1. Rețea neuronală de tip perceptron
1.3.1.2. Perceptronul multistrat
1.3.1.3. Rețele backpropagation
1.3.1.4. Rețele neuronale care se bazează pe funcții radiale
1.3.1.5. Rețeaua neuronală Hopfield
1.3.1.6. Rețeaua neuronală Kohonen
1.3.2. Domenii de aplicabilitate ale rețelelor neuronale
CAPITOLUL AL II-LEA. REȚELELE NEURONALE ARTIFICIALE ȘI
CALCULUL NEURONAL
2.1. Noțiuni generale
2.1.1. Definiția rețelelor neuronale artificiale
2.1.1.1. Stadiul cunoașterii în teoria rețelelor neuronale artificiale
2.1.2. Specificul calcului neuronal
2.1.3. Structura unei rețele neuronale artificiale
2.1.4. Ce pot și ce nu pot face rețelele neuronale
2.1.5. Calculul neuronal în comparație cu calculul clasic și sistemele
expert
2.1.6. Scurt istoric
2.2. Topologii de rețele neuronale artificiale cu și fără dinamică
2.2.1. Rețele neuronale artificiale multistrat
2.2.2. Rețele neuronale artificiale cu dinamică externă
2.2.3. Rețele neuronale artificiale cu dinamică internă
2.2.3.1. Rețele cu neuroni memorie
2.2.3.2. Rețele neuronale Elman
2.2.3.3. Rețele neuronale Jordan
2.2.3.4. Rețele neuronale artificiale multistrat cu dinamică mixtă
2.2.4. Rețele neuronale artificiale de tip RBF cu dinamică
2.3. Algoritmi de antrenare pentru rețele neuronale artificiale
2.3.1. Metode euristice de îmbunătățire a algoritmului backpropagation
2.3.1.1. Metoda momentum
2.3.1.2. Rata de învățare adaptivă
2.3.1.3. Algoritmul resilient backpropagation
2.3.2. Algoritmul gradientului conjugat
2.3.3. Algoritmul quasi-Newton
2.3.4. Algoritmul Levenberg-Marquardt
2.3.5. Algoritm de antrenare bazat pe filtrul Kalman extins
2.3.6. Algoritmi de antrenare pentru rețele neuronale cu dinamică
2.3.6.1. Considerații generale
2.3.6.2. Back-Propagation-Through-Time (BPTT)
2.3.6.3. Back-Propagation-Through-Time trunchiat
2.3.6.4. Algoritmul de învățare în timp real recurent
2.4. Identificarea sistemelor folosind rețele neuronale artificiale
2.5. Conducerea sistemelor folosind rețele neuronale artificiale
CAPITOLUL AL III-LEA. METODOLOGII DE IDENTIFICARE CU REȚELE
NEURONALE MULTISTRAT ȘI INTERN
RECURENTE
3.1. Aspecte generale
3.2. Identificarea sistemelor cu ajutorul rețelelor neuronale
3.2.1. Problematica identificării
3.2.2. Black Boxes
3.2.3. Alegerea regresorilor pentru modelarea cu ajutorul rețelelor
neuronale
3.2.4. Modele dinamice cu ajutorul rețelelor neuronale
3.2.5. Procedura de identificare cu ajutorul rețelelor neuronale
3.3. Identificarea literelor scrise de mână folosind reșele neuronale interne
recurente (IRNN)
3.3.1. Considerații generale
3.3.2. Identificarea sistemelor neliniare folosind IRNN
3.3.3. Algoritm de antrenare IRNN
3.3.4. Considerații asupra algoritmului de antrenare IRNN
CAPITOLUL AL IV-LEA. CONTRIBUȚII PROPRII
4.1. Tehnologii informatice folosite
4.2. Datele de antrenament
4.2.1. Precodificarea datelor
4.2.2. Decuparea literelor din imagini
4.3. Proiectarea rețelei neuronale artificiale
4.4. Descrierea aplicației
4.4.1. Cerințe sistem
4.4.2. Instalarea aplicației
4.4.3. Meniul aplicației
4.4.4. Meniul preprocesare date
4.4.4.1. Decuparea imaginilor
4.4.4.2. Crearea fișierului text
4.4.4.3. Decuparea literelor din imagini
4.4.5. Testarea rețelei
4.4.5.1. Testarea rețelei pe o imagine
4.4.5.2. Testarea rețelei pe mai multe imagini
4.4.5.3. Testarea rețelei pe mai multe imagini precodificate
4.5. Rezultate și interpretări
4.5.1. Recunoașterea unei litere scrise de mână
4.5.2. Recunoașterea unei serii de litere
4.6. Despre program
CONCLUZII ȘI PROPUNERI
BIBLIOGRAFIE
INTRODUCERE
CAPITOLUL I
REȚELELE NEURONALE
1.1. Modelarea neuronului artificial
Neuronul artificial este denumit câteodată procesor elementar, sau nod, pentru că încearcă să imite structura și funcționarea neuronuui biologic. Cel mai răspândit model pornește de la modelul elaborat în anul 1943 de către McCulloch-Pitts. Conform acestui model, neuronul artificial este alcătuit dintr-un anumit număr de intrări, fiecare intrare având propria pondere sinaptică.
Figura nr. 1. Structura neuronului biologic
Figura nr. 2. Modelul neuronului artificial
Sumatorul destinat însemnării intrărilor ponderate este o altă parte componentă a modelului neuronului artificial, model ilustrat în figura de mai sus.
Rezultatul căpătat în urma însumării, este supranumit intrare netă.
Semnalul de ieșire al neuronului, pentru limitarea amplitudinii, este întrevăzut cu o funție de activare, în care indică treshold (valoarea pragului de activare neuronală). Adesea, intrarea netă este mărită prin termenul denumit factor al deplasării scării (bias), reprezentând negativul pragului de activare. Valoarea se numește potențial de activare.
Funcția de activare este frecvent o funcție neliniară. Cele mai importante funcții de activare sunt: funcția prag, funcția prag simetrică (funția signum), funcția sigmoid, funcția tangentă hiperbolică.
Cele mai des folosite funcții de activare la impementarea unei rețele neuronale, sunt funcțiile tangentă hiperbolică și sigmoid. Unul din motive, este calculul simplu al derivatelor acestora.
Figura nr. 3. Funcții de activare tipice
Comparând modelul neuronului biologic cu cel artificial putem concluziona că, arhitectura și trăsăturile rețelelor neuronale artificiale depind de problemele pe care le are de rezolvat și de aceea sunt proiectate pentru rezolvarea problemelor specificate. Neuronul real produce la ieșire, o secvență de impulsuri, spre deosebire de cel artificial, care produce o anumită valoare. Reprezentarea ratei de activare (valoarea) printr-un singur număr, face ca informația care ar fi putut să fie conținută de acel exempu, în faza impulsurior, să fie ignorată.
Anumite celule nervoase biologice realizează o însumare neliniară a intrărilor, fiind posibilă existența operațiilor logice (ȘI, SAU, NU), operații logice realizate la nivelul dendritelor. La nivelul ieșirii neuronilor se constată că nu există o modificare a modului sincron și faptul că nu toți neuronii au același tip de întârziere, pentru că mediatorul chimic (cantitatea de substanță transmițătoare) eliberat la nivelul sinapsei poate să varieze imprevizibil, pentru neuronul artificial. Acest fenomen este aproximat prin intermediul funcției de activare.
1.2. Arhitecturi de rețele neuronale
O structură compusă dintr-un număr mare de procesoare elementare interconectate care operează în paralel, în vederea îndeplinirii unei sarcini specifice, poartă denumirea de rețea neuronală artificială, prescurtat RNA.
În funcție de posibilitațile de calcul necesare și de problemele ce trebuie rezolvate exită o varietate de structuri de rețele. În acest caz rețeaua neuronală este privită ca un graf orietat în care neuronii sunt nodurile, iar arcele orientate, sunt legăturile dintre neuroni. Rețelele neuronale se împart în două categorii principale din punctul de vedere al construcției lor: rețele feed forward si retelele recurente.
În cazul rețelelor neuronale artificiale cu propagare înainte a semnalului (feedforward), câmpul receptiv al unui neuron, provine doar din stratul sau straturile inferioare celui din care face parte neuronul. Rețelele feedforward pot fi total sau parțial conectate.
În cazul în care anumite conexiuni sinaptice lipsesc, se spune că rețeaua neuronală artificială este parțial conectată. Rețelele neuronale total conectate au un caracter general, putând fi folosite pentru rezovarea unui spectru larg de probleme, exitând, uneori, rezultate necorespunzătoare.
Rețeua neuronală artificială parțial conectată introduce anumite restrângeri care vizează chiar cunoștințele apriorice în legătură cu problema de rezovat, reducând și gradul de generalitate al unei rețele neuronale. Are loc o extragere a trăsăturilor locale, iar în straturile ce urmează, acestea sunt combinate formându-se trăsături de ordin superior.Putem concluziona faptul că rețelele neuronale artificiale parțial conectate pot oferi rezultate mai bune decât rețelele neuronale artificiale total conectate.
Figura nr. 4. Rețea neuronală artificială feedforward total conectată
Figura nr. 5. Rețea neuronală artificială feedforward parțial conectată
Rețele neuronale artificiale recurente se caracterizează prin existența unui semnal de reacție, din partea neuronilor straturilor superioare, pentru neuronii straturilor inferioare, sau, semnalul de reacție poate să provină de la ieșirile neuronilor aceluiași strat.
Figura nr. 6. Rețea neuronală artificială recurentă
1.3. Tipologia rețelelor neuronale
În acest subcapitol prezentam o clasă foarte importantă de rețele neuronale artificiale de tip feedforward, cu propagare înainte a semnalului. Este vorba de perceptronul simplu și perceptronul multistrat (Multilayer Perceptron), care este o extensie a perceptronului.
1.3.1. Criterii de aplicabilitate
Cei care au fundamentat principiile teoretice despre perceptronul simplu și multistrat sunt Rosemblatt, Windrow, Rumelhart, Williams și Hinton. Ultimii autori enumerați au fundamentat celebrul algoritm de antrenament pentru rețeaua neuronală Multlayer Perceptron, și anume algoritmul backpropagation, algoritmul de propagare înapoi a erorii.
1.3.1.1. Rețea neuronală de tip perceptron
Dacă funcția de activare ar fi de tip treaptă unitate, putem spune că perceptronul simplu este o particuarizare a modelului McCulloch-Pitts al neuronului artificial. Arhitectura acestei rețele este prezentată în figura următoare.
Figura nr. 7. Arhitectura perceptronului simplu
Scopul acestui de tip de rețea neuronală este clasificarea în una din cele două clase disponibile.
În concluzie, perceptronul simplu, este folosit cu succes doar într-un caz particular, al clasificării tiparelor liniar separabile(tipare care sunt situate pe o parte și pe cealaltă a unui hiperplan).
1.3.1.2. Perceptronul multistrat
Perceptronul multistrat (rețea neuronală de tip perceptron, cu mai multe straturi) este o generalizare a perceptronului prezentat mai sus. Această rețea neuronală artificială este de tip feedforward, adică cu propagare înainte a semnalului și este compusă din: un strat de intrare; unul sau mai multe straturi ascunse; strat de ieșire.
Figura nr. 8. Perceptron cu două straturi
Primul strat al perceptronului multitrat, cuprinde neuroni vituali, care efectuează doar o multiplexare, nu o prelucrare de semnal, prelucrarea propriu-zisă are loc în stratul intermediar, și în cel de ieșire.
1.3.1.3. Rețele backpropagation
Rețelele backpropagation sunt rețele neuronale, cu activare directă, care sunt formate din unul sau mai multe straturi de noduri, între nodurile de intrare și cele de ieșire. Aceste straturi suplimentare înfățișează nivelele ascunse ale perceptronilor multi-nivel. Acestă rețea a fost introdusă pentru prima dată, de G. E. Hinton, R. J. Wiliams și E. Rumelhart în anul 1986 și este una din cele mai puternice tipuri de rețele neuronale.
Structura rețelei de tip backpropagation este asemănătoare cu cea a rețelei de tip Multilayer Perceptron, doar că folosește un algoritm de antrenare diferit, și anume backpropagation.
Figura nr. 9. Arhitectura rețelei backpropagation
1.3.1.4. Rețele neuronale care se bazează pe funcții radiale
O altă abordare caracteristică a modului în care se realizează o rețea neuronală artificială este abordarea ca o problemă de aproximare a unei curbe în plan multidimensional. În acest caz, învățarea este ecte.
În cazul în care anumite conexiuni sinaptice lipsesc, se spune că rețeaua neuronală artificială este parțial conectată. Rețelele neuronale total conectate au un caracter general, putând fi folosite pentru rezovarea unui spectru larg de probleme, exitând, uneori, rezultate necorespunzătoare.
Rețeua neuronală artificială parțial conectată introduce anumite restrângeri care vizează chiar cunoștințele apriorice în legătură cu problema de rezovat, reducând și gradul de generalitate al unei rețele neuronale. Are loc o extragere a trăsăturilor locale, iar în straturile ce urmează, acestea sunt combinate formându-se trăsături de ordin superior.Putem concluziona faptul că rețelele neuronale artificiale parțial conectate pot oferi rezultate mai bune decât rețelele neuronale artificiale total conectate.
Figura nr. 4. Rețea neuronală artificială feedforward total conectată
Figura nr. 5. Rețea neuronală artificială feedforward parțial conectată
Rețele neuronale artificiale recurente se caracterizează prin existența unui semnal de reacție, din partea neuronilor straturilor superioare, pentru neuronii straturilor inferioare, sau, semnalul de reacție poate să provină de la ieșirile neuronilor aceluiași strat.
Figura nr. 6. Rețea neuronală artificială recurentă
1.3. Tipologia rețelelor neuronale
În acest subcapitol prezentam o clasă foarte importantă de rețele neuronale artificiale de tip feedforward, cu propagare înainte a semnalului. Este vorba de perceptronul simplu și perceptronul multistrat (Multilayer Perceptron), care este o extensie a perceptronului.
1.3.1. Criterii de aplicabilitate
Cei care au fundamentat principiile teoretice despre perceptronul simplu și multistrat sunt Rosemblatt, Windrow, Rumelhart, Williams și Hinton. Ultimii autori enumerați au fundamentat celebrul algoritm de antrenament pentru rețeaua neuronală Multlayer Perceptron, și anume algoritmul backpropagation, algoritmul de propagare înapoi a erorii.
1.3.1.1. Rețea neuronală de tip perceptron
Dacă funcția de activare ar fi de tip treaptă unitate, putem spune că perceptronul simplu este o particuarizare a modelului McCulloch-Pitts al neuronului artificial. Arhitectura acestei rețele este prezentată în figura următoare.
Figura nr. 7. Arhitectura perceptronului simplu
Scopul acestui de tip de rețea neuronală este clasificarea în una din cele două clase disponibile.
În concluzie, perceptronul simplu, este folosit cu succes doar într-un caz particular, al clasificării tiparelor liniar separabile(tipare care sunt situate pe o parte și pe cealaltă a unui hiperplan).
1.3.1.2. Perceptronul multistrat
Perceptronul multistrat (rețea neuronală de tip perceptron, cu mai multe straturi) este o generalizare a perceptronului prezentat mai sus. Această rețea neuronală artificială este de tip feedforward, adică cu propagare înainte a semnalului și este compusă din: un strat de intrare; unul sau mai multe straturi ascunse; strat de ieșire.
Figura nr. 8. Perceptron cu două straturi
Primul strat al perceptronului multitrat, cuprinde neuroni vituali, care efectuează doar o multiplexare, nu o prelucrare de semnal, prelucrarea propriu-zisă are loc în stratul intermediar, și în cel de ieșire.
1.3.1.3. Rețele backpropagation
Rețelele backpropagation sunt rețele neuronale, cu activare directă, care sunt formate din unul sau mai multe straturi de noduri, între nodurile de intrare și cele de ieșire. Aceste straturi suplimentare înfățișează nivelele ascunse ale perceptronilor multi-nivel. Acestă rețea a fost introdusă pentru prima dată, de G. E. Hinton, R. J. Wiliams și E. Rumelhart în anul 1986 și este una din cele mai puternice tipuri de rețele neuronale.
Structura rețelei de tip backpropagation este asemănătoare cu cea a rețelei de tip Multilayer Perceptron, doar că folosește un algoritm de antrenare diferit, și anume backpropagation.
Figura nr. 9. Arhitectura rețelei backpropagation
1.3.1.4. Rețele neuronale care se bazează pe funcții radiale
O altă abordare caracteristică a modului în care se realizează o rețea neuronală artificială este abordarea ca o problemă de aproximare a unei curbe în plan multidimensional. În acest caz, învățarea este echivalentă cu aflarea unei suprafețe situate într-un spațiu multidimensional care să corespundă cu cea existentă în datele de intrare. În acest caz, generalizarea rețelelor neuronale artificiale care se bazează pe funcții radiale (RBF – Radial Basis Function) scoate în evidență capacitatea de interpolare a rețelelor neuronae artificiale a datelor de intrare.
Astfel, rețelele neuronale artificiale solicită mai mulți neuroni, însă, antrenarea acestora necesită o perioadă de timp mai mică decât în cazul perceptronului. Acest lucru este determinat de faptul că ieșirile neuronilor sigmoidali, ale stratului ascuns sunt reprezentative pentru regiuni (spații) largi ale spațiului de intrare, comparativ cu neuronii care se bazează pe funcții radiale care determină răspunsuri numai la regiuni relativ mici din spațiu de intrare. Putem concluziona faptul că rețelele neuronale artificiale bazate pe funcții radiale au un randament mai bun atunci când sunt disponibili mai multi vectori de antrenament.
În figura 10 este prezentat modelul unui neuron Radial Basis Function, model în care intrarea netă se constituie din norma diferenței vectoriale.
În figura 11 este reprezentat un mode tipic pentru funcția de activare. Se poate observa faptul că funcția radială are un maxim, dacă intrarea are valoare nulă. În cazul în care distanța dintre și descrește, indicele de valoare la ieșire se mărește. Acest lucru ne facem să tragem concluzia că neuronul radial se comportă aidoma unui detector ce produce 1 la ieșire de fiecare dată când tiparul de intrare este la fel cu vectorul pondere.
Ca structură, o rețea neuronală artificială bazată pe funcții radiale are trei straturi: stratul de intrare (stratul senzorial); stratul ascuns, furnizor de funcții ce constituie baza pentru vectorii de intrare (funcțiile se numesc funcții radiale); stratul de ieșire care este alcătuit din neuroni cu funcții de activare liniară.
Teorema lui Cover în legătură cu separarea tiparelor arată că transformarea spațiului de intrare în spațiul neuronilor ascunși este neliniară, iar transformarea spațiului neuronilor ascunși în spațiul neuronilor de ieșire este liniară.
Transformarea spațiului neliniar într-un spațiu de dimensiune înaltă are o probabilitate mai mare de a fi liniară în comparație cu un spațiu cu dimensiuni mai puține.
Figura nr. 10. Arhitectura unui neuron Radial Basis Function
Figura nr. 11. Forma tipică pentru funcția de activare radială
Figura nr. 12. Arhitectura unei rețele neuronale artificiale bazată pe funcții radiale
1.3.1.5. Rețeaua neuronală Hopfield
Tipul acesta de rețea oferă posibilitatea de a fi utilizată ca memorie asociativă, ori pentru a putea rezova probleme de optimizare. Rețeaua utilizează neuroni cu intrări binare, care la ieșire conțin nelinearități, de tipul limitare hardware.
În figura 13 este prezentată arhitectura unei rețele Hopfield cu N neuroni. Se constată faptul că ieșirea fiecărui neuron este aplicată tuturor neuronilor existenți prin intermediul unor ponderi, fapt ce duce la concluzia că rețeaua aceasta converge în cazul în care ponderile sunt simetrice.
Cu toate că simplitatea acestei rețele o face să fie afectivă, ea prezintă două limitări majore atunci când este folosită ca memorie adresabilă prin conținut.
Prima limitare constă în faptul că numărul de forme prototip ce se dorește a fi stocat și regăsit corect în această rețea, este limitat la cel mult 15% din numărul total de neuroni. Când se dorește stocarea unui număr mai mare de forme prototip, această rețea poate converge către un prototip fictiv.
Cealaltă limitare apare în cazul în care prototipurile memorate în rețea sunt foarte asemănătoare (are număr identic de biți), rețeaua devenind instabilă.
Figura nr. 13. Arhitectura rețelei Hopfield
Când rețeua este folosită ca și clasificator, ieșirea din rețea (după convergență), este necesar să fie comparată cu fiecare prototip memorat, apoi se poate apartenența la o clasă atașată formelor prototip.
1.3.1.6. Rețeaua neuronală Kohonen
Kohonen abordează structura și modul de lucru ale unei rețele neuronale cu autoorganizare, în vederea utilizării unei astfel de rețele pentru a clasifica cifrele arabe de la 0 la 9 în prezența zgomotului.
Rețeaua neuronală utilizată este o rețea nesupervizată ce este capabilă să facă o clasificare a vectorilor ce sunt utiizați la intrarea rețelei prin extragerea similarităților existente între aceștia acest tip de rețea fiind o rețea de tipul cu autopropagare. La baza rețelei se află algoritmul de antrenare al rețelei, axat pe principiul vecinătății, principiu care determină vectori care au caracteristici similare și care sunt aplicați la intrarea rețelei, să poată fi asociați cu neuronii vecini existenți în cadrul rețelei.
Rețeaua Kohonen este alcătuită din două straturi de neuroni, unul din straturile de neuroni de intrare fiind alcătuit dintr-un număr de neuroni egal cu dimensiunea vectorilor aplicați a intrarea în rețea, iar celălalt strat, de neuroni de ieșire fiind alcătuit dintr-un număr de neuroni egal sau mai mare ce numărul de clase în care este necesar să se realizeze clasificarea vectorilor de intrare.
Neuronii aflați în stratul de intrare sunt transparenți neavând ro în prelucrarea informației, ei având numai rolul de a prelucra vectorii aplicați la intrarea în rețea și transmiterea acelor vectori către stratul următor de neuroni.
Al doilea strat de neuroni (cel de ieșire), este alcătuit în concordanță cu numărul claselor în care se face clasificarea vectorilor. În acest caz, neuronilor pot fi aranjați în forme diferite: rețea rectangulară (neuronii ce se află în stratul de ieșire fiind situați în nodurile unei rețele rectangulare plane), rețea liniară (neuronii de ieșire fiind dispuși în linie), rețea circulară (neuronii de ieșire fiind dispuși circular).
Figura nr. 14. Exemplu de rețea neuronală Kohonen rectangulară
1.3.2. Domenii de aplicabilitate ale rețelelor neuronale
Rețelele neuronale sunt folosite într-o gamă foarte largă de aplicații. Din studierea literaturii de specialitate în domeniul aplicativ al rețelelor neuronale, se găsesc aplicații în toate domeniile activității umane. Nu exită domeniu al activității umane (începând cu științele naturii, știinte sociale, activități artistice, sportive, de divertisment, activități industriale și agricole) în care să nu se regăsească aplicații ale calculului neuronal. De aici putem trage concuzia că are un caracter universal, dar, cea mai adecvată utilizare a calculului neuronal o reprezintă domeniile percepției și gândirii umane.
G. W. Cottrell, D. Zipser și P. Munro au utilizat rețelele neuronale în scopul de a comprima eficient informații corespunzatoare unor imagini grafice, care în functie de numărul de culori folosit și de rezoluția de reprezentare, ocupau un spațiu mare de memorare de ordinul a câțiva mega-octeți.
Spațiul de memorare fiind foarte costisitor, iar timpul de transfer al unei imagini inflența spațiul de memorare alocat acelei imagini, a fost necesară compresia imaginior.
Cottrell, Munro si Zipser au conceput un sistem de calcul neuronal care are la bază o rețea neuronală cu trei straturi capabilă de a conprima o imagine și de a decomprima fară distorsiuni.
Cercetătorii companiei Nestor Inc. din S.U.A. au dezvoltat un sistem de calcul neuronal care realizează recunoașterea scrisului de mână, sistem care are drept dispozitiv de intrare a datelor, o tabletă digitizoare, pe care se poate realiza scrierea cu ajutorul unui Light-Pen. Aceasta rețea a fost antrenată cu diferite scrisuri de mână, ea putând să interpreteze un scris de mână oarecare cu o înalta acuitate.
Sitemul de recunoaștere optică a caracterelor permite ca după învățare, rețeaua neuronală să fie capabilă să recunoască o diversitate de scrieri și să facă predicții în legătură cu caracterele ilizibile.
Pentru realizarea imaginilor K. Fukushima a creat un sistem de calcul, care permite recunoașterea cu ușurință a caracterelor. Numele acelui sistem de recunoaștere a formelor, bazat pe rețeaua neuronală construintă este Neocognitronul.
Sistemul este în realitate o rețea neuronală, cu mai multe straturi, care simulează modul de prelucrare a informațiior vizuale, de către cortexul uman. Straturile ascunse de neuroni ale sistemului Neocognitronului au menirea de a identifica trăsături definitorii ale imaginii fară să fie influențate de distorsiuni sau orientare. Formele sunt unic determinate la nivelul stratului de intrare, simultan cu transmiterea informației către stratul de ieșire, astfel se activează numai anumiți neuroni ce corespund unor trăsături definitorii ale imaginii.
Pentru că problemele combinatorii NP-complete (Non Polynomial) necesită timpi de calcul care cresc exponential cu numărul de date de intrare, a fost necesară folosirea cu succes a rețelelor neuronale în rezolvarea problemelor NP-compete.
Cercetatorii D. Tank si J. Hopfield au realizat o rețea neuronală pentru a rezolva problema celebră a comis voiajorului, care trebuia să străbată un număr de orașe folosind drumul cel mai scrut. Au aplicat calculul neuronal atașând o funcție energetică dependentă de starea neuronilor constituenți, prin care minimul funcției energetice să corespundă unei stări stabile a neuronilor, drumul minim fiind astfel regăsit.
Cel care a îmbunătățit rețeaua construită de Tank și Hopfield a fost perfecționată de H. Szu care a obținut soluții mai performante utilizând o funcție energetică care conduce la stări mai stabile.
Sistemele de calcul neuronal au performanțe superioare în comparație cu sistemele expert sau sistemele clasice de calcul. În acest domeniu există o paletă diversificată de aplicații.
Semnificativă este aplicarea rețelei neuronale BackPropagation în domeniul militar, în clasificarea țintelor radar.
Bune rezultate au fost obținute folosind rețeua neuronală BackPropagation la recunoașterea imaginior furnizate de video-camere pentru conducerea unui robot. D. Glover s-a folosit de un procesor optic Fourier pentu digitizarea imaginior video, procesor care lucrează în timp real. Această rețea neuronală a fost costruită din două straturi: strat ascuns cu 20-40 neuroni, iar stratul de ieșire cu un număr corespunzător de neuroni de comandă pentru robot.
Echipa de cercetatori condusă de Glover a scos în evidență fenomenul de supra-antrenament (overtraining), ceea ce indică faptul că folosirea unui număr prea mare de exemple de antrenament poate determina distrugerea datelor memorate anterior. Explicația constă în faptul că rețeaua neuronală se autoconfigurează inițial în concordanță cu tendința statistică a datelor de antrenament iar introducerea unor noi date irelevante poate produce abateri de la tendința statistică generală.
Fenomenul de supra-antrenament constituie principalul neajuns al legior de învățare supervizate ce încearcă să folosească date eronate sau irelevante.
O foarte mare importanță pentru societatea contemporană, pentru a permite analize și prognoze eficiente, o reprezintă modelarea sistemelor financiare si economice. Predicții asupra tendințelor economico-financiare (preț, volum de vânzări, inflație,creștere demografică, consum și resurse energetice, etc.) sunt greu de abordat din cauza numărului imens de parametri și caracterul imprevizibil al variațiilor, fapt ce determină folosirea rețelelor neuronale. Din această cauză marile companii internaționale folosesc sisteme de calcul neuronal, în managementul activităților pe care le desfașoară.
În domeniul activităților industriale ce au ca scop reducerea costului cu forța de muncă prin folosirea roboțior industriali, de o deosebită importanță este problema controlului și conducerii unor sisteme compexe servo-mecanice (roboți industriali). Este foarte important să se găsească formule matematice care sp preîntâmpine erori provocate de variații fizice (temperatură, umiditate, deviații ale organelor în mișcare, ale alinierii axelor). Pentru a preîntâmpina erorile care ar duce la un impact negativ din punct de vedere economic, este necesară o putere de calcul și echipamente speciale care să facă față cerințelor de a realiza produse conforme cu cerințele standard pentru produsele industriale ce trebuie reaizate.
Analizând rezultatele folosite în teoria aproximării rezultă că rețelele neuronale sunt din majoritatea punctelor de vedere net superioare metodelor de aproximare-interpolare polinomiale, prin implementarea unei reguli de calcul ce ne permite să obținem un vector de ieșire m-dimensional cunoscând vectorul de intrare n-dimensional corespunzător și corespunde de fapt unei clase de funcții.
Modul de implementare al calculului neuronal reprezintă un instrument universal cu avantaje si dezavantaje față de modelele de calcul clasic sau cele bazate pe sistemele expert.
Aplicațiile rețelelor neuronale artificiale cuprind o arie foarte largă de domenii, cum ar fi:
Bancar: oportunitatea de acordare a creditelor, verificarea autenticității documentelor;
Militar: identificarea obiectelor, urmărirea țintelor, senzori inteligenți, recunoaștere facială, identificarea semnalelor și imaginilor, ghidarea armelor, procesarea semnalelor sonore;
Electronic: predicție, vedere artificială, controlul proceselor, modelare neliniară, amplasarea componentelor, sinteză vocală, inspecția circuitelor integrate;
Divertisment: jocuri, efecte speciale, animație;
Financiar: predicția indicilor bursieri, ratelor de schimb, aprecierea validității creditelor și solidității firmei;
Medical: proiectarea protezelor, diagnostic automat;
Producție: analiza și proiectarea produselor, controlul procesului de producție, analiza și conducerea procesului de sondare;
Robotică: sisteme de vedere, controlul traiectoriei;
Vorbire: conversația text (vorbire), sinteza vorbirii, recunoașterea vorbirii;
Telecomunicații: traducere în timp real, compresia imaginilor și a datelor, prelucrări de imagini;
Transporturi: planificarea traseului, diagnoza sistemelor de frânare;
RNA sunt foarte utile și interesante în rezolvarea problemelor complexe.
CAPITOLUL AL II-LEA
REȚELELE NEURONALE ARTIFICIALE ȘI CALCULUL NEURONAL
2.1. Noțiuni generale
Inteligența artificială (rețelele neuronale artificiale, sistemele fuzzy, sistemele expert, sistemele evolutive), în conjuncție cu domeniul automaticii, poate oferi soluții alternative pentru rezolvarea unor probleme dificile din domeniul conducerii automate. Această lucrare ia în discuție doar utilizarea rețele neuronale artificiale (RNA).
În general, de-a lungul timpului, s-au evidențiat două tipologii de RNA: RNA fără dinamică și RNA cu dinamică (legături recurente, transformări funcționale, filtre). Fiecare din aceste două categorii prezintă avantaje și dezavantaje. RNA din prima categorie prezintă avantajul că au o convergență destul de bună a algoritmilor de instruire, dar utilizarea lor în rezolvarea unor probleme complexe (de exemplu, identificarea unui sistem cu neliniarități esențiale sau cu o dependență complexă de intrările și ieșirile anterioare) poate fi anevoioasă. Cea de-a doua categorie poate rezolva problemele amintite anterior cu o mai mare ușurință, dar în detrimentul unei convergențe mai slabe algoritmilor de antrenare sau al cerințelor computaționale și de memorie mai mari. De aceea, în această lucrare s-a încercat utilizarea avantajelor fiecărei categorii în elaborarea unor structuri neuronale noi.
În condițiile în care sistemul de studiat (de identificat) poate fi descompus în subsisteme, descompunere ce poate fi sugerată și de proprietățile fizice, chimice, constructive ale sistemului, atunci este recomandabil să se utilizeze această abordare. Este mai simplu de lucrat cu un grup de subsisteme decât cu un întreg sistem, mai ales dacă acesta și un sistem neliniar complex. Similar cu această abordare este și abordarea modulară. Totuși, în această abordare, modulele trebuie să aibă o structură internă bine definită și independentă de celelalte module. De asemenea, legăturile dintre module trebuie să fie puține și bine definite. Aceste considerente permit ca fiecare modul să fie proiectat, analizat și înțeles separat.
2.1.1. Definiția rețelelor neuronale artificiale
Deoarece nu există o definiție general acceptată a noțiunii de rețea neuronală artificială (RNA), se vor fi prezenta opiniile unora dintre cei mai cunoscuți specialiști în domeniu [Hayk 1997], [Koho 1989]. Ideile desprinse din aceste definiții ilustrează cu claritate câteva caracteristici de bază ale RNA, și anume structura paralelă de procesare, capacitatea de a învăța și capacitatea de generalizare. În mod concret, cele expuse în continuare răspund la o serie de întrebări: ce este o rețea neurală artificială? care este legătura cu creierul biologic? unde se aplică această tehnologie? [Zaha 2006].
Simon Haykin (Universitatea Mc Master, Canada) enunță următoarele: O RNA reprezintă un sistem de procesare paralelă care prezintă o capacitate naturală de a acumula experiență și de a o folosi. Se aseamănă cu creierul uman sub două aspecte: cunoștințele sunt dobândite în urma unui proces de învățare; cunoștințele sunt stocate în valorile interconexiunilor dintre neuroni (denumite ponderi sau sinapse). Interesul pentru sinteza unor RNA este motivat de performanțele creierului natural, care oferă dovada concretă că modul de procesare paralel, dublat de toleranța la erori, este nu numai posibil, dar și rapid și eficient. Astfel, din punct de vedere ingineresc, neurobiologia poate fi privită ca o pepinieră de idei noi, posibil de utilizat pentru rezolvarea unor probleme prea complicate pentru metodele tradiționale. Un exemplu concret de întrepătrundere a abordării strict tehnice cu cea biologică îl constituie implementarea așa-numitelor circuite integrate neuromorfice, bazate pe modele ale retinei sau ale urechii interne.
Teuvo Kohonen (Universitatea Tehnologică din Helsinki, Finlanda), enunță următparele: RNA reprezintă ansambluri de elemente de procesare simple (de regulă, adaptive), puternic interconectate și operând în paralel, care urmăresc să interacționeze cu mediul înconjurător într-un mod asemănător creierelor biologice. Următoarele aspecte sunt comune atât RNA cât și celor biologice: reprezentarea și procesarea informației în formă analogică (care permite desfășurarea în paralel a mai multor procese în mod asincron), abilitatea de a efectua operațiuni de natură statistică asupra datelor de lucru (operațiuni de mediere, de regulă condiționată), corecția de erori și degradarea graduală a performanțelor la apariția acestora, capacitate de adaptare la un mediu în continuă schimbare. RNA s-au impus ca instrumente puternice de analiză a unor volume mari de date experimentale, generate de procese fizice ghidate de legi necunoscute, pentru care aceste sisteme pot oferi modele adecvate. Această tehnologie nu își propune ca obiectiv principal obținerea unor circuite motivate anatomic, ci funcțional, astfel încât să beneficiem de metode de procesare eficiente complementare celor tradiționale, disponibile sub forma de algoritmi de calcul și componente hard si soft.
Robert Hecht-Nielsen (Universitatea California din San Diego, S.U.A.) enunță următoarele: O RNA este o structură de procesare distribuită, operând în paralel, formată din procesoare simple (care posedă memorie locală și efectuează operații dependente de informații localizate spațial) interconectate prin legături unidirecționale. Fiecare procesor elementar are o singura ieșire, care este distribuită către un număr nelimitat de alte asemenea procesoare. Caracterul local al operațiunilor efectuate se referă la condiția ca valoarea instantanee a răspunsului fiecărui neuron elementar să depindă exclusiv de valorile instantanee ale semnalelor de intrare și de valorile interconexiunilor aferente acestora. RNA oferă o bază solidă pentru proiectarea unor sisteme complexe de prelucrare a semnalelor. Au fost propuse deja o serie întreagă de module funcționale care realizează sarcini precise și care pot fi interconectate sub forma unor arhitecturi flexibile, pot fi supuse unui proces automat de ajustare a parametrilor specifici și testate cu baze de date corespunzătoare unor aplicații practice concrete. Când o astfel de abordare automatizată la nivel de design de detaliu se va impune, rolul proiectantului uman se va concentra pe aspectele globale, la nivel de schemă-bloc a sistemului.
2.1.1.1. Stadiul cunoașterii în teoria rețelelor neuronale artificiale
Interesul actual generat de rețelele neuronale fuzzy este determinat în mare parte de speranța că aceste tehnologii, bazate pe modelul creierului uman, vor fi capabile să rezolve categorii de probleme aflate acum mult dincolo de capacitățile de rezolvare ale calculatoarelor din ziua de azi (funcții extrem de complexe, din punct de vedere al posibilităților de calcul, pentru calculatoarele numerice convenționale, cum sunt înțelegerea vorbirii sau a stimulilor vizuali, sunt mult mai eficient realizate de sistemele neurologice ale organismelor biologice). Studiul rețelelor neuronale a determinat apariția unor categorii de arhitecturi de rețele care să modeleze capabilitățile creierului uman.
O manieră strictă de evaluare a valorii de adevăr a propozițiilor nu coincide cu modul mult mai flexibil în care gândesc oamenii, în condiții de incompletitudine. Incompletitudinea unei informații se exprimă pe două scări: scara incertitudinii se referă la încrederea care i se acordă informației (dacă sursa de informație, instrumentul de măsură sau expertul sunt complet siguri, demni de încredere, informația este certă); scara impreciziei se referă la conținutul informațional (informația este precisă dacă mulțimea valorilor specificate în enunțul corespunzător este single-ton, adică are o valoare unică).
Un suport teoretic valoros care tratează incompletitudinea este teoria mulțimilor fuzzy. Un tip incipient de logică fuzzy a apărut încă din 1920, propus de matematicianul polonez Jan Lukasiewicz (inventatorul notației poloneze). Sistemul său permitea extinderea valorii de adevăr a unei propoziții la toate numerele reale din intervalul [0,1]. Un număr din acest interval era interpretat drept posibilitatea ca propoziția considerată să fie adevărată sau falsă. Aceste cercetări au dus la apariția teoriei posibilității, o tehnică de raționament în condiții de inexactitate.
În 1965, Lotfi Zadeh a extins teoria posibilității într-un sistem formal de logică matematică. De asemenea, a adus în discuție modalitățile de lucru cu termeni nuanțați ai limbajului natural. Acest instrument de reprezentare și manipulare a termenilor nuanțați se numește logica fuzzy. Logica tradițională consideră că un obiect poate aparține sau nu unei mulțimi. Logica fuzzy permite o interpretare mai flexibilă a noțiunii de apartenență. Astfel, mai multe obiecte pot aparține unei mulțimi în grade diferite.
Termenul Soft Computing a fost introdus de Lotfi Zadeh, cu scopul de a exploata toleranța la imprecizie, incertitudine și adevăr parțial pentru a dobândi flexibilitate, robustețe, costuri scăzute ale soluțiilor și o legătură mai bună cu realitatea. Această caracteristică îl face să difere fundamental de computing-ul convențional (hard), caracterizat tocmai de lipsa impreciziei și a adevărurilor parțiale. Ținta finală ar fi de fapt egalarea și chiar depășirea performanțelor minții umane.
Soft computing-ul se caracterizează printr-un parteneriat al mai multor domenii, dintre care cele mai importante sunt rețelele neuronale, algoritmii genetici, logica fuzzy și raționamentele probabilistice. Relațiile dintre aceste componente sunt prezentate în figura 15.
Figura nr. 15. Componentele soft computing-ului
Având la bază modelul gândirii umane, soft computing-ul grupează aceste domenii, aflate nu într-o relație de tip concurențial, ci una de complementaritate, în care fiecare partener contribuie cu avantajele și tehnicile proprii la soluționarea unor probleme imposibil de rezolvat în alt mod. Astfel, rețelele neuronale au capacitatea de a învăța și de a se adapta, logica fuzzy oferă posibilitatea aproximării, în timp ce algoritmii genetici pot realiza o căutare sistematizată a soluției optime.
Fiecare tehnică inteligentă are unele proprietăți computaționale tipice (de exemplu, capacitatea de a învăța, explicarea deciziilor) care îi conferă aplicabilitatea pentru anumite probleme și prezintă dezavantaje în rezolvarea altora. De exemplu, rețelele neuronale au avantajul recunoașterii modelelor, însă nu pot explica satisfăcător modul în care au ajuns la o concluzie.
Dimpotrivă, sistemele fuzzy pot raționa cu informații imprecise și își pot explica raționamentul, dar nu pot achiziționa automat regulile pe care le utilizează pentru luarea deciziilor. Aceste limitări au fost principalul motiv pentru care s-a încercat crearea de sisteme inteligente hibride, în care două sau mai multe tehnici pot fi combinate pentru a depăși dezavantajele tehnicilor individuale.
Modelarea cu reguli fuzzy, de tip dacă-atunci, este în general potrivită pentru modelarea calitativă. Totuși, în multe situații, datorită incompletitudinii cunoașterii, inerente unor situații reale, această abordare se dovedește insuficientă. De aceea se face apel la unele metode conexioniste, cum ar fi rețelele neuronale. Sistemele neuro-fuzzy sunt astfel capabile să învețe din exemple, să generalizeze pe baza cunoștințelor acumulate și, pe baza datelor primite, să sintetizeze cunoștințe în forma regulilor fuzzy.
În ultimii ani, sistemele neuronale hibride au suscitat un deosebit interes. Această abordare s-a dovedit încununată de succes în diferite domenii, precum diagnoza echipamentelor industriale, robotica sau controlul proceselor dinamice. Motivul principal al studierii sistemelor neuronale hibride este crearea de sisteme de reprezentare subsimbolică, în special a rețelelor neuro-fuzzy. Din punctul de vedere al științelor cognitive, reprezentarea neuronală oferă avantajul omogenității, a capacității de învățare prin exemple și a generalizării, precum și efectuarea de sarcini distribuite, în medii cu date incomplete sau afectate de zgomote. Din punctul de vedere al sistemelor bazate pe cunoștințe, reprezentările simbolice au avantajul interpretării umane, al controlului explicit și al abstractizării cunoașterii.
În inteligența artificială, procedeul tradițional este prelucrarea simbolică. În modelele conexioniste însă, accentul cade pe posibilitățile de învățare. Combinarea celor două abordări este subiectul de cercetare în sistemele hibride, cum ar fi sistemele neuro-fuzzy. Modelele conexioniste sunt instrumente puternice de prelucrare a cunoștințelor, eficiente mai ales în situații în care percepția și reacția sunt fundamentale și unde regulile explicite nu pot fi aplicate în mod natural sau direct. Totuși, învățarea prin exemple nu este o soluție generală, în multe situații entitățile inteligente se bazează pe reguli formulate anterior de experți.
Cele două abordări pot fi utilizate în mod complementar. Aceasta este premisa creării de sisteme hibride inteligente, care combină trăsături conexioniste (neuronale) și simbolice (fuzzy). În astfel de sisteme, mai întâi se introduc informații simbolice în rețeaua neuronală, apoi se folosesc exemplele de instruire pentru rafinarea cunoștințelor inițiale. În final, se procesează rezultatul pentru un set de intrări și, prin metode specifice, se extrag informații simbolice din rețeaua antrenată.
Din momentul în care sistemele fuzzy au fost puse în practică în aplicațiile industriale, proiectanții și-au dat seama de dificultățile care surveneau în mod inerent. Problema găsirii funcțiilor membre potrivite este de multe ori o chestiune de generare de valori și îndepărtarea celor eronate. Aceste soluții sunt greu de găsit, mai ales într-un proces industrial dinamic. De aceea s-a ivit ideea aplicării algoritmilor de învățare sistemelor fuzzy, ceea ce a determinat apariția controllerelor fuzzy adaptabile sau cu auto-organizare.
Sarcinile de lucru complexe pot da naștere la minime locale, de aceea paradigma învățării prin exemple se poate folosi mai mult pentru probleme simple. O rezolvare este împărțirea problemei în subprobleme, rezolvate de diferite module neuro-fuzzy. În timp ce logica fuzzy asigură mecanismele de inferență în cazul incertitudinii cognitive, rețelele neuronale oferă avantajele învățării, adaptabilității, toleranței la defecte, paralelismului și generalizării.
Sistemele neuro-fuzzy moderne au caracteristici care le fac adecvate controlului unor procese industriale: sunt sisteme fuzzy instruite printr-un algoritm de învățare euristic, derivat în general din rețele neuronale, pot fi reprezentate printr-o arhitectură de rețea neuronală feed-forward multistrat și pot fi interpretate în termeni de reguli dacă-atunci. Totuși, într-un sistem real, pot exista zeci de semnale de intrare. Un număr excesiv de intrări poate deteriora transparența modelului considerat și crește complexitatea calculelor. De aceea, este necesară selectarea intrărilor relevante și considerarea de priorități.
Din punct de vedere teoretic, sistemele fuzzy și rețelele neuronale sunt echivalente, deoarece sunt inter-convertibile. Hayashi și Buckley au demonstrat că: orice sistem fuzzy bazat pe reguli poate fi aproximat de o rețea neuronală; orice rețea neuronală (feed-forward multistrat) poate fi aproximată de un sistem fuzzy bazat pe reguli. În practică însă, fiecare are avantajele și dezavantajele sale.
Tabelul nr. 1. Avantaje și dezavantaje ale sistemelor fuzzy și RNA
Sistemele fuzzy prezintă în principal avantajul explicării comportamentului pe baza unor reguli și deci performanțele lor pot fi ajustate prin modificarea acestora. Totuși, achiziționarea cunoștințelor este dificilă iar universul de discurs al fiecărei variabile de intrare trebuie divizat în mai multe intervale și de aceea, aplicațiile sistemelor fuzzy sunt restrânse la domeniile în care sunt disponibile cunoștințele experților iar numărul variabilelor de intrare este relativ mic.
Pentru rețelele neuronale, cunoștințele sunt achiziționate automat printr-un algoritm (de exemplu, back-propagation), dar procesul de învățare este relativ lent iar analiza rețelei antrenate este dificilă (o rețea neuronală este deseori considerată o „cutie neagră”, în care avem acces numai la intrări și la ieșiri, fără a ști precis ce se întâmplă în interior). Nu este posibilă nici extragerea cunoștințelor structurale (reguli) din rețeaua antrenată, nici integrarea de informații speciale despre problemă, pentru a simplifica procedura de învățare.
Utilizarea sistemelor hibride neuro-fuzzy minimizează dezavantajele și maximizează avantajele celor două tehnici. Rețelele neuronale sunt folosite pentru adaptarea funcțiilor de apartenență ale sistemelor fuzzy în aplicațiile de control automat al proceselor dinamice. Deși logica fuzzy permite codarea cunoștințelor de tip expert prin termeni lingvistici, de obicei proiectarea și reglarea funcțiilor de apartenență care definesc cantitativ acești termeni este un demers greoi. Tehnicile de învățare ale rețelelor neuronale pot automatiza procesul și deci pot reduce substanțial costul și timpul de dezvoltare a aplicațiilor, conducând și la creșterea performanțelor. Pentru a depăși problema achiziției cunoștințelor, rețelele neuronale pot fi proiectate să extragă automat reguli fuzzy din date numerice.
Alte abordări presupun folosirea rețelelor neuronale pentru optimizarea unor anumiți parametri ai sistemelor fuzzy sau pentru preprocesarea datelor de intrare în sistemele fuzzy.
Rețelele neuronale și sistemele fuzzy au în comun abilitatea de a opera cu date imprecise într-un spațiu care nu este clar delimitat. Dezavantajele RNA și ale sistemelor fuzzy pot fi depășite prin încorporarea operațiilor fuzzy în structura RNA și prin dotarea sistemelor fuzzy cu capacitatea de a clasifica și a învăța, caracteristică RNA. Astfel, se obține sistemul hibrid neuro-fuzzy reprezentat de rețelele neuro-fuzzy.
O rețea neuronală fuzzy reprezintă o rețea neuronală care dispune de capacitatea de a prelucra informații fuzzy. Într-o astfel de rețea, semnalele de intrare și/sau ponderile conexiunilor și/sau ieșirile sunt submulțimi fuzzy sau mulțimi de valori de apartenență la mulțimi fuzzy. Structura acestui tip de sistem este următoarea:
Figura nr. 16. Structura sistemului fuzzy
Se observă că modulele conexioniste implementează aici funcțiile unui sistem fuzzy. O rețea efectuează fuzzyficarea datelor stricte de intrare, regulile fuzzy sunt realizate pe baza unei alte rețele, iar operația de defuzzyficare este îndeplinită de o a treia rețea, pentru a furniza datele stricte de ieșire. Aceste tipuri de rețele sunt utile în aplicații de regresie fuzzy (descoperirea de relații funcționale între date fuzzy), control, rezolvarea ecuațiilor matriceale fuzzy (folosite în economie) sau clasificare fuzzy.
În cadrul rețelelor neuro-fuzzy, rețeaua neuronală artificială este utilizată pentru generarea automată, în urma unui proces de antrenament, a regulilor fuzzy precum și a funcțiilor de apartenență. Chiar și după ce procesul de antrenament s-a încheiat, RNA modifică baza de reguli și funcțiile de apartenență pe măsură ce „învață” legități specifice semnalelor aplicate la intrare. Pe de altă parte, logica fuzzy este folosită în cadrul mecanismului de interferență și pentru furnizarea, prin defuzzyficare, a unei mărimi de ieșire discrete.
Neuronul fuzzy aproximează modelul McCulloch-Pitts. Diferențele semnificative sunt următoarele: în loc de ponderile scalare wij și funcțiile de activare, neuronul fuzzy folosește numere (Fzwi) și mulțimi fuzzy. La nivelul neuronului fuzzy, se efectuează suma denumită intrare cumulată, în care Ω reprezintă un factor arbitrar de atenuare.
Figura nr. 17. Modelul general al unui neuron fuzzy
Acest semnal este transformat într-o regiune fuzzy corespunzătoare nivelelor de activare asociate. Apoi, folosind o metodă oarecare de defuzzyficare, regiunea fuzzy se transformă într-o valoarea scalară. Dacă funcția de activare este, de asemenea, o mulțime fuzzy, ieșirea obținută va avea grade distincte de activare.
Problema fundamentală în proiectarea rețelelor neuronale este găsirea unei topologii capabile să rezolve o anumită problemă. Datorită numărului mare de restricții legate de stabilirea ponderilor, metodele tradiționale eșuează în rezolvarea problemelor de mare complexitate. Astfel, au apărut o serie de metode moderne de căutare care rezolvă probleme complexe de optimizare pornindu-se de la algoritmii genetici. Aceștia se bazează pe paradigma biologică a evoluției vieții mai exact pe mecanica selecției naturale și a geneticii, rezultând algoritmi în care este implicat și flerul inovator al căutării umane. Astăzi evoluția este privită ca un proces de optimizare bazat pe populație. Teoriile matematice subsumate acestei direcții pot fi grupate sub denumirea de calcul evolutiv.
În cadrul calculului evolutiv există trei direcții de cercetare care se întrepătrund: algoritmii genetici, strategiile de evoluție și programarea evolutivă. Dintre acestea, algoritmii genetici au căpătat o importanță deosebită în proiectarea și instruirea rețelelor neuronale.
În ultimii ani s-au făcut cercetări intense privind utilizarea calculului evolutiv și a algoritmilor genetici pentru determinarea topologiei optime și a distribuției ponderilor. Aceste studii au dus la următoarele concluzii:
Aplicarea algoritmilor genetici în proiectarea topologiilor de rețea neuronală. Se variază numărul straturilor ascunse și cel al nodurilor. Instruirea folosește combinarea calculului genetic cu propagarea înapoi.
Utilizarea algoritmilor genetici pentru aflarea distribuției optime a ponderilor rețelei, fiind dată topologia ei. Funcția de evaluare conduce la creșterea preciziei pasului de adaptare a ponderilor. Dezavantajul constă în mărirea complexității soluțiilor.
Folosirea tehnicilor evolutive pentru a recompensa diferite funcții de învățare, care determină strategia de instruire să devină adaptivă. Topologiile și ponderile pot fi codificate direct prin șiruri binare; astfel spațiul soluțiilor crește iar eficiența algoritmului scade. Practic, se alege fie proiectarea topologiei, fie adaptarea ponderilor rețelei, în funcție de natura problemei de rezolvat.
Primul lucru luat în considerare la proiectarea unei RNA este faptul că spațiul de căutare este foarte larg. În funcție de problema de rezolvat, pot fi necesari mai mulți neuroni, determinând diverse combinații. Prin urmare, căutarea arhitecturii optime poate fi rezolvată mai eficient folosind algoritmii genetici.
Algoritmul genetic nu folosește nicio schemă pentru codarea RNA ci utilizează însăși RNA ca și cromozom. Aceasta permite definirea unor operatori genetici ca mutație noduri și încrucișare noduri, care folosesc structura RNA inițială în generarea urmașilor.
Utilizarea unui algoritm genetic pentru proiectarea RNA, la fel ca orice altă problemă de optimizare abordată cu această tehnică, solicită o metodă de codificare a punctelor spațiului de căutare, care, în acest caz, sunt rețele neuronale. De asemenea, este necesară optimizarea funcției de evaluare. Se presupune ca optimă rețeaua a cărei funcții de evaluare este minimă. Scopul algoritmului genetic este de a minimiza funcția de evaluare. Se folosește aceeași funcție de activare ca și în cazul algoritmului standard cu propagare înapoi a erorii, adică suma erorilor pătratice ale neuronilor stratului de ieșire.
Gradul de conformitate reprezintă eroarea medie pătratică obținută în etapa de antrenare a rețelei. Această valoare de conformitate este ponderată cu alți termeni care iau în considerare aspecte, cum ar fi complexitatea arhitecturii neuronale codificate. Astfel, indivizii care prezintă arhitecturi cu o mulțime de elemente de procesare și conexiuni între ele sunt sancționați mai mult decât arhitecturile mai simple. Acest lucru se datorează faptului că arhitectura simplă are o viteză mai mare de execuție și o mai mare capacitate de generalizare.
După ce toți indivizii au fost evaluați, reproducerea genetică, crossover, și operatorii de mutație sunt aplicați pentru obținerea unei noi generații (populație). Se repetă acești pași până când populația converge către arhitectura neurală optimă pentru rezolvarea problemei date.
Modul obișnuit de a antrena RNA folosind algoritmi genetici este de a construi, pornind de la o rețea și un set de modele de antrenare, un algoritm genetic capabil să afle valorile ponderilor conexiunilor care minimizează eroarea medie pătratică sau să asigure că aceste valori sunt mai mici decât ceea ce este considerat a fi acceptabil.
Având în vedere o RNA gata pentru a fi instruită, este generată populația inițială de indivizi (cromozomi); fiecare codifică un set de valori pentru ponderile conexiunilor și deviațiile rețelei neuronale. Apoi, gradul de conformitate al fiecărui individ este evaluat, presupunând alocarea valorilor ponderilor și deviațiilor codificate prin intermediul indivizilor pentru a stabili conexiunile de rețea și calcularea erorii medie pătratică. Setul de modele de instruire sunt folosite pentru a face acest calcul. Valoarea erorii reprezintă conformitatea individului. După această etapă de inițializare, reproducerea genetică, crossover, și operatorii de mutație sunt aplicați pentru determinarea noilor generații până când există o convergență spre o populație de indivizi care codifică un set de ponderi care minimizează eroarea rețelei.
Ponderile pot fi codificate în mai multe moduri. De obicei, se codifică binar valoarea fiecărei ponderi de rețea și se construiește individul prin concatenarea acestor numere binare într-un șir de biți. Metoda este foarte des utilizată pentru a reduce posibilitatea micilor modificări în biți care conduc la variații mari în valorile pe care le reprezintă.
Programarea genetică lucrează prin evoluția unei populații. În această populație, fiecare individ este o soluție la problema de rezolvat. Această evoluție se produce prin selectarea celor mai buni indivizi (cu toate că și cei mai slabi au, de asemenea, o probabilitate mică de a fi selectați) și combinarea lor pentru a crea noi soluții. Acest proces se efectuează prin algoritmi de selecție, mutație și crossover. După câteva generații, este de așteptat ca populația să conțină o soluție suficient de bună pentru problema dată.
Metoda denumită Group Method of Data Handling (GMDH) a fost propusă de academicianul A.G. Ivahnenko de la Institutul de Cibernetică din Kiev, pentru rezolvarea problemelor de prognoză și obținerea modelelor de mari dimensiuni, în general de regresie. Metoda are la baza descompunerea modelului problemei în modele simple si reasamblarea acestora, după o selecție prealabilă.
Problemele legate de modelarea obiectelor complexe (aproximarea și extrapolarea funcțiilor, identificare, recunoaștere de șabloane, prognozarea proceselor și evenimentelor aleatoare) pot fi rezolvate în general prin metode deductive logico-matematice sau prin metode inductive de sortare. Metodele deductive au avantaje în cazul problemelor de modelare simple, când teoria obiectului de modelat este cunoscută și este posibil să se dezvolte un model bazat pe principii fizice. Luarea deciziilor în astfel de domenii, cum ar fi analiza proceselor în macroeconomie, previziuni financiare, analiza de solvabilitate a firmei, reclamă folosirea unor metode prin care să se realizeze modele exacte cu privire la procesele de prognoză. Dificultățile țin de cantitatea mare de
variabile, numărul foarte mic de observații și dinamica necunoscută dintre aceste variabile. Astfel de obiecte financiare sunt sisteme complexe insuficient definite, caracterizate prin: informații inadecvate, număr mare de variabile incomensurabile, mostre de date zgomotoase și extrem de puține, obiecte insuficient definite cu caracteristici fuzzy.
Problemele de modelare complexă, cum ar fi analiza și predicția pieței de valori, nu pot fi rezolvate cu metode matematice logice deductive cu acuratețea necesară. Extragerea cunoștințelor din date se realizează prin obținerea descrierii matematice din date. Dar cunoștințele necesare pentru proiectarea de modele matematice sau proiectarea de arhitecturi de rețele neuronale nu sunt la dispoziția tuturor utilizatorilor. În rețelele neuronale, utilizatorul estimează structura rețelei prin alegerea numărului de straturi, a numărului de neuroni și a funcțiilor de transfer ale neuronilor. Acest lucru necesită nu numai cunoștințe despre teoria rețelelor neuronale, dar, de asemenea, cunoașterea obiectului studiat.
Rețelele neuronale de tip GMDH pot depăși aceste neajunsuri; ele pot culege cunoștințe despre obiect direct din baza de date. Metoda Grupului de Prelucrare a Datelor, GMDH (The Group Method of Data Handling), este metoda inductivă de sortare, care prezintă avantaje în cazul obiectelor complexe, neavând nicio teorie definită, fiind aplicată în special pentru obiectele cu caracteristici fuzzy.
GMDH este o metodă cu auto-organizare bazată pe sortarea treptată a modelelor complicate și evaluarea acestora prin criterii externe pe eșantioane separate de date. Ca și variabile de intrare pot fi folosiți orice parametri care pot influența procesul. Se identifică structura modelului și se analizează influența parametrilor asupra variabilei de ieșire. Modelul optim este cel care duce la valoarea minimă a criteriului extern. Acestă abordare inductivă este diferită de tehnicile deductive frecvent utilizate.
GMDH a fost dezvoltată pentru modelarea sistemelor complexe, predicție, identificarea și aproximarea proceselor cu mai multe variabile, suport de decizie după scenarii de tip ce-ar fi dacă, diagnosticare, recunoaștere de șabloane și clusterizare a unui eșantion de date. A fost demonstrat că GMDH ajută în cazul datelor inexacte, afectate de zgomot sau insuficiente, la găsirea unui model optim simplificat cu precizie mai mare și structură mai simplă decât a modelului fizic complet.
Au apărat mai mult de 230 de dizertații și s-au publicat numeroase lucrări și cărți dedicate metodei GMDH cu teoria și aplicațiile sale. Sunt dezvoltate metode de inducție matematică pentru soluția problemelor relativ simple. GMDH poate fi considerată o dezvoltare suplimentară a metodelor inductive cu auto-organizare pentru soluționarea problemelor practice mai complexe. Aceasta rezolvă problema privind modul în care se manipulează eșantioanele de date observate. Scopul este de a obține un model matematic al obiectului (problema de identificare și de recunoaștere a modelului) sau de a descrie procesele care vor avea loc asupra obiectului în viitor (problema prognozei procesului).
Metoda GMDH rezolvă procese de: prognoză pe termen lung; prognoză pe termen scurt a proceselor și evenimentelor; identificarea regularităților fizice; aproximare a proceselor multivariabilă; clusterizare a eșantioanelor de date; recunoaștere de modele în cazul variabilelor continue sau discrete; diagnosticare și recunoaștere prin algoritmi probabilistici de sortare; auto-organizare a rețelelor neuronale multistrat cu neuroni active.
Este necesar să se facă diferența între algoritmii GMDH și algoritmii de tip GMDH. Primii lucrează folosind minimul unui criteriu extern și, prin urmare, realizează alegerea obiectivă a modelului optim. Această tehnică GMDH se bazează pe o abordare inductivă: modelele optime sunt obținute prin sortarea variantelor posibile și evaluate prin criterii externe. Modelul care conduce la un minim este cel mai bun. Pentru a face o alegere obiectivă, selecția se face fără praguri sau coeficienții în criteriu. Criteriul se aplică de două ori: prima dată, pentru a găsi cele mai bune modele la fiecare strat de selecție pentru identificarea structurii și a doua oară pentru a găsi modelul optim. Procedura de selecție este oprită atunci când valoarea minimă a criteriului este atinsă.
Modul de lucru al algoritmilor de tip GMDH se concentrează pe cuvintele: "cu cât este mai complex un model, cu atât este mai precis". Este necesar să se stabilească un prag definit sau să se sublinieze coeficienții de pondere pentru membrii formulei criteriului intern, pentru a găsi modelul optim într-un mod subiectiv. Dar problemele reale, de obicei, sunt prezentate prin date puține sau afectate de zgomot. Din păcate, în aproape toate software-urile de tip GMDH (ModelQuest, NeuroShell) și lucrările de cercetare din S.U.A. și Japonia, această abordare deductivă este utilizată, nefiind eficientă pentru astfel de date.
Abordarea inductivă nu elimină experții ci, mai degrabă, le atribuie o poziție specială. Experții indică criteriul de selecție al unei forme foarte generale și interpretează modelele alese. Ei pot influența rezultatul modelării prin formularea de noi criterii. Calculatorul devine un arbitru obiectiv pentru controversele științifice, dacă ansamblul de criterii este coordonat între experții care iau parte la discuții. Elementul uman implică adesea erori și decizii nedorite. Alegerea obiectivă a modelului optim prin minimul caracteristicii criteriului extern în algoritmii GMDH de multe ori contrazice avizul expertului. Algoritmii obiectivi dau posibilitatea de a realiza inteligența artificială reală.
Particularitatea principală a algoritmului GMDH este că, atunci când se utilizează date continue afectate de zgomot, el selectează ca optim modelul simplificat non-fizic. Este dovedită convergența algoritmilor GMDH multistrat și faptul că modelul scurtat non-fizic este mai bun decât modelul complet fizic (pentru datele continue, afectate de zgomot, în predicție și aproximare), având o precizie mai mare.
Singura modalitate de a obține modele non-fizice este de a folosi algoritmii de sortare GMDH. Regularitatea structurii optime a modelelor de prognoză se modifică în funcție de indicii generali de nedeterminare a datelor (nivel de zgomot, lungimea eșantionului de date, arhitectura experimentului, numărul de variabile informaționale).
Particularitățile GMDH sunt următoarele:
Supliment extern: numai criteriile externe, calculate pe informații noi independente, pot produce minimul caracteristicii de sortare. Astfel, eșantionul de date este împărțit în părți pentru construcția modelului și pentru evaluarea lui.
Libertatea de alegere: în algoritmii GMDH multistrat, sunt transmise de la un strat la stratul următor, nu una ci mai multe soluții pentru a asigura libertatea de alegere.
Definiție suplimentară a modelului: când alegerea modelului fizic optim este dificilă, din cauza nivelului de zgomot sau a oscilațiilor caracteristicii minime a criteriului, se folosesc criterii de discriminare auxiliare. Alegerea criteriului principal și a constrângerilor de sortare ține de euristica GMDH.
Toți algoritmii au structură multistrat și poate fi implementat calculul pentru realizarea lor;
Diferenta dintre algoritmii GMDH și alți algoritmi de identificare structurală, genetică și algoritmi de regresie constă în câteva particularități principale: utilizarea unor criterii externe, care se bazează pe divizarea eșantionului de date și sunt adecvate pentru probleme de construcție a modelelor de prognoză, prin scăderea cerințelor de volum a informațiilor inițiale; diversitate mai mare a generatorilor de structuri; nivel mai bun de automatizare: este necesară introducerea numai a eșantionului inițial de date, și tipul criteriului extern; adaptarea automată a complexității modelului optim și a criteriului extern la nivelul de zgomote din date;
Algoritmii parametrici de bază GMDH au fost dezvoltați pentru variabilele continue. Cei mai cunoscuți sunt:
Algoritmul combinatorial (COMBI), cel mai des utilizat. Se bazează pe sortarea completă sau parțială a modelelor complexe și evaluarea acestora de către un criteriu extern pe diviziuni separate a eșantionului de date;
Algoritmul de analiză obiectivă a sistemului. Elementul cheie al algoritmului este că nu examinează ecuații unice, ci sisteme de ecuații algebrice, obținute prin șabloane implicite (fără funcție de scop). Un avantaj al algoritmului este că informațiile încorporate în eșantionul de date sunt utilizate mai bine și sunt redate relațiile dintre variabile;
Algoritmul cu două nivele pentru modelarea pe termen lung a proceselor ciclice (cum ar fi stocurile sau vremea). Sunt utilizate sisteme de ecuații polinomiale pentru identificarea modelelor pe două scale de timp și apoi se alege cea mai bună pereche de modele prin valoarea criteriului extern. Pentru acest lucru poate fi folosit orice algoritm parametric din cele descrise mai sus.
Algoritmii parametrici GMDH s-au dovedit a fi extrem de eficienți în cazurile în care se modelează obiecte cu caracteristici non-fuzzy, cum ar fi obiecte de inginerie. Când modelarea implică obiecte cu caracteristici fuzzy, este mult mai eficient să se utilizeze algoritmi non-parametrici GMDH, unde modelele polinomiale sunt înlocuite cu un eșantion de date divizat în intervale sau clustere. Algoritmii non-parametrici sunt exemplificați prin:
Clusterizare obiectivă computerizată, algoritm care operează cu perechi de puncte aflate la distanțe mici în spațiu. Se realizează clusterizare fizică, care trebuie să fie aceeași pe două
subeșantioane;
Algoritmul de căutare a clusterelor, pus în aplicare prin construirea a doi arbori ierarhici de clusterizare și estimarea prin criteriul echilibrului;
Algoritmul probabilistic, recomandat pentru recunoașterea și prognoza în cazul obiectelor binare și pentru controlul autenticității datelor de intrare, pentru a evita eventualele erori.
Algoritmi GMDH sunt aplicați în optimizare pentru a rezolva probleme de prognoză normativă (după scenarii de tip ce-ar fi dacă – atunci), precum și pentru controlul optim al obiectelor multivariabilă slab definite. Multe obiecte slab definite din macroeconomie, ecologie, fabricație pot fi descrise cu destulă precizie de ecuații algebrice statice sau diferențiale, care pot fi transformate în probleme de programare liniară prin înlocuirea membrilor non-lineari cu variabile suplimentare. Algoritmii GMDH sunt aplicați pentru a evalua deviațiile variabilelor de ieșire de la valorile lor optime de referință.
2.1.2. Specificul calculului neuronal
Din punct de vedere funcțional o RNA este un sistem ce primește date de intrare (corespunzătoare datelor inițiale ale unei probleme) și produce date de ieșire (ce pot fi interpretate ca răspunsuri ale problemei analizate) [Zaha 2006]. O caracteristică esențială a RNA este capacitatea de a se adapta la mediul informațional corespunzător unei probleme concrete, printr-un proces de învățare. În felul acesta, rețeaua extrage modelul problemei pornind de la exemple.
Din punct de vedere structural, o RNA este un ansamblu de unități interconectate (neuroni), fiecare fiind caracterizată de o funcționare simplă. Funcționarea unităților este influențată de o serie de parametri adaptabili. Astfel, o rețea neuronală este un sistem extrem de flexibil.
Structura unităților funcționale, prezența conexiunilor și a parametrilor adaptivi precum și modul de funcționare sunt inspirate de creierul uman. Fiecare unitate funcțională primește câteva semnale de intrare pe care le prelucrează și produce un semnal de ieșire. Interacțiunea multor unități cu funcționare simplă conduce la un sistem care poate să rezolve probleme complexe. Funcționarea sistemului este controlată de un set numeros de parametri ajustabili, care permit acestuia să se adapteze cât mai fidel mediului informațional în care este amplasat (specific problemei de rezolvat). Una dintre cele mai importante caracteristici ale unui sistem neuronal este caracterul său adaptiv, faptul că poate să-și stabilească parametrii de funcționare printr-un proces de învățare bazat pe informațiile primite. Astfel de sisteme sunt adecvate problemelor care sunt dificil sau chiar imposibil de formalizat, pentru ele existând doar exemple de rezolvare.
2.1.3. Structura unei rețele neuronale artificiale
O RNA este un ansamblu de unități funcționale amplasate în nodurile unui graf orientat [Zaha 2006]. De-a lungul arcelor grafului circulă semnale care permit unităților funcționale să comunice între ele. Elementele definitorii ale unei RNA sunt menționate în cele ce urmează:
Arhitectura: specifică modul în care sunt amplasate și interconectate unitățile funcționale. Arhitectura determină și fluxul informațional în cadrul rețelei.
Funcționarea: specifică modul în care fiecare unitate în parte și rețeaua în ansamblul ei transformă semnalele de intrare în semnale de ieșire. Funcționarea este influențată de arhitectură, în special de modul de interconectare a unităților.
Adaptarea (învățarea): specifică modul de stabilire a parametrilor ajustabili, astfel încât rețeaua să poate rezolva anumite probleme. In funcție de natura informației de care se dispune, învățarea poate fi supervizată sau nesupervizată. Învățarea constă în modificarea funcționalității rețelei prin modificarea parametrilor și/sau a structurii acesteia. Procesul de învățare bazat pe adaptarea parametrilor constă în existența unor reguli de modificare a parametrilor și a unui algoritm (de regulă iterativ) de aplicare a acestor reguli.
2.1.4. Ce pot și ce nu pot face rețelele neuronale
Ce pot face rețelele neuronale? În principiu, pot reprezenta orice funcție calculabilă. Mai important este însă, că pot învăța orice astfel de funcție pornind de la exemple. Nu sunt însă eficiente pentru orice problemă, ele fiind utile în rezolvarea problemelor pentru care se dispune de un număr mare de exemple și pentru care nu pot fi găsite ușor și rapid reguli de formalizare. Abilitatea unei RNA de a rezolva o anumită problemă este influențată și de modul în care sunt pregătite datele de intrare. Fără o preprocesare atentă a datelor de intrare, demersul rezolvării problemei cu rețele neuronale poate fi sortit eșecului.
A fost demonstrat că o RNA multistrat cu un singur strat ascuns este un aproximator universal [Cybe 1989], [Horn 1989]. O astfel de rețea poate aproxima orice funcție continuă cu o precizie arbitrară dacă există date de antrenare suficiente și adecvate, iar rețeaua are un număr suficient de neuroni în stratul ascuns.
Demonstrațiile din lucrările citate mai sus au la bază niște teoreme cunoscute din matematică:
Teorema de aproximare a lui Weierstrass (1885): orice funcție continuă definită pe intervalul [a, b] poate fi uniform aproximată cu o precizie dorită de o funcție polinomială.
Teorema de aproximare a lui Kolmogorov (1957): există o serie de funcții hpq(x), definite în intervalul I =[0 1], astfel încât funcțiile f definite pe In să poate fi scrise sub forma:
(1)
Categoriile de probleme pentru care RNA au fost aplicate cu succes sunt: clasificare și recunoaștere, gruparea și categorisirea datelor, aproximare și estimare, predicție, optimizare, stocarea și regăsirea informației după conținut, modelare și control adaptiv, prelucrarea și analiza semnalelor.
2.1.5. Calculul neuronal în comparație cu calculul clasic și sistemele expert
Între abordarea problemelor cu ajutorul RNA și cea clasică, bazată pe implementarea unui algoritm pornind de la un model formal, există o serie de diferențe [Zaha 2006], [Cioc 2001]. Câteva dintre acestea sunt prezentate în tabelul 2.
Tabelul nr. 2. Diferențe între prelucrarea neuronală și prelucrarea algoritmică [Zaha 2006]
Pe de altă parte, pot fi puse în evidență, în aceeași manieră, diferențele care există între RNA și sistemele expert:
Tabelul nr. 3. Diferențe între RNA și sisteme expert [Zaha 2006]
2.1.6. Scurt istoric
Secolul XX a fost marcat de numeroase realizări legate de RNA. Cele mai semnificative sunt:
1943: apare lucrarea A Logical Calculus of the Ideas Immanent in Nervous Activity a cercetătorilor americani McCulloch și Pitts [McCu 1943], în care este introdus un model matematic pentru neuronul elementar. Deși caracterizat prin limitări majore, acest model permitea explicarea funcționarii unor ansambluri de neuroni elementari.
1949: cartea The Organization of Behavior: A Neuropsychological Theory a americanului D.O. Hebb [Hebb, 1949] prezintă modalitatea explicită de modificare a legăturilor dintre neuronii elementari, deschizând calea elaborării unei game largi de algoritmi de învățare.
1958: Rosenblatt [Rose 1957] introduce perceptronul ca model util în rezolvarea problemelor de clasificare și demonstrează o binecunoscută teoremă de convergență a algoritmului de adaptare corespunzător.
1959-1960: Bernard Widrow și Marcian Hoff [Widr 1960] de la Universitatea din Stanford au dezvoltat modelele denumite ADALINE și MADALINE (denumirile provin de la Multiple ADAptive LINear Elements). ADALINE a fost dezvoltat pentru a recunoaște formele binare, fiind folosit cu succes în predicția biților proveniți de la o linie telefonică. MADALINE a fost prima rețea neuronală folosită în rezolvarea unei aplicații reale: a fost utilizată în eliminarea ecourilor de pe liniile telefonice.
1969: Minski si Papert [Mins 1969] demonstrează riguros în lucrarea Perceptrons că arhitecturile cu un singur strat formate din neuroni elementari de tip perceptron au limitări majore. Lansarea ideii (dovedite mai târziu a fi false) că aceste limitări se transferă și la arhitecturile de tip multistrat avea să înghețe interesul cercetătorilor din acest domeniu pentru mai mult de un deceniu.
În anii 60 s-a dezvoltat foarte mult teoria sistemele instruibile, însă cu aplicații pe calculatoare universale. Pe de altă parte, cercetările în domeniul rețelelor neuronale au cunoscut un regres datorat, în primul rând, limitărilor tehnologice. Primele rețele neuronale construite cu structuri de tip ADALINE au fost dezvoltate de Widrow și Hoff în 1958-1960 și au avut la bază dispozitive electrochimice (memorii analogice) numite memistoare. Evident, o asemenea bază tehnologică nu putea asigura o evoluție solidă noului domeniu. La începutul anilor 70, odată cu progresul microtehnologiei electronice, s-a creat o nouă bază tehnologică pentru domeniul rețelelor neuronale și interesul pentru acestea a crescut foarte mult.
1972: Teuvo Kohonen introduce un model de memorie asociativă denumit asociator liniar.
1982: cercetătorul american J. J. Hopfield publică o lucrare științifică [Hopf 1982], în care introduce un punct de vedere elegant asupra funcționarii rețelelor neurale recurente cu conexiuni simetrice.
1986: Rumelhart, Hinton si Williams [Rume 1986] prezintă algoritmul de adaptare cunoscut sub numele backpropagation (cu propagarea inversă a erorii), utilizat pentru antrenarea rețelelor de tip perceptron multistrat. Acest algoritm, descris pentru prima dată de fapt în teza de doctorat a lui P. J. Werbos (1974), constituie și în prezent soluția cea mai des utilizată în aplicații dintre cele mai diverse.
1987: la San Diego (SUA) se desfășoară prima conferința internațională consacrată RNA. În următorii câțiva ani apar primele reviste specifice acestui domeniu (IEEE Transactions on Neural Networks, Neural Networks, Neural Computation), precum și unele organizații de profil (International Neural Networks Society, Neural Networks Council din cadrul IEEE).
2.2. Topologii de rețele neuronale artificiale cu și fără dinamică
În cadrul acestui paragraf se vor prezenta cele mai importante tipuri de RNA care pot fi utilizate în structuri de identificare și conducere a proceselor.
RNA pot fi clasificate după mai multe criterii. În contextul tematicii acestei teze, în cadrul acestui paragraf va fi luată în discuție o singură clasificare și anume cea care împarte RNA în: RNA fără dinamică (RNA multistrat); RNA cu dinamică (internă sau externă).
2.2.1. Rețele neuronale artificiale multistrat
RNA multistrat sunt în continuare foarte populare datorită simplității și ușurinței în utilizare. Arhitectura lor se bazează pe organizarea neuronilor pe straturi. În principiu, o RNA multistrat poate conține un strat sau mai multe straturi ascunse. În figura 18 este reprezentată o RNA multistrat cu un singur strat ascuns.
Figura nr. 18. RNA multistrat
unde: Pi reprezintă intrările în rețea (); Tj reprezintă ieșirile din rețea (); Xk reprezintă ieșirile stratului ascuns (); Wk,i, Vj,k reprezintă ponderile RNA.
Ieșirile RNA sunt calculate cu o relație de forma:
(2)
unde f1, f2, f3 reprezintă funcțiile de activare ale celor 3 straturi. S-a considerat un caz simplificat de RNA, în care nu intervin și valorile de prag. De asemenea, neuronii de pe stratul 1 nu realizează nicio procesare a informației, ci doar o distribuție către stratul 2.
2.2.2. Rețele neuronale artificiale cu dinamică externă
RNA cu dinamică externă utilizează RNA statice [Nare 1990; Nare 1992], la care se adaugă și elemente de dinamică.
În cel mai general caz, un model neliniar intrare-ieșire descrie ieșirea estimată, , ca o funcție de intrările și ieșirile filtrate [Mire 2002b]. Dacă se consideră q-1 drept operatorul de întârziere cu un pas, atunci se poate scrie:
(3)
în care nu și ny sunt ordinele procesului dinamic, iar d reprezintă timpul mort. Acești parametri trebuie cunoscuți a priori. Funcția necunoscută poate fi aproximată printr-o RNA statică, și fiind filtre liniare care furnizează RNA statice informații despre valorile anterioare ale intrărilor și ieșirilor rețelei, așa cum este ilustrat în figura 19:
Figura nr. 19. Structura generală a unei RNA eu structură dinamică externă [Mire 2002b]
În funcție de modul de alegere al filtrelor liniare, pot fi evidențiate următoarele abordări [Iser 1997].
RNA cu reacție după ieșirea rețelei. În acest caz apare reacția după ieșirea filtrată a rețelei, filtrele de regulă fiind elemente simple de întârziere:
, (4)
relația (3) devenind:
(5)
Reacția după ieșire determină, în general, pentru astfel de modele neuronale, ca stabilitatea acestor rețele să nu poată fi dovedită cu ușurință. De regulă, în practică, se realizează o reacție după ieșirea măsurată și filtrată din procesul real, în locul reacției după ieșirea rețelei.
RNA cu răspuns finit la impuls: această abordare nu implică reacție după ieșire, filtrele care apar în relația generală (3) fiind de forma:
, (6)
În felul acesta, ieșirea unui astfel de model neuronal este dată de relația:
(7)
Această abordare este de fapt similară aceleia în care un sistem este aproximat prin serii Volterra. Dezavantajul acestei abordări este acela că nu trebuie să fie foarte mare, teoretic el trebuind să tindă la infinit, pentru o modelare exactă a procesului, lucru care determină o creștere a dimensiunii spațiului de intrare. Deoarece acest tip de modele nu implică reacție după ieșire, stabilitatea lor este garantată.
Un caz particular al rețelelor cu răspuns finit la impuls sunt rețele neuronale cu funcții de bază ortonormate. Acest tip de rețele încorporează, prin intermediul filtrelor, informații apriorice despre sistemul supus atenției, informații legate de existența și tipul polilor dominanți; cu cât aceste informații sunt mai precise, cu atât ordinul nu necesar unei modelări adecvate scade mai mult.
2.2.3. Rețele neuronale artificiale cu dinamică internă
RNA cu elemente dinamice interne se obțin dotând RNA statice cu memorie, deci modificând structura internă a neuronilor, așa cum este prezentată în figura 20 [Iser 1997], [Mire 2002b]. Spre deosebire de RNA cu dinamică externă, la intrarea RNA cu dinamică internă nu mai este necesară furnizarea de valori anterioare ale intrărilor și ieșirilor din proces, în felul acesta reducându-se dimensiunea spațiului de intrare.
RNA cu structură dinamică internă au următoarea descriere generală în spațiul stărilor:
(8)
Figura nr. 20. Rețea neuronală cu structură dinamică internă [Mire 2002b]
În funcție de modul în care este realizată intern (la nivelul neuronilor) recurența putem avea următoarele tipuri de rețele:
Rețele cu recurență totală: au în structura lor neuroni complet interconectați, fiecare neuron reprezentând o stare internă a rețelei, așa cum se poate observa și în figura 21 [Will 1990]; dezavantajul acestei configurații este convergența lentă a procedurii de antrenare și problemele care apar legate de stabilitatea sa.
Figura nr. 21. Rețea neuronală cu recurență totală [Mire 2002b]
Rețele neuronale parțial recurente: au la bază structura generală a RNA, dar conțin suplimentar un strat de neuroni de context (figura 22); neuronii stratului de context au rolul de memorie internă a modelului neuronal.
Figura nr. 22. Rețea neuronală parțial recurentă [Mire 2002b]
Cazuri particulare ale acestor tipuri de rețele pot fi: rețele cu neuroni memorie, rețele Elman, rețele Jordan.
2.2.3.1. Rețele cu neuroni memorie
Se știe faptul că ieșirea unui sistem la un anumit moment t1 depinde atât de structura sistemului, cât și de intrarea u(t) pentru t∈[t1-r,t1], unde parametrul r depinde de memoria sistemului. În strânsă concordanță cu această constatare, s-au dezvoltat structuri de rețele care rețin informația în neuroni numiți neuroni memorie [Sast 1994].
Arhitectura unei rețele cu trei straturi, care conține neuroni memorie este arătată în figura 23.
Figura nr. 23. Structura unei rețele cu neuroni memorie [Sast 1994]
Comparativ cu o rețea neuronală clasică, RNA din figura de mai sus conține neuroni memorie atașați la fiecare unitate din rețea. Neuronul memorie are ca intrare ieșirea neuronului corespondent din rețea și mai are, de asemenea, și o autoreacție. Toți neuronii de rețea, precum și neuronii memorie, trimit informație numai neuronilor din rețea ai nivelului următor. Fiecare neuron de rețea care aparține nivelului de ieșire poate avea o cascadă de neuroni memorie, fiecare dintre ei trimițând ieșirea lor către neuronul de rețea corespunzător.
Având în vedere structura rețelei din figura de mai sus, ieșirea neuronului j de pe stratul (l+1) la momentul k este dată de relația:
(9)
unde: reprezintă ponderea conexiunii dintre neuronul i al stratului l și neuronul j al stratului l+1, la momentul k; reprezintă ieșirea neuronului i al stratului l la momentul k; reprezintă ponderea conexiunii dintre neuronul memorie i de pe stratul l și neuronul rețea j de pe stratul l+1 la momentul k; reprezintă ieșirea neuronului memorie i al stratului l la momentul k; Nl este numărul de neuroni de pe stratul l. l∈[1,L] reprezintă stratul curent din rețea, L fiind numărul total de straturi.
În primul termen din relația (9), contorul i se inițializează cu 0, deoarece intervine și deplasarea neuronului de rețea j. Ieșirile neuronilor de pe ultimul strat se calculează cu relația:
(10)
unde: ,,,au aceeași semnificație ca în cazul relației (9); reprezintă ieșirea neuronului de memorie i asociat neuronului j de rețea al stratului de ieșire; reprezintă conexiunea dintre neuronul j al stratului de ieșire și neuronul memorie i asociat neuronului j.
Ieșirea neuronului de memorie j de pe stratul l asociat neuronului de rețea j este dată de relația:
(11)
iar pentru neuronii de memorie ai stratului de ieșire avem relația:
(12)
Pentru a asigura stabilitatea dinamicii rețelei se impune ca parametrii,, să aparțină intervalului [0 1].
Fiecare neuron de memorie stochează o combinație a activităților precedente ale neuronilor de rețea. Ieșirea neuronilor memorie este obținută prin trecerea ieșirii neuronilor de rețea printr-un filtru de ordinul unu, cu coeficient static unitar. Menținând coeficienții ,, între 0 și 1, se asigură stabilitatea filtrului.
Pentru instruirea rețelei se utilizează metoda gradientului cu pas descrescător, care urmărește minimizarea sumei erorilor pătratice:
(13)
unde: reprezintă ieșirea neuronului j al stratului de ieșire; reprezintă ieșirea impusă neuronului j .
Eroarea se propagă înapoi numai prin neuronii de rețea, în vederea ajustării conexiunilor tuturor neuronilor.
Ecuațiile finale prin care se ajustează parametrii rețelei sunt:
(14)
unde reprezintă pasul de ajustare, iar:
(15)
Relația anterioară reprezintă propagarea înapoi standard a erorii, fără a lua în considerare neuronii memorie. Funcția din relațiile (15) reprezintă derivata funcției de activare a neuronilor rețelei.
Pentru ajustarea ponderilor corespunzătoare neuronilor memorie se utilizează relațiile
(16)
Relațiile cu ajutorul cărora se ajustează coeficienții ,, sunt:
(17)
unde:
(18)
Pentru ajustarea coeficienților neuronilor memorie se utilizează un pas de ajustare notat cu , deferit de .
2.2.3.2. Rețele neuronale Elman
Rețelele neuronale Elman [Elma 1990] se deosebesc de RNA multistrat prin faptul că mai conțin un strat de neuroni numit STRAT CONTEXT, care are rolul de a memora starea (contextul) ieșirilor stratului ascuns la momentul k și de a readuce informația (după ce se realizează o transformare liniară) la intrările stratului ascuns, pentru a fi procesată la momentul (k+1). Schema de principiu a unei rețele Elman este prezentată în figura 24.
Intrările în rețeaua neuronală Elman sunt notate cu U(k-1), iar ieșirile rețelei sunt notate cu Y(k). Activitatea stratului ascuns se reține în vectorul X(k), iar ieșirile stratului context se notează cu Xc(k). De asemenea, se notează cu Wxu, Wyx, Wxc matricele care conțin ponderile conexiunilor dintre: stratul de intrare și stratul ascuns, stratul ascuns și stratul de ieșire și, respectiv, dintre stratul context și stratul ascuns.
Figura nr. 24. Structura unei rețele Elman
Dacă funcția de activare a stratului de ieșire este liniară, iar deplasările neuronilor sunt egale cu zero, atunci relațiile care stau la baza procesării informației de către rețeaua Elman sunt următoarele:
(19)
unde F(.,.) reprezintă funcția de activare a stratului ascuns al rețelei Elman, care poate fi atât liniară, cât și neliniară.
Dacă și funcția de activare a stratului ascuns este liniară, având deplasarea egală cu zero, atunci relațiile (19) se scriu sub forma:
(20)
Se poate constata faptul că RNA Elman conține elemente specifice reprezentărilor discrete corespunzătoare sistemelor dinamice. Acest fapt rezultă din ecuația următoare:
(21)
Pentru a obține ecuațiile care stau la baza algoritmului de instruire a ponderilor rețelei Elman, se consideră cazul unui sistem dinamic cu o singură intrare și o singură ieșire. Realizările utilizate la instruirea rețelei sunt . Eroarea medie pătratică între ieșirea rețelei și ieșirea impusă pentru întreg lotul de date este dată de relația:
(22)
Instruirea ponderilor Wxu, Wyx, Wxc apelează la metoda gradientului cu pas descrescător, care presupune o relație de forma:
(23)
unde η(kp) reprezintă rata de învățare, iar kp este pasul de instruire a parametrilor.
Pentru cazul considerat (sistem cu o singură intrare și o singură ieșire), relația (20) se scrie sub forma:
(24)
Având în vedere relațiile (22) și (24), relația (23) – particularizată pentru matricele de ponderi Wxu, Wyx, Wxc – devine:
(25)
unde: , reprezintă al i-lea element al vectorului X(k). reprezintă linia i din matricea.reprezintă linia i din matricea. Dacă se ignoră dependența X(k) de Wxc, atunci se obține algoritmul backpropagation standard.
2.2.3.3. Rețele neuronale Jordan
Arhitectura unei rețele Jordan [Jord 1986] este dată în figura 25. După cum se observă, o rețea Jordan se deosebește de o rețea Elman prin faptul că, în acest caz, informația de la ieșirea rețelei este adusă la intrarea unui strat ascuns numit strat de stare. Această structură de rețea este capabilă să stocheze informații anterioare cu privire la ieșirea sistemului, practic pentru un timp nelimitat.
Dacă ipotezele de lucru în cazul rețelei Jordan sunt aceleași ca și în cazul rețelei Elman, atunci relațiile prin intermediul cărora se procesează informația într-o rețea Jordan sunt:
(26)
unde s-a notat cu Xs vectorul ieșirilor neuronilor din stratul de stare.
Se observă faptul că vectorul de ieșire al stratului de stare la momentul k depinde și de vectorul de ieșire al stratului de stare la momentul (k-1) înmulțit cu o constantă α. Acest aspect este ilustrat în figura 25, prin faptul că fiecare neuron al stratului de stare conține câte o autoreacție pozitivă la el însuși. Relațiile de instruire a ponderilor Wxu, Wyx, Wxc se determină în aceeași manieră ca și în cazul rețelei Elman.
Figura nr. 25. Structura unei rețele neuronale Jordan
2.2.3.4. Rețele neuronale artificiale multistrat cu dinamică mixtă
RNA multistrat cu structură dinamică mixtă conține filtre de tip ARMA pe sinapsele neuronilor, filtre de tip ARMA situate înainte de blocul funcției de activare dar și legături recurente în straturile interne [Marc 1997]. În cele ce urmează, s-a considerat că RNA conține un singur neuron în stratul de ieșire. Indicele superior ce apare în denumirea variabilelor indică stratul căruia îi aparțin: litera h indică stratul intern (de intrare) și litera o stratul de ieșire al rețelei. S-a considerat că RNA are P intrări, up(k), p=1,P, variabila k indicând unul din vectorii de intrare aparținând setului de antrenare sau testare.
Următoarele variabile binare sunt folosite pentru a indica prezența (valoarea 1) sau absența (valoarea 0) uneia din cele 3 structuri dinamice de bază, prezentate în [Mire 2002b]: iSGF – structura cu filtre generalizate pe sinapse; iIGF – structura cu filtre interne generalizate (situate înainte de blocul funcției de activare); iCHL – structura cu strat intern cu legături recurente.
Figura nr. 26. RNA multistrat cu structură dinamică mixtă [Mire 2002b]
Relațiile folosite pentru evaluarea semnalelor din rețea sunt:
Stratul intern
;
s=1,S (27)
Stratul de ieșire:
(28)
Dacă filtrele sinaptice nu sunt incluse (iSGF=0), atunci se obține:
(29)
2.2.4. Rețele neuronale artificiale de tip RBF cu dinamică
Deși rețelele neuronale RBF statice au capacitatea de a realiza o bună aproximare, aplicarea lor în practică a fost limitată de faptul că numărul neuronilor interni crește odată cu dimensiunea spațiului de intrare al rețelei. Pentru modelarea sistemelor dinamice neliniare, RNA statice trebuie sa aibă la intrare valorile curente și întârziate ale mărimile de intrare-ieșire din procesul supus atenției. Aceasta conduce la o creștere a spațiului de intrare al rețelei neuronale și, deci, la necesitatea folosirii unei rețele de tip RBF statică cu un strat intern de dimensiune mare.
Acest dezavantaj a fost eliminat prin folosirea unor rețele RBF care au în structura lor elemente dinamice sub forma unor filtre ARMA [Ayou 1996; Mire 1999]. În felul acesta, nu mai este nevoie ca la intrarea rețelei RBF dinamice să se aplice mărimi de intrare-ieșire din proces întârziate și, astfel, spațiul de intrare al rețelei neuronale este micșorat. În figura 27 este prezentată structura de bază a unei rețele neuronale RBF dinamice formată din M neuroni dinamici radiali.
Figura nr. 27. Structura rețelei neuronale dinamice de tip RBF [Mire 2002b]
Ieșirea unui neuron dinamic radial este dată de relația:
(30)
în care k semnifică perechea de date de intrare pentru care se determină semnalele din rețea, iar și sunt coeficienții numitorului și, respectiv, numărătorului filtrului ARMA corespunzător neuronului radial m. Prin nA și nB s-au notat gradele numitorului și, respectiv, numărătorului. ci și σi, reprezintă centrii, respectiv pantele funcțiilor radiale
Ieșirea rețelei neuronale DRBF este dată de relația:
(31)
în care a0 este un termen constant, introdus pentru a modela valoarea medie a măsurătorilor din proces.
2.3. Algoritmi de antrenare pentru rețele neuronale artificiale
Algoritmul backpropagation clasic [Rume 1986] are la bază algoritmul gradientului cu pas descrescător și ține cont de suma erorilor pătratice pentru fiecare strat al rețelei. Cea mai simplă implementare a algoritmului backpropagation presupune actualizarea ponderilor și deplasărilor în direcția în care criteriul de optimizare descrește cel mai repede. O iterație a acestui algoritm, pentru actualizarea ponderilor și deplasărilor, poate fi scrisă pe scurt astfel:
(32)
unde W(k) este vectorul ponderilor și deplasărilor la iterația k, g(k) este gradientul curent iar µ este rata de învățare. Performanța algoritmului este foarte sensibilă la alegerea corectă a ratei de învățare: dacă ea este prea mare, algoritmul va deveni instabil; dacă este prea mică, algoritmul va avea o convergență slabă.
Algoritmul backpropagation clasic este lent din următoarele cauze [Hayk 1997]:
Utilizează eroarea pătratică instantanee. Gradientul erorii pătratice instantanee nu este o estimare bună pentru gradientul erorii medii pătratice. De aceea, o minimizare satisfăcătoare a acestei erori necesită mai multe iterații în procesul de antrenare.
Este un algoritm de minimizare de ordinul 1 ce se bazează pe derivate de ordinul 1 (gradient). Algoritmii mai rapizi se bazează pe derivatele de ordinul 2 (matricea hessiană) [LeCu 1993].
Propagarea erorii presupune serializarea calculelor de la strat la strat.
Eroarea medie pătratică este o suprafață relativ complexă în spațiul ponderilor, posibil cu multe puncte de minim local, secțiuni plate, neregularități puternice. Complexitatea suprafeței poate conduce algoritmul de antrenare către minime locale, deci la o soluție suboptimală.
Algoritmii rapizi de antrenare pot fi împărțiți în două categorii. Prima categorie utilizează tehnici euristice, care au la bază analiza performanțelor algoritmului gradient cu pas descrescător. Cei mai importanți algoritmi din această categorie sunt: metoda momentum, algoritmul backpropagation cu rată adaptivă de învățare și algoritmul resilient (elastic, mobil) backpropagation. A doua categorie folosește metode numerice standard de optimizare. Cele mai importante sunt: algoritmul gradientului conjugat [Powe 1977; Beal 1972], quasi-Newton și Levenberg-Marquardt.
2.3.1. Metode euristice de îmbunătățire a algoritmului backpropagation
Algoritmul backpropagation furnizează o traiectorie aproximativă în spațiul parametrilor, calculată prin metoda gradientului descrescător. Dacă rata de învățare este prea mare, RNA multistrat poate deveni instabil.
2.3.1.1. Metoda momentum
O metodă simplă de creștere a ratei de învățare și, în același timp, de evitare a instabilității este includerea unui termen momentum în ecuația (33):
(33)
Introducerea termenului momentum, care este proporțional cu valorile anterioare ale ponderilor, conduce la eliminarea oscilațiilor și a traiectoriilor eronate în spațiul stărilor. Metoda momentum permite să răspundă nu doar la gradientul local, ci și la tendințele de pe suprafața de eroare. Această metodă acționează ca un filtru trece jos. Fără metoda momentum, rețeaua poate ajunge într-un punct de minim local.
2.3.1.2. Rata de învățare adaptivă
O rată adaptivă pe durata algoritmului de învățare presupune menținerea acesteia la valori cât mai mari, fără a intra în instabilitate. O strategie simplă este aceea de a monitoriza rata de modificare a erorii medii pătratice după cum urmează:
Dacă eroare medie pătratică E scade constant, adică este negativ pentru un anumit număr de pași atunci:
µ(k+1) = µ(k) + α, α > 0 (34)
Dacă eroarea a crescut (> 0 ), atunci rata de învățare este diminuată
µ(k+1) =β µ(k), 0< β <1 (35)
2.3.1.3. Algoritmul resilient backpropagation
De obicei, RNA multistrat utilizează funcții de transfer sigmoidale pentru straturile ascunse. Funcțiile sigmoidale se caracterizează prin faptul că panta se apropie de 0 dacă valoarea intrării crește. Acest lucru poate cauza probleme la utilizarea algoritmului gradient descrescător, deoarece gradientul poate avea variații foarte mici, deci implicit conduce la variații mici ale ponderilor și deplasărilor. Scopul algoritmului resilient backpropagation este de a elimina efectul amplificărilor asupra derivatelor parțiale. Doar semnul, nu și valoarea, derivatelor parțiale este utilizat pentru a determina „direcția” modificării ponderilor. Cuanta cu care sunt modificate ponderile și deplasările este amplificată cu un factor y atunci când derivata funcției de performanță în raport cu ponderile are același semn, în raport cu iterația anterioară. Cuanta cu care sunt modificate ponderile și deplasările este diminuată cu un factor y, atunci când derivata funcției de performanță în raport cu ponderile își schimbă semnul în raport cu iterația anterioară. Dacă derivata este 0, ponderile nu vor fi modificate. În momentul când ponderile oscilează, cuanta cu care sunt modificate va fi diminuată. În general, algoritmul resilient backpropagation converge mult mai repede decât algoritmii prezentați anteriori.
2.3.2. Algoritmul gradientului conjugat
În majoritatea algoritmilor de antrenare prezentați anterior, rata de învățare stabilește cuanta cu care vor fi modificați parametri RNA multistrat. Există mai multe variații ale acestui algoritm, cele mai importante fiind: Fletcher-Reeves, Polak-Ribiére, Powell-Beale, Moller. Vor fi făcute căutări pe mai multe direcții, pentru a determina cuanta (cuanta este ajustată la fiecare pas) care va minimiza funcția de performanță în direcția respectivă. Toate variantele algoritmului au ca punct de plecare direcția în care gradientul este negativ și scăderea a avut panta cea mai abruptă:
p(0) = -g(0) (36)
unde g este gradientul curent
Va fi efectuată o căutare pe direcția vectorului p(k) pentru a determina valoarea distanței optime cu care se va face deplasarea pe această direcție:
w(k+1) = w(k) + µ(k)p(k) (37)
unde w(k+1) reprezintă vectorul noilor ponderi, obținut din vectorul ponderilor curente la care se adaugă deplasarea pe direcția p(k).
Procedura pentru stabilirea noii direcții de căutare se poate face prin următoarea relație:
p(k+1) = -g(k) + β(k)p(k) (38)
unde β(k) sunt factori de scalare care sunt calculați astfel încât direcțiile p(k) și p(k+1) să fie conjugate în report cu matricea hessiană adică
p(k+1)H pT(k) =0 (39)
Diferența între diferitele variante ale metodei gradientului conjugat constau în modul cum sunt calculați coeficienții β. De asemenea, periodic, direcția de căutare este resetată la valoarea negativă a gradientului. În mod normal, momentul când are loc această resetare este atunci când numărul de iterații este egal cu numărul de parametrii ai rețelei (ponderi și deplasări), dar există și alte metode de resetare, care pot crește eficiența algoritmului de antrenare.
Pentru versiunea Powell-Beale a algoritmului, resetarea are loc atunci când unghiul dintre gradientul curent și cel anterior este foarte mic. Acest lucru poate fi verificat prin intermediul următoarei inegalități:
(40)
Dacă această condiție este verificată, direcția de căutare este resetată la valoarea negativă a gradientului.
Relația de ajustare pentru β, conform algoritmului Fletcher-Reeves, este:
(41)
iar pentru algoritmul Polak-Ribière este:
(42)
În concluzie, metoda gradientului conjugat presupune: căutare inițială plecând din punctul p(0) = -g(0), minimizarea pe direcția respectivă în report cu µ, calculul noii direcții de căutare conform cu relația (38) și a coeficientului β pe baza relațiilor de mai sus.
2.3.3. Algoritmul quasi-Newton
Algoritmul lui Newton este o alternativă la metoda gradientului conjugat, putându-se obține o optimizare mai rapidă. Regula de adaptare a parametrilor RNA multistrat este următoarea:
w(k+1) = w(k) + H -1(k)g(k) (43)
unde H este hessianul (matricea derivatele de ordin 2) indicelui de performanță în raport cu parametrii rețelei neuronale. Hessianul oferă informații suplimentare cu privire la forma suprafeței indicelui de performanță în vecinătatea lui w(k). Algoritmul lui Newton are o convergență mai rapidă în comparație cu algoritmul gradientului conjugat, dar este nevoie de calculul hessianului, care este extrem de costisitor în materie de resurse.
Algoritmul quasi-Newton (metoda secantei) este derivat din algoritmul Newton și nu cere calculul derivatelor de ordin 2. O aproximație a hessianului este folosită la fiecare iterație și este calculată pe baza gradientului.
2.3.4. Algoritmul Levenberg-Marquardt
Una din problemele algoritmului Newton este aceea că hessianul este de dimensiune foarte mare și rareori inversabil. Pentru a depăși această problemă, algoritmul Levenberg-Marquardt folosește o constantă µ:
(44)
unde J(w) este iacobianul ce conține derivatele erorilor RNA în raport cu ponderile și deplasările, I este matricea identitate, e(w) vector ce conține erorile RNA iar o µ constantă de valoare mică. Pentru valori mai mari ale lui µ, termenul poate fi neglijat. Astfel, cuanta cu care vor fi adaptați parametrii va fi -, care este tot un gradient descrescător. Valoarea lui µ este succesiv mărită atât timp cât acest lucru nu conduce la creșterea erorii. Totuși, dacă valoarea lui µ devine prea mare, nu mai are loc nici un proces de învățare, deoarece se apropie de 0. Acest lucru se întâmplă, de obicei, când s-a ajuns la un minim local. Pentru valori mici ale lui µ, algoritmul devine algoritmul lui Gauss-Newton.
2.3.5. Algoritm de antrenare bazat pe filtrul Kalman extins
Filtrul Kalman extins (EKF) utilizat pentru antrenarea RNA poate fi o alternativă foarte bună la metodele care se bazează pe calculul derivatelor de ordinul 2. Esența algoritmului EKF, aplicat la RNA, constă în calculul unei matrice de covarianță a erorii și în ajustarea parametrilor RNA într-un mod secvențial.
Algoritmul de antrenare EKF global (GEKF) a fost pentru prima oară prezentat de Singhal and Wu [Sing 1989] la sfârșitul anilor 80 și a servit ca punct de plecare pentru dezvoltarea unor variante îmbunătățite ale algoritmului. Totuși, deși are performanțe mai bune decât algoritmii backpropagation, cerințele de calcul sunt destul de mari. Complexitatea acestuia este dată de pătratul numărului de parametrii ai RNA, căreia îi este aplicat algoritmul GEKF.
Procesul de instruire a RNA poate fi descris de următorul set de ecuații:
(45)
(46)
în care ecuația (45) este cunoscută și sub denumirea de ecuația procesului. Ea specifică faptul că starea unei RNA ideale (stările în acest caz sunt considerate ponderile RNA wk) este un proces staționar afectat de zgomotul de proces . Ecuația (46), cunoscută și sub denumirea de ecuația de măsurare, explicitează mărimea de ieșire a RNA, yk, ca o funcție neliniară de vectorul de intrări uk, vectorul de ponderi wk. La această funcție se adaugă și zgomotul de măsură vk. Vectorii și vk se consideră a fi zgomote albe de medie zero și covarianțe și .
Problema antrenării utilizând teoria filtrelor Kalman presupune minimizarea mediei statistice a pătratului erorii de estimare a stării w. Se presupune că RNA are un număr de M parametri și No noduri de ieșire. Soluția EKF de antrenare, plecând de la relațiile clasice ale EKF, presupune efectuarea următorilor pași:
(47)
(48)
(49)
(50)
Vectorulreprezintă estimațiile stărilor sistemului (ponderile) la pasul k. Această estimație este calculată pe baza matricii de câștig Kalman Kk și a vectorului de eroare (relația 49). yk este vectorul țintă, iar este ieșirea RNA pentru eșantionul k. Matricea Kk se calculează pe baza matricei de covarianță a erorii Pk, a matricei Hk ce conține derivatele ieșirilor RNA în raport cu ponderile și a matricei Ak, ce reprezintă o matrice globală de scalare (relația 48). Matricea Ak este calculată pe baza matricei de covarianță a zgomotului de măsură Rk și a matricelor Hk și a Pk (relația 47).
Antrenarea RNA folosind algoritmul GEKF este sintetizată în figura 28.
Figura nr. 28. Schema de aplicare a algoritmului EKF
Pașii care trebuie parcurși pentru ajustarea ponderilor în concordanță și cu figura de mai sus, sunt următorii:
Vectorul de intrare uk este propagat înainte prin RNA, rezultând . De asemenea, tot în acest stagiu este calculat și vectorul de eroare .
Matricea Hk ce conține derivatele ieșirilor RNA în raport cu ponderile este obținută prin propagarea înapoi (are loc o propagare înapoi pentru fiecare componentă a vectorului).
Este calculată matricea de câștig Kalman în funcție de matricea Hk, matricea de covarianță a erorii Pk și matricea de covarianță a zgomotului de măsură Rk.
Vectorul ponderilor este ajustat pe baza matricei de câștig Kk, a vectorului de eroare și a vectorului curent de ponderi .
Matricea de covarianță a erorii este ajustată utilizând matricea de câștig Kk, matricea Hk și matricea curentă de covarianță a erorii Pk.
Algoritmul de antrenare pe baza EKF necesită inițializarea unui număr de parametri. Se presupune că lotul de date intrare-ieșire a fost scalat, astfel încât să se situeze într-o plajă rezonabilă de valori (medie zero). Ponderile sunt inițializate cu valori mici, obținute pe baza unei distribuții uniforme și de medie zero. Matricea de covarianță a erorii este astfel inițializată, încât să reflecte faptul că nu au fost utilizate cunoștințe apriori în setarea ponderilor: , unde . Matricea de covarianță a zgomotului de proces Qk este de forma . Pentru început, q poate fi 0.1. Matricea de covarianță a zgomotului de măsură Rk este de forma cu .
2.3.6. Algoritmi de antrenare pentru rețele neuronale cu dinamică
În general, sunt două abordări (cu multe variații în fiecare caz) pentru antrenarea RNA dinamice, care presupun calculul gradientului și al iacobianului: Back-Propagation-Through-Time (BPTT) și Real Time Recurrent Learning (RTRL). În cazul algoritmului BPTT, răspunsul rețelei este calculat pentru toate momentele de timp, iar apoi gradientul este calculat plecând de la momentul de timp curent până la n momente de timp anterioare. Acest algoritm este eficient în calculul gradientului, dar este dificil de implementat on-line. În cazul algoritmului RTRL, gradientul poate fi calculat în același timp cu răspunsul rețelei, deoarece pornește de la timpul inițial și merge n pași înainte în timp. RTRL are nevoie de mai multe calcule pentru determinarea gradientului, dar este mai convenabil pentru implementarea on-line. Teoretic, RTRL este mai eficient decât BPTT, dar depinde foarte mult și de arhitectura rețelei.
2.3.6.1. Considerații generale
Plecând de la cele două abordări amintite mai sus, de-a lungul timpului au apărut destule variante. Diferențele constau în ordinea în care se executau operațiile, cu scopul de a limita volumul de calcul și, astfel, să poată fi mai ușor de implementat on-line.
Se consideră o RNA complet recurentă [Camp 1998] cu n neuroni și m intrări. Se definește y(k) ca fiind un vector de dimensiune ce conține ieșirile neuronilor la momentul de timp k, – vector de dimensiune ce conține intrările externe la momentul de timp k. x(k) este un vector de dimensiune , obținut prin concatenarea celor 2 vectori anteriori cu relația . Se definește U ca fiind setul de indecși ai lui x(k), dacă xp este ieșirea unui neuron, iar I se definește ca fiind setul de indecși a lui x(k), dacă xp este o intrare externă.
Astfel, vom avea:
(51)
Se definește matricea W de dimensiune ce conține ponderile. wij reprezintă ponderea conexiunii dintre neuronul i și neuronul j, dacă sau intrarea externă j dacă
Un exemplu de RNA complet recurentă cu 3 neuroni și 2 intrări externe este dat în figura 29.
Propagarea înainte în rețea se face după următoarele relații:
(52)
(53)
unde fp este funcția de activare a neuronului .
Figura nr. 29. RNA complet recurentă
Se definește eroarea instantanee cu relația:
(54)
unde este mărimea de ieșire dorită pentru ieșirea rețelei p la momentul de timp k. Eroarea instantanee globală este definită ca fiind:
(55)
în timp ce eroarea globală pe un număr de epoci de antrenare [k0 , k1] este:
(56)
În paragraful următor se prezintă algoritmul BPTT pentru o RNA complet recurentă.
2.3.6.2. Back-Propagation-Through-Time (BPTT)
Algoritmul BPTT a fost prezentat pentru prima dată în [Pear 1989; Werb 1990].
Funcția cost de minimizat în acest caz este eroarea pătratică totală peste toate epocile de antrenare, . În continuare, se vor prezenta pe scurt relațiile care stau la baza algoritmului BPTT (metoda gradientului descrescător). Cuanta cu care se vor ajusta ponderile RNA recurente se calculează cu relația:
(57)
unde µ reprezintă rata de ajustare, iar reprezintă ponderea dintre neuronii i și j, , n fiind numărul total de neuroni.
După o serie de calcule și notații care pot fi consultate în Anexa A, relația (57) poate fi scrisă astfel:
(58)
Algoritmul BPTT are cea mai mică complexitate dintre algoritmii bazați pe metode de gradient [Will 1994]. Pentru o rețea neuronală complet recurentă cu n neuroni, deci n2 ponderi, algoritmul are nevoie de nh celule de memorie (h este lungimea unei epoci de antrenare) și de n2h operații pentru calculul variabilei și modificarea parametrilor (ponderi, deplasări).
2.3.6.3. Back-Propagation-Through-Time trunchiat
Varianta on-line a algoritmului BPTT, numit și BPTT trunchiat, a fost prezentată în [Will 1990] pentru o RNA complet recurentă. În acest caz, funcția cost de minimizat este eroarea pătratică instantanee la pasul curent de timp: e2(k).
Relația de ajustare a ponderilor este:
(59)
unde h este dimensiunea timpului pentru care se mai ține cont în calcule de istoria rețelei. Pentru acuratețe, h ar trebui să fie egal cu timpul de la care s-a început antrenarea, dar cum acesta variază, nu ar mai fi posibilă implementarea algoritmului on-line. De aceea, h trebuie să fie constant și cât mai mare, pentru o bună aproximare a funcției cost.
Relația (59) poate fi scrisă:
(60)
Pentru o RNA complet recurentă cu n neuroni, deci n2 ponderi, algoritmul are nevoie de nh celule de memorie și de n2h operații pentru calculul variabilei și modificarea parametrilor (ponderi, deplasări). Aici, h este dimensiunea unei epoci de antrenare.
2.3.6.4. Algoritmul de învățare în timp real recurent
În acest paragraf se va prezenta algoritmul de învățare în timp real recurent (RTRL – Real Time Recurrent Learning).
Relația de ajustare a ponderilor este:
(61)
unde:
(62)
în care derivata este obținută plecând de la următoarea ecuație:
(63)
unde este operatorul Kronecker’s ( dacă i = p; dacă ). Deoarece ponderile nu afectează condițiile inițiale, avem . sp(k+1) este calculat prin relația (52).
Pentru o RNA complet recurentă cu n neuroni, deci n2 ponderi, algoritmul are nevoie de n3 celule de memorie și de n4 operații pentru calculele aritmetice pe un pas de timp (modificarea parametrilor: ponderi, deplasări). De aceea, BPTT este mai eficient decât RTRL, atât în privința numărului de operații cât și a cerințelor de memorie [Will 1994].
2.4. Identificarea sistemelor folosind rețele neuronale artificiale
Cunoașterea modelului unui proces real are o importanță covârșitoare aproape în orice domeniu [Nell 2001]. Modelul oferă posibilitatea de a analiza sistemul în detaliu, de a face o predicție sau de a simula comportamentul sistemului. Tehnici avansate de proiectare a regulatoarelor, de optimizare, de supervizare, detecția și diagnoza defectelor sunt bazate pe modelul procesului analizat.
Calitatea unui model, de obicei, determină și calitatea soluției la care este utilizat. De aceea, modelarea se spune că este “piatra de temelie” pentru dezvoltarea ulterioară a întregii aplicații. Ca o consecință, sunt cerințe tot mai mari pentru scheme de identificare și proceduri de modelare avansate.
În general, literatura de specialitate [Nell 2001] clasifică modele în trei mari categorii:
Modele de tip white box – sunt obținute pe baza unor legi generale din fizică (de exemplu: legea lui Hooke, legea conservării masei, a energiei), chimie, biologie, economie, etc. Toate ecuațiile și parametrii pot fi obținute pe baza modelării teoretice. O caracteristică importantă a acestor modele este aceea că nu depind (sau depind într-o mică măsură) de datele măsurate, iar parametrii modelelor pot fi interpretați pe baza legilor generale din domeniile amintite mai sus.
Modele de tip black box – se bazează exclusiv pe date măsurate. Atât structura modelului, cât și parametrii acestuia sunt obținuți pe baza modelării experimentale. Pentru construirea modelelor de tip black box este nevoie de foarte puține cunoștințe a priori sau chiar deloc. Parametrii modelului nu au nicio interpretare fizică în baza principiilor generale din domeniile mai sus amintite. În această categorie intră și modelele obținute cu ajutorul RNA;
Modele de tip gray box – sunt un compromis sau o combinație între modele de tip black box și white box. Modelele de tip gray box se caracterizează prin integrarea diferitelor tipuri de informații ușor accesibile. De obicei, structura modelului în acest caz se determină pe baza unor cunoștințe a priori, în timp ce parametrii modelului se determină pe baza datelor măsurate.
Prin capacitatea lor de generalizare, RNA permit obținerea unor modele ale sistemelor investigate, sisteme care nu trebuie să fie în exclusivitate liniare. Identificarea sistemelor cu ajutorul RNA prezintă un interes major, datorită următoarelor considerente: se pot identifica cu ușurință sistemele neliniare; modelele rezultate în urma identificării se pot utiliza în structuri de reglare cu RNA, care nu necesită existența unor metode analitice de calcul al legii de comandă.
Pentru identificarea sistemelor se utilizează, de obicei, următoarele tipuri de rețele: RNA multistrat cu sau fără dinamică, rețele RBF, RNA cu neuroni memorie, rețele RNA cu neuroni de ordin înalt, RNA cu filtre sau transformări funcționale, etc.
Procedura de identificare experimentală presupune în general o etapă de formare a datelor și o altă etapă de procesare a datelor în vederea ajustării parametrilor rețelei. În timpul desfășurării experimentului de identificare este necesar să se aibă în vedere următoarele aspecte: variabilele de intrare care influențează ieșirea; se pot aplica semnale de probă sau este necesară observarea în funcționarea normală a procesului; care sunt limitele admise ale semnalului de probă; ce semnal de probă trebuie ales pentru a obține informații cât mai bogate despre proces; procesul se identifică în buclă închisă sau în buclă deschisă; care este timpul maxim de experimentare admis; care este tipul de rețea prin care se aproximează procesul; care este ponderea zgomotului în semnalul de ieșire al sistemului; care este procedura prin care se stabilește structura rețelei.
Modul general de desfășurare a unei procedurii de identificare este prezentat schematic în figura 30.
Figura nr. 30. Schemă de identificare cu RNA
2.5. Conducerea sistemelor folosind rețele neuronale artificiale
În mod tradițional, controlul inteligent înglobează controlul clasic dar și tehnici ce se bazează pe RNA, logica fuzzy, sisteme expert, algoritmi genetici, etc. Totuși, despre fiecare categorie în parte se poate spune că are la bază teoria controlului clasic. De exemplu, despre niciun principiu de proiectare utilizat în controlul neuronal [Whit 1997] nu se poate spune că este specific doar acestei categorii. Ele sunt derivate din principiile clasice ale teoriei controlului.
O definiție simplă a unui regulator neuronal poate fi aceasta: un regulator automat ce utilizează o RNA pentru a genera semnalul de comandă [Hunt 1992]. Deoarece RNA își ajustează parametrii prin mecanismul de antrenare, se poate spune despre acestea că se aseamănă cu regulatoarele adaptive.
În general, în proiectarea unei noi structuri de control neuronal se utilizează una din următoarele direcții: controlul supervizat – RNA sunt antrenate pe baza unui lot de date ce conține semnalele de control corecte pentru anumite situații; controlul invers direct – RNA învață direct maparea dintre traiectoria dorită și semnalele de comandă care conduc procesul pe această traiectorie; controlul neuronal adaptiv; control neuronal de tip adaptive critic – folosește principiile programării dinamice.
Figura nr. 31. Controlul neuronal – extensie a controlului clasic [Whit 1997]
J. Abonyi a propus o clasificare de tip ierarhic prezentată în figura 32 [Abon 2005] și în tabelul 4.
Figura nr. 32. Clasificare regulatoare neuronale [Abon 2005]
Tabelul nr. 4. Descriere a tipurilor de regulatoare neuronale [Abon 2005]
CAPITOLUL AL III-LEA
METODOLOGII DE IDENTIFICARE CU REȚELE NEURONALE MULTISTRAT ȘI INTERN RECURENTE
3.1. Noțiuni generale
BIBLIOGRAFIE
[Abu 1993] Z. R. A. Abu, Machine Learning with Rule Extraction by Genetic Assisted Reinforcement; Application to Nonlinear Control, Ph. D. thesis, Wayne State University, 1993.
[Ahme 2000] M. S. Ahmed, Neural-Net-Based Direct Adaptive Control for a Class Nonlinear Plants, IEEE Transactions on Automatic Control, vol. 45, no. 1, pp. 119-124, 2000.
[Anan 1995] R. Anand, et. al., Efficient Classification for Multiclass Problems Using Modular Neural Networks, IEEE Transactions on Neural Networks, vol. 6, no. 1, pp.117-124, 1995.
[Arbib 1987] M. A. Arbib, Brains, Machines and Mathematics, Springer-Verlag, Berlin, 1987.
[Astr 1995] K. J. Astrom, B. Wittenmark, Adaptive Control, 2nd ed., Addison-Wesley, Reading, MA, 1995.
[Ayou 1996] M. Ayoubi, Nonlinear System Identification Based on Neural Networks with Locally Distributed Dynamics and Applications to Technical Process, VDI Verlag, Düsseldorf, 1996.
[Babu 1998] R. Babuska, Fuzzy Modeling for Control, Kluwer Academic Publishes, Boston, MA, 1998.
[Beal 1972] E. M. L. Beale, A Derivation of Conjugate Gradients, F. A. Lootsma, Numerical Methods for Nonlinear Optimization, Academic Press, London, 1972.
[Bell 1957] R. E. Bellman, Dynamic Programming, Princeton University Press, Princeton, NJ, 1957.
[Chen 2001] L. J. Chen, K. S. Narendra, Nonlinear Adaptive Control Using Neural Networks and Multiple Models, Automatica, vol. 37, no. 8, pp. 1245-1255, 2001.
[Cioc 2001] I. B. Ciocoiu, Rețele neurale artificiale, Ed. Cantes, Iași, 2001.
[Codr 2001] B. Codreș, Al. Codreș, Gh. Pușcașu, Aspects Regarding the Neuro Adaptive Control Structure Properties, SIMSIS 11, Galați, România, pp. 214-219, 2001.
[Codr 2005] Gh. Pușcașu, B. Codreș, A Study Concerning the Elimination of the Neurons or of the Layers from a Multilayer Neural Network, The IVth International Conference On Microelectronics, ICMCS-2005, pp. 279-287, Chișinău, Moldova, vol. 2, 2005.
[Codr 2006] Gh. Pușcașu, B. Codreș, A. Stancu, Identification of the Non-Linear Systems Using Internal Recurrent Neural Networks, The Annals of Dunărea de Jos University of Galați, Fascicle III – Electrotechnics, Electronics, Automatic Control, Informatics, 2006.
[Codr 2006b] Al. Stancu, B. Codreș, Gh. Pușcașu, Aspects Regarding of the Neuro-Adaptive Control Structure Proprieties. Application to the Nonlinear Pneumatic Servo System Benchmark, The Annals of Dunărea de Jos University of Galati, Fascicle III – Electrotechnics, Electronics, Automatic Control, Informatics, 2006.
[Codr 2007] B. Codreș, Gh. Pușcașu, A. Stancu, The Estimation of a Nonlinear Subsystem’s Output Using Internal Recurrent Neural Networks, 9th International Symposium on Automatic Control and Computer Science, SACCS 2007, Romania, 2007.
[Codr 2009] Gh. Pușcașu, B. Codreș, Al. Stancu, G. Murariu, Nonlinear System Identification Based on Internal Recurrent Neural Networks, International Journal of Neural Systems, vol. 19, no. 2, pp. 115-125, 2009.
[Codr 2010] B. Codreș, Gh. Pușcașu, G. Murariu, A. Zanoschi, Identification of a Nonlinear Pneumatic Servo System Using Modular Neural Networks, The Annals of Dunărea de Jos University of Galați, Fascicle III – Electrotechnics, Electronics, Automatic Control, Informatics, vol. 33, no. 2, pp. 40-47, 2010.
[Codr 2011] Gh. Pușcașu, B. Codreș, Nonlinear System Identification And Control Based On Modular Neural Networks, International Journal of Neural Systems, vol. 21, no. 4, pp. 319-334, 2011.
[Cybe 1989] G. Cybenko, Approximation by Superpositions of a Sigmoid Function, Math. Control Signals and Systems, vol. 2, no. 3, pp. 303-314, 1989.
[Elma 1990] J. L. Elman, Finding Structure in Time, Cognitive Science, vol. 14, pp. 179-211, 1990.
[Enăchescu 1998] C. Enăchescu, Bazele teoretice ale rețelelor neuronale, Casa Cărții de Știință, Cluj-Napoca, 1998.
[Enăchescu 2008] C. Enăchescu, Calculul neuronal, Casa Cărții de Știință, Cluj-Napoca 2008.
[Faro 2000] A. Farooq, Biologically Inspired Modular Neural Networks, Ph. D thesis, Faculty of the Virginia Polytechnic Institute and State University, 2000.
[Fu 2007] Y. Fu, T. Chai, Nonlinear Multivariable Adaptive Control Using Multiple Models and Neural Networks, Automatica, vol. 43, no. 6, pp. 1101-1110, 2007.
[Garc 1982] C. E Garcia, M. Morari, Internal Model Control. An Unifying Review and Some New Results, Industrial Engineering Chemical Process Design and Development, vol. 21, pp. 308-332, 1982.
[Gil 1999] P. Gil, J. Henriques et. al., Non-Linear Predictive Control Based on a Recurrent Neural Network, Proc. ESIT99, June 3-4, Crete, Greece, 1999.
[Gutfreund 1992] H. Gutfreund, G. Toulouse, The Physics of Neural Networks, Preprint, 1992.
[Haga 1994] M. Hagan, M. Menhaj, Training Feedforward Networks with the Marquardt Algorithm, IEEE Transactions on Neural Networks, vol. 5, no. 6, pp. 989-993, 1994.
[Haya 2005] T. Hayakawa, W. M. Haddad, N. Hovakimyan, V. S. Chellaboina, Neural Network Adaptive Control for Nonlinear Nonnegative Dynamical System, IEEE Trans. Neural Networks, vol. 16, no. 2, pp. 399-413, 2005.
[Hayk 1999] S. Haykin, Neural Networks. A Comprehensive Foundation, 2nd ed., Prentice Hall, 1999.
[Hebb 1949] D. O. Hebb, The Organization of Behavior, New York, John Wiley, 1949.
[Hopf 1982] J. J. Hopfield, Neural Networks and Physical Systems with Emergent Collective Computational Properties, Proc. Nat. Acad. Sci. (USA) 79, pp. 2554-2558, 1982.
[Horn 1989] K. Hornik, M. Stinchcombe, H. White, Multilayer Feedforward Networks are Universal Approximators, Neural Networks, vol. 2, no. 5, pp. 359-366, 1989.
[Hunt 1992] K. J. Hunt, D. Sbarbaro, R. Zbikowki, P. J. Gawthrop, Neural Networks for Control Systems – A Survey, Automatica, vol. 28, pp. 1083-1112, 1992.
[Jord 1994] M. I. Jordan, R. A. Jacobs, Hierarchical Mixtures of Experts and the EM Algorithm, Neural Computation, vol. 6, pp. 181-214, 1994.
[Koho 1989] T. Kohonen, Self-organisation and Associative Memory, Springer Verlag, Berlin Heidelberg, 1989.
[LeCu 1993] Y. LeCun, Efficient Learning and Second-Order Methods, A Tutorial at NIPS 93, Denver, 1993.
[Lian 1999] J. Liang, M. M. Gupta, Stable Dynamic Backpropagation Learning in Recurrent Neural Networks, IEEE Transactions on Neural Networks, vol. 10, no. 6, pp. 1321-1334, 1999.
[Ljun 1992] L. Ljung, B Wahlberg, Asymptotic Properties of the Least-Squares Method for Estimating Transfer Functions and Disturbance Spectra, Adv. Appl. Prob., vol. 24, pp 412-440, 1992.
[Mill 1995] W. T. Miller, R. S. Sutton, R J. Werbos, Neural Networks for Control, MIT Press, Cambridge, Massachusetts, 1995.
[Mire 1999] L. Mirea, T. Marcu, Development of Dynamic Radial Basis Function Artificial Neural Networks, Buletinul Universității Tehnice Iași, tomul XLV (IL), fasc. 1-4, pp. 5-15, 1999.
[Mire 2000] L. Mirea, T. Marcu, Functional-Link Neural Networks with Dynamic Structure Applied to System Identification, Buletinul Universității Tehnice Iași, tomul XLVI (L), fasc. 1-4, pp. 61-68, 2000.
[Mire 2002a] L. Mirea, T. Marcu, System Identification Using Functional-Link Neural Networks with Dynamic Structure, 15th IFAC World Congress, Barcelona, Spain, CD-ROM Proceedings, 2002.
[McCu 1943] W. S McCulloch, W. Pitts, A Logical Calculus of the Ideas Immanent in Nervous Activity, Bulletin of Mathematical Biophysics, vol. 5, pp. 115-33, 1943.
[Mendel 1970] J. M. Mendel, K. S. Fu, Adaptive, Learning, and Pattern Recognition Systems: Theory and Applications, Academic Press, New York, 1970.
[Mins 1969] M. L. Minsky, S. Papert, Perceptrons: An Introduction to Computational Geometry, MIT Press, Cambridge, Mass, 1969.
[Mood 1989] J. E. Moody, C. J. Darken, Fast Learning in Networks of Locally Tuned Processing Units, Neural Computation, vol. 1, 1989, pp. 281-294.
[Murr 1997] R. Murray-Smith, T. A. Johansen, Multiple Model Approaches to Modeling and Control, Taylor & Francis, New York, 1997.
[Nare 1990] K. S. Narendra, K. Parthasarathy, Identification and Control of Dynamical Systems Using Neural Networks, IEEE Transactions on Neural Networks, vol. 1, no. 1, pp. 4-26, 1990.
[Nare 1992] K. S. Narendra, Adaptive Control of Dynamical Systems Using Neural Networks, D. A. White and D. A. Sofge. (editors), Handbook of Intelligent Control: Neural, Fuzzy and Adaptive Approaches, Van Nostrand-Reinhold, New York, USA, 1992.
[Nare 1997] K. S. Narendra, J. Balakrishnan, Adaptive Control Using Multiple Models, IEEE Trans. Autom. Control, vol. 42, no. 2, pp. 171-187, 1997.
[Nare 2002] K. S. Narendra, K. George, Adaptive Control of Simple Nonlinear Systems Using Multiple Models, Proceedings of the American Control Conference, vol. 3, pp. 1779-1784, 2002.
[Nell 2001] O. Nelles, Nonlinear System Identification: From Classical Approaches to Neural Networks and Fuzzy Models, Ed. Springer, Berlin, Germany, 2001.
[Park 1993] J. Park, I. W. Sandberg, Approximation and Radial Basis Function Networks, Neural Computation, vol. 5, 1993, pp. 305-316.
[Pear 1989] B. A. Pearlmutter, Learning State Space Trajectories in Recurrent Neural Networks, Neural Computation, vol 1, pp. 263-269, 1989.
[Prin 1998] J. C. Principe, L. Wang, M. A. Motter, Local Dynamic Modeling with Self-Organizing Maps and Applications to Nonlinear System Identification and Control, Proc. of IEEE, vol. 86, no. 11, pp. 2240-2258, 1998.
[Powe 1977] M. J. D. Powell, Restart Procedures for the Conjugate Gradient Method, Mathematical Programming, vol. 12, pp. 241-254, 1977.
[Psal 1988] D. Psaltis, A. Sideris, A. A. Yamamura, A Multilayer Neural Network Controller, IEEE Control Systems Magazine, vol. 9, pp. 17-25, 1988.
[Psic 1991] D. C. Psichogios, L. H. Ungar, Direct and Indirect Model Based Control Using Artificial Neural Networks, Industrial and Engineering Chemical Research, vol. 30, pp. 2564-2573, 1991.
[Pușc 1999] Gh. Pușcașu, Al. Stancu, Neural Networks with Applications in Pattern Recognition and Systems Control, Ed. MATRIX ROM, București, 1999.
[Pusc 2000] Gh. Pușcașu, et. al., Sisteme de conducere clasice și inteligente a proceselor, Ed. MATRIX ROM, București, 2000.
[Rose 1957] F. Rosenblatt, The Perceptron, a Parceiving and Recognizing Automaton, Cornell Aeronautical Laboratory Report no. 85-640-1, 1957.
[Rose 1985] D. Rose, V. G. Dobson, Models of the Visual Cortex, Willey, Chichester, 1985.
[Rume 1986] E. D. Rumelhart, E. G. Hinton, J. R. Williams, Learning Internal Representations by Error Propagation, Parallel Distributed Processing, MIT Press, Cambridge, vol. 1, pp. 318-362, 1986.
[Sain 1991] J. Saint-Donat, N. Bhat, T. J. McAvoy, Neural Net Model Predictive Control, International Journal of Control, vol. 54, pp. 1453-1468, 1991.
[Sast 1994] S. P. Satry, et. al., Memory Neuron Networks for Identification and Control of Dynamical Systems, IEEE Neural Networks, vol. 5, no. 2, 1994.
[Shin 2009] Y. C. Shin, C. Xu, Intelligent Systems-Modelling Optimization and Control, Taylor & Francis, 2009.
[Si 2001] J. Si, Y. T. Wang, Online Learning Control by Association and Reinforcement, IEEE Transactions on Neural Networks, vol. 12, no. 2, pp. 264-76, 2001.
[Sing 1989] S. Singhal, L. Wu, Training Feed Forward Networks with Extended Kalman Filter Algorithm, Proc. Int. Conf. ASSP, pp. 1187-1190, 1989.
[Sofg 1990] D. A. Sofge, D. A. White, Neural Network Based Process Optimization and Control, Proceedings of the IEEE Conference on Decision & Control, pp. 3270-3276, 1990.
[Sjöb 1994] J. Sjöberg, H. Hjalmerson, L. Ljung, Neural Networks in System Identification, Preprints 10th IFAC Symposium on SYSID, Copenhagen, Denmark, vol. 2, pp. 49-71, 1994.
[Sjöv 2008] P. Sjövall, Th. Abrahamsson, Substructure System Identification from Coupled System Test Data, Mechanical Systems and Signal Processing, vol. 22, pp. 15-33, Elsevier, London, 2008.
[Söde 1983] T. Söderström, L. Ljung, User Choices for Recursive Identification Methods, Proc. IAESTED Conf on Applied Control and Identification, ACI '83, Lyngby, Denmark, pp. 24-14, 1983.
[Srin 1994] B. Srinivasan, et. al., Backpropagation through Adjoints for the Identification of Non-linear Dynamic Systems Using Recurrent Neural Models, IEEE Transactions on Neural Networks, vol. 5 no. 2, pp. 213-228, 1994.
[Sun 2008] L. Sun, A. Sano, Nolinear System Identification Based on Local Sub-Model Networks, Proceedings of the 17th World Congress IFAC, Seoul, Korea, pp. 4030-4035, 2008.
[Sutton 1984] R. S. Sutton, Temporal Credit Assignment in Reinforcement Learning, Ph. D. Dissertation, University of Massachusetts, Amherst, 1984.
[Swin 1990] R. W. Swiniarski, Novel Neural Network Based Self-Tuning PID Controller which Uses Pattern Recognition Techniques, Proceedings of the American Control Conference, pp. 3023-3024, 1990.
[Tham 2002b] G. Thampi, J. C. Principe, J. Cho, M. A. Motter, Adaptive Inverse Control Using SOM Based Multiple Models, Proc. Portuguese Conf. Automatic Control, pp. 278-282, 2002.
[Theo 2010] D. Theodoridis, Y. Boutalis, M. Christodoulou, Indirect Adaptive Control of Unknown Multi Variable Nonlinear Systems with Parametric and Dynamic Uncertainties Using a New Neuro-Fuzzy System Description, International Journal of Neural Systems, vol. 20, no. 2, pp. 129-148, 2010.
[Trou 1991] T. Troudet, Towards Practical Control Design Using Neural Computation, Proceedings of the International Conference on Neural Networks, vol. 2, pp. 675-681, IEEE Press, Piscataway, New Jersey, 1991.
[Unga 1995] L. H. Ungar, Process Control, The Handbook of Brain Theory and Neural Networks, Ed. M. A. Arbib, MIT Press, pp. 760-764, 1995.
[Verd 2002] V. Verdult, Nonlinear System Identification: A State-Space Approach, Ph. D thesis, University of Twente, 2002.
[Yue 2005] M. Yue, R. Schlueter, An Algorithm and Properties Enabling Identification of Bifurcation Subsystems, Electric Power Components and Systems, vol. 33, Taylor & Francis Inc., pp. 611-628, 2005.
[Wahl 1991] B. Wahlberg, System Identification Using Laguerre Filters, IEEE Trans. Automatic Control, vol. 36, pp. 551-562, 1991.
[Wang 2005] D. Wang, J. Huang, Neural Network-Based Adaptive Dynamic Surface Control for a Class of Uncertain Nonlinear Systems in Strict-Feedback Form, IEEE Trans. Neural Networks, vol. 16, no. 1, pp. 195-202, 2005.
[Werb 1990] P. J. Werbos, Backpropagation through Time: What It Does and How to Do It, Proc. of IEEE, special issue on neural networks, vol. 78, no. 10, pp. 1550-1560, 1990.
[Werb 1990b] P. J. Werbos, A Menu of Designs for Reinforcement Learning over Time, Neural Networks for Control, MIT Press, Cambridge, MA, pp. 67-95, 1990.
[Werb 1992] P. J. Werbos, Approximate Dynamic Programming for Real-Time Control and Neural Modelling, Handbook of Intelligent Control: Neural, Fuzzy and Adaptive Approaches, Van Nostrandm Reinhold, New York, pp. 493-525, 1992.
[White 1992] D. E. White, D. A. Sofge, Handbook of Intelligent Control, Van Nostrad-Reinhold, New York, pp. 469-491, 1992.
[Widr 1960] B. Widrow, M. A. Lehr, 30 Years of Adaptive Neural Networks: Perceptron, Madaline and Backpropagation, Proceedings of the Institute of Electrical and Electronics Engineers, vol. 78, pp. 1415-1442, 1960.
[Whit 1997] D. White, D. Sofge, Handbook of Intelligent Control: Neural, Fuzzy, and Adaptive Approaches, Ed. Van Nostrand Reinhold, New York, 1997.
[Will 1994] R. J. Williams, D. Zipser, Gradient-Based Learning Algorithms for Recurrent Networks and Their Computational Complexity, Backpropagation: Theory Architectures and Applications, Eds. Hillsdale, Lawrence Erlbaum Associates, New York, pp. 433-486, 1994.
[Will 1990] R. J. Williams, J. Peng, An Efficient Gradient-Based Algorithm for Online Training of Recurrent Network Trajectories, Neural Computation, vol. 2, pp. 490-501, 1990.
[Zaha 2006] D. Zaharie, Rețele neuronale. Note de curs, Universitatea de Vest, Timișoara 2006.
[Zhu 2004] Q. Zhu, L. Guo, Stable Adaptive Neurocontrol for Nonlinear Discrete-Time Systems, IEEE Trans. Neural Networks, vol. 15, no. 3, pp. 653-662, 2004.
BIBLIOGRAFIE
[Abu 1993] Z. R. A. Abu, Machine Learning with Rule Extraction by Genetic Assisted Reinforcement; Application to Nonlinear Control, Ph. D. thesis, Wayne State University, 1993.
[Ahme 2000] M. S. Ahmed, Neural-Net-Based Direct Adaptive Control for a Class Nonlinear Plants, IEEE Transactions on Automatic Control, vol. 45, no. 1, pp. 119-124, 2000.
[Anan 1995] R. Anand, et. al., Efficient Classification for Multiclass Problems Using Modular Neural Networks, IEEE Transactions on Neural Networks, vol. 6, no. 1, pp.117-124, 1995.
[Arbib 1987] M. A. Arbib, Brains, Machines and Mathematics, Springer-Verlag, Berlin, 1987.
[Astr 1995] K. J. Astrom, B. Wittenmark, Adaptive Control, 2nd ed., Addison-Wesley, Reading, MA, 1995.
[Ayou 1996] M. Ayoubi, Nonlinear System Identification Based on Neural Networks with Locally Distributed Dynamics and Applications to Technical Process, VDI Verlag, Düsseldorf, 1996.
[Babu 1998] R. Babuska, Fuzzy Modeling for Control, Kluwer Academic Publishes, Boston, MA, 1998.
[Beal 1972] E. M. L. Beale, A Derivation of Conjugate Gradients, F. A. Lootsma, Numerical Methods for Nonlinear Optimization, Academic Press, London, 1972.
[Bell 1957] R. E. Bellman, Dynamic Programming, Princeton University Press, Princeton, NJ, 1957.
[Chen 2001] L. J. Chen, K. S. Narendra, Nonlinear Adaptive Control Using Neural Networks and Multiple Models, Automatica, vol. 37, no. 8, pp. 1245-1255, 2001.
[Cioc 2001] I. B. Ciocoiu, Rețele neurale artificiale, Ed. Cantes, Iași, 2001.
[Codr 2001] B. Codreș, Al. Codreș, Gh. Pușcașu, Aspects Regarding the Neuro Adaptive Control Structure Properties, SIMSIS 11, Galați, România, pp. 214-219, 2001.
[Codr 2005] Gh. Pușcașu, B. Codreș, A Study Concerning the Elimination of the Neurons or of the Layers from a Multilayer Neural Network, The IVth International Conference On Microelectronics, ICMCS-2005, pp. 279-287, Chișinău, Moldova, vol. 2, 2005.
[Codr 2006] Gh. Pușcașu, B. Codreș, A. Stancu, Identification of the Non-Linear Systems Using Internal Recurrent Neural Networks, The Annals of Dunărea de Jos University of Galați, Fascicle III – Electrotechnics, Electronics, Automatic Control, Informatics, 2006.
[Codr 2006b] Al. Stancu, B. Codreș, Gh. Pușcașu, Aspects Regarding of the Neuro-Adaptive Control Structure Proprieties. Application to the Nonlinear Pneumatic Servo System Benchmark, The Annals of Dunărea de Jos University of Galati, Fascicle III – Electrotechnics, Electronics, Automatic Control, Informatics, 2006.
[Codr 2007] B. Codreș, Gh. Pușcașu, A. Stancu, The Estimation of a Nonlinear Subsystem’s Output Using Internal Recurrent Neural Networks, 9th International Symposium on Automatic Control and Computer Science, SACCS 2007, Romania, 2007.
[Codr 2009] Gh. Pușcașu, B. Codreș, Al. Stancu, G. Murariu, Nonlinear System Identification Based on Internal Recurrent Neural Networks, International Journal of Neural Systems, vol. 19, no. 2, pp. 115-125, 2009.
[Codr 2010] B. Codreș, Gh. Pușcașu, G. Murariu, A. Zanoschi, Identification of a Nonlinear Pneumatic Servo System Using Modular Neural Networks, The Annals of Dunărea de Jos University of Galați, Fascicle III – Electrotechnics, Electronics, Automatic Control, Informatics, vol. 33, no. 2, pp. 40-47, 2010.
[Codr 2011] Gh. Pușcașu, B. Codreș, Nonlinear System Identification And Control Based On Modular Neural Networks, International Journal of Neural Systems, vol. 21, no. 4, pp. 319-334, 2011.
[Cybe 1989] G. Cybenko, Approximation by Superpositions of a Sigmoid Function, Math. Control Signals and Systems, vol. 2, no. 3, pp. 303-314, 1989.
[Elma 1990] J. L. Elman, Finding Structure in Time, Cognitive Science, vol. 14, pp. 179-211, 1990.
[Enăchescu 1998] C. Enăchescu, Bazele teoretice ale rețelelor neuronale, Casa Cărții de Știință, Cluj-Napoca, 1998.
[Enăchescu 2008] C. Enăchescu, Calculul neuronal, Casa Cărții de Știință, Cluj-Napoca 2008.
[Faro 2000] A. Farooq, Biologically Inspired Modular Neural Networks, Ph. D thesis, Faculty of the Virginia Polytechnic Institute and State University, 2000.
[Fu 2007] Y. Fu, T. Chai, Nonlinear Multivariable Adaptive Control Using Multiple Models and Neural Networks, Automatica, vol. 43, no. 6, pp. 1101-1110, 2007.
[Garc 1982] C. E Garcia, M. Morari, Internal Model Control. An Unifying Review and Some New Results, Industrial Engineering Chemical Process Design and Development, vol. 21, pp. 308-332, 1982.
[Gil 1999] P. Gil, J. Henriques et. al., Non-Linear Predictive Control Based on a Recurrent Neural Network, Proc. ESIT99, June 3-4, Crete, Greece, 1999.
[Gutfreund 1992] H. Gutfreund, G. Toulouse, The Physics of Neural Networks, Preprint, 1992.
[Haga 1994] M. Hagan, M. Menhaj, Training Feedforward Networks with the Marquardt Algorithm, IEEE Transactions on Neural Networks, vol. 5, no. 6, pp. 989-993, 1994.
[Haya 2005] T. Hayakawa, W. M. Haddad, N. Hovakimyan, V. S. Chellaboina, Neural Network Adaptive Control for Nonlinear Nonnegative Dynamical System, IEEE Trans. Neural Networks, vol. 16, no. 2, pp. 399-413, 2005.
[Hayk 1999] S. Haykin, Neural Networks. A Comprehensive Foundation, 2nd ed., Prentice Hall, 1999.
[Hebb 1949] D. O. Hebb, The Organization of Behavior, New York, John Wiley, 1949.
[Hopf 1982] J. J. Hopfield, Neural Networks and Physical Systems with Emergent Collective Computational Properties, Proc. Nat. Acad. Sci. (USA) 79, pp. 2554-2558, 1982.
[Horn 1989] K. Hornik, M. Stinchcombe, H. White, Multilayer Feedforward Networks are Universal Approximators, Neural Networks, vol. 2, no. 5, pp. 359-366, 1989.
[Hunt 1992] K. J. Hunt, D. Sbarbaro, R. Zbikowki, P. J. Gawthrop, Neural Networks for Control Systems – A Survey, Automatica, vol. 28, pp. 1083-1112, 1992.
[Jord 1994] M. I. Jordan, R. A. Jacobs, Hierarchical Mixtures of Experts and the EM Algorithm, Neural Computation, vol. 6, pp. 181-214, 1994.
[Koho 1989] T. Kohonen, Self-organisation and Associative Memory, Springer Verlag, Berlin Heidelberg, 1989.
[LeCu 1993] Y. LeCun, Efficient Learning and Second-Order Methods, A Tutorial at NIPS 93, Denver, 1993.
[Lian 1999] J. Liang, M. M. Gupta, Stable Dynamic Backpropagation Learning in Recurrent Neural Networks, IEEE Transactions on Neural Networks, vol. 10, no. 6, pp. 1321-1334, 1999.
[Ljun 1992] L. Ljung, B Wahlberg, Asymptotic Properties of the Least-Squares Method for Estimating Transfer Functions and Disturbance Spectra, Adv. Appl. Prob., vol. 24, pp 412-440, 1992.
[Mill 1995] W. T. Miller, R. S. Sutton, R J. Werbos, Neural Networks for Control, MIT Press, Cambridge, Massachusetts, 1995.
[Mire 1999] L. Mirea, T. Marcu, Development of Dynamic Radial Basis Function Artificial Neural Networks, Buletinul Universității Tehnice Iași, tomul XLV (IL), fasc. 1-4, pp. 5-15, 1999.
[Mire 2000] L. Mirea, T. Marcu, Functional-Link Neural Networks with Dynamic Structure Applied to System Identification, Buletinul Universității Tehnice Iași, tomul XLVI (L), fasc. 1-4, pp. 61-68, 2000.
[Mire 2002a] L. Mirea, T. Marcu, System Identification Using Functional-Link Neural Networks with Dynamic Structure, 15th IFAC World Congress, Barcelona, Spain, CD-ROM Proceedings, 2002.
[McCu 1943] W. S McCulloch, W. Pitts, A Logical Calculus of the Ideas Immanent in Nervous Activity, Bulletin of Mathematical Biophysics, vol. 5, pp. 115-33, 1943.
[Mendel 1970] J. M. Mendel, K. S. Fu, Adaptive, Learning, and Pattern Recognition Systems: Theory and Applications, Academic Press, New York, 1970.
[Mins 1969] M. L. Minsky, S. Papert, Perceptrons: An Introduction to Computational Geometry, MIT Press, Cambridge, Mass, 1969.
[Mood 1989] J. E. Moody, C. J. Darken, Fast Learning in Networks of Locally Tuned Processing Units, Neural Computation, vol. 1, 1989, pp. 281-294.
[Murr 1997] R. Murray-Smith, T. A. Johansen, Multiple Model Approaches to Modeling and Control, Taylor & Francis, New York, 1997.
[Nare 1990] K. S. Narendra, K. Parthasarathy, Identification and Control of Dynamical Systems Using Neural Networks, IEEE Transactions on Neural Networks, vol. 1, no. 1, pp. 4-26, 1990.
[Nare 1992] K. S. Narendra, Adaptive Control of Dynamical Systems Using Neural Networks, D. A. White and D. A. Sofge. (editors), Handbook of Intelligent Control: Neural, Fuzzy and Adaptive Approaches, Van Nostrand-Reinhold, New York, USA, 1992.
[Nare 1997] K. S. Narendra, J. Balakrishnan, Adaptive Control Using Multiple Models, IEEE Trans. Autom. Control, vol. 42, no. 2, pp. 171-187, 1997.
[Nare 2002] K. S. Narendra, K. George, Adaptive Control of Simple Nonlinear Systems Using Multiple Models, Proceedings of the American Control Conference, vol. 3, pp. 1779-1784, 2002.
[Nell 2001] O. Nelles, Nonlinear System Identification: From Classical Approaches to Neural Networks and Fuzzy Models, Ed. Springer, Berlin, Germany, 2001.
[Park 1993] J. Park, I. W. Sandberg, Approximation and Radial Basis Function Networks, Neural Computation, vol. 5, 1993, pp. 305-316.
[Pear 1989] B. A. Pearlmutter, Learning State Space Trajectories in Recurrent Neural Networks, Neural Computation, vol 1, pp. 263-269, 1989.
[Prin 1998] J. C. Principe, L. Wang, M. A. Motter, Local Dynamic Modeling with Self-Organizing Maps and Applications to Nonlinear System Identification and Control, Proc. of IEEE, vol. 86, no. 11, pp. 2240-2258, 1998.
[Powe 1977] M. J. D. Powell, Restart Procedures for the Conjugate Gradient Method, Mathematical Programming, vol. 12, pp. 241-254, 1977.
[Psal 1988] D. Psaltis, A. Sideris, A. A. Yamamura, A Multilayer Neural Network Controller, IEEE Control Systems Magazine, vol. 9, pp. 17-25, 1988.
[Psic 1991] D. C. Psichogios, L. H. Ungar, Direct and Indirect Model Based Control Using Artificial Neural Networks, Industrial and Engineering Chemical Research, vol. 30, pp. 2564-2573, 1991.
[Pușc 1999] Gh. Pușcașu, Al. Stancu, Neural Networks with Applications in Pattern Recognition and Systems Control, Ed. MATRIX ROM, București, 1999.
[Pusc 2000] Gh. Pușcașu, et. al., Sisteme de conducere clasice și inteligente a proceselor, Ed. MATRIX ROM, București, 2000.
[Rose 1957] F. Rosenblatt, The Perceptron, a Parceiving and Recognizing Automaton, Cornell Aeronautical Laboratory Report no. 85-640-1, 1957.
[Rose 1985] D. Rose, V. G. Dobson, Models of the Visual Cortex, Willey, Chichester, 1985.
[Rume 1986] E. D. Rumelhart, E. G. Hinton, J. R. Williams, Learning Internal Representations by Error Propagation, Parallel Distributed Processing, MIT Press, Cambridge, vol. 1, pp. 318-362, 1986.
[Sain 1991] J. Saint-Donat, N. Bhat, T. J. McAvoy, Neural Net Model Predictive Control, International Journal of Control, vol. 54, pp. 1453-1468, 1991.
[Sast 1994] S. P. Satry, et. al., Memory Neuron Networks for Identification and Control of Dynamical Systems, IEEE Neural Networks, vol. 5, no. 2, 1994.
[Shin 2009] Y. C. Shin, C. Xu, Intelligent Systems-Modelling Optimization and Control, Taylor & Francis, 2009.
[Si 2001] J. Si, Y. T. Wang, Online Learning Control by Association and Reinforcement, IEEE Transactions on Neural Networks, vol. 12, no. 2, pp. 264-76, 2001.
[Sing 1989] S. Singhal, L. Wu, Training Feed Forward Networks with Extended Kalman Filter Algorithm, Proc. Int. Conf. ASSP, pp. 1187-1190, 1989.
[Sofg 1990] D. A. Sofge, D. A. White, Neural Network Based Process Optimization and Control, Proceedings of the IEEE Conference on Decision & Control, pp. 3270-3276, 1990.
[Sjöb 1994] J. Sjöberg, H. Hjalmerson, L. Ljung, Neural Networks in System Identification, Preprints 10th IFAC Symposium on SYSID, Copenhagen, Denmark, vol. 2, pp. 49-71, 1994.
[Sjöv 2008] P. Sjövall, Th. Abrahamsson, Substructure System Identification from Coupled System Test Data, Mechanical Systems and Signal Processing, vol. 22, pp. 15-33, Elsevier, London, 2008.
[Söde 1983] T. Söderström, L. Ljung, User Choices for Recursive Identification Methods, Proc. IAESTED Conf on Applied Control and Identification, ACI '83, Lyngby, Denmark, pp. 24-14, 1983.
[Srin 1994] B. Srinivasan, et. al., Backpropagation through Adjoints for the Identification of Non-linear Dynamic Systems Using Recurrent Neural Models, IEEE Transactions on Neural Networks, vol. 5 no. 2, pp. 213-228, 1994.
[Sun 2008] L. Sun, A. Sano, Nolinear System Identification Based on Local Sub-Model Networks, Proceedings of the 17th World Congress IFAC, Seoul, Korea, pp. 4030-4035, 2008.
[Sutton 1984] R. S. Sutton, Temporal Credit Assignment in Reinforcement Learning, Ph. D. Dissertation, University of Massachusetts, Amherst, 1984.
[Swin 1990] R. W. Swiniarski, Novel Neural Network Based Self-Tuning PID Controller which Uses Pattern Recognition Techniques, Proceedings of the American Control Conference, pp. 3023-3024, 1990.
[Tham 2002b] G. Thampi, J. C. Principe, J. Cho, M. A. Motter, Adaptive Inverse Control Using SOM Based Multiple Models, Proc. Portuguese Conf. Automatic Control, pp. 278-282, 2002.
[Theo 2010] D. Theodoridis, Y. Boutalis, M. Christodoulou, Indirect Adaptive Control of Unknown Multi Variable Nonlinear Systems with Parametric and Dynamic Uncertainties Using a New Neuro-Fuzzy System Description, International Journal of Neural Systems, vol. 20, no. 2, pp. 129-148, 2010.
[Trou 1991] T. Troudet, Towards Practical Control Design Using Neural Computation, Proceedings of the International Conference on Neural Networks, vol. 2, pp. 675-681, IEEE Press, Piscataway, New Jersey, 1991.
[Unga 1995] L. H. Ungar, Process Control, The Handbook of Brain Theory and Neural Networks, Ed. M. A. Arbib, MIT Press, pp. 760-764, 1995.
[Verd 2002] V. Verdult, Nonlinear System Identification: A State-Space Approach, Ph. D thesis, University of Twente, 2002.
[Yue 2005] M. Yue, R. Schlueter, An Algorithm and Properties Enabling Identification of Bifurcation Subsystems, Electric Power Components and Systems, vol. 33, Taylor & Francis Inc., pp. 611-628, 2005.
[Wahl 1991] B. Wahlberg, System Identification Using Laguerre Filters, IEEE Trans. Automatic Control, vol. 36, pp. 551-562, 1991.
[Wang 2005] D. Wang, J. Huang, Neural Network-Based Adaptive Dynamic Surface Control for a Class of Uncertain Nonlinear Systems in Strict-Feedback Form, IEEE Trans. Neural Networks, vol. 16, no. 1, pp. 195-202, 2005.
[Werb 1990] P. J. Werbos, Backpropagation through Time: What It Does and How to Do It, Proc. of IEEE, special issue on neural networks, vol. 78, no. 10, pp. 1550-1560, 1990.
[Werb 1990b] P. J. Werbos, A Menu of Designs for Reinforcement Learning over Time, Neural Networks for Control, MIT Press, Cambridge, MA, pp. 67-95, 1990.
[Werb 1992] P. J. Werbos, Approximate Dynamic Programming for Real-Time Control and Neural Modelling, Handbook of Intelligent Control: Neural, Fuzzy and Adaptive Approaches, Van Nostrandm Reinhold, New York, pp. 493-525, 1992.
[White 1992] D. E. White, D. A. Sofge, Handbook of Intelligent Control, Van Nostrad-Reinhold, New York, pp. 469-491, 1992.
[Widr 1960] B. Widrow, M. A. Lehr, 30 Years of Adaptive Neural Networks: Perceptron, Madaline and Backpropagation, Proceedings of the Institute of Electrical and Electronics Engineers, vol. 78, pp. 1415-1442, 1960.
[Whit 1997] D. White, D. Sofge, Handbook of Intelligent Control: Neural, Fuzzy, and Adaptive Approaches, Ed. Van Nostrand Reinhold, New York, 1997.
[Will 1994] R. J. Williams, D. Zipser, Gradient-Based Learning Algorithms for Recurrent Networks and Their Computational Complexity, Backpropagation: Theory Architectures and Applications, Eds. Hillsdale, Lawrence Erlbaum Associates, New York, pp. 433-486, 1994.
[Will 1990] R. J. Williams, J. Peng, An Efficient Gradient-Based Algorithm for Online Training of Recurrent Network Trajectories, Neural Computation, vol. 2, pp. 490-501, 1990.
[Zaha 2006] D. Zaharie, Rețele neuronale. Note de curs, Universitatea de Vest, Timișoara 2006.
[Zhu 2004] Q. Zhu, L. Guo, Stable Adaptive Neurocontrol for Nonlinear Discrete-Time Systems, IEEE Trans. Neural Networks, vol. 15, no. 3, pp. 653-662, 2004.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Retelele Neuronale (ID: 150388)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
