Post on 08-Apr-2018
transcript
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 1/54
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 2/54
ŞCOALA DOCTORALĂ
RAPORT DE CERCETARE
ŞTIINŢIFICĂ
STUDIU PRIVIND STADIUL ACTUAL ÎNUTILIZAREA REŢELELOR NEURONALE
PENTRU IDENTIFICAREA ŞI MODELAREASISTEMELOR
Domeniul de doctorat: Ingineria Sistemelor
Conducător Ştiinţific, Doctorand,Prof. Univ. Dr. Ing. Ioan Naşcu Drd. Ing. Bogdan Mureşan
Anul 2009
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 3/54
CUPRINS
Capitolul 1. Introducere .................................................................................................................... 1
1.1 Generalităţi ................................................................................................................................. 1
1.2 Sistemul nervos biologic ............................................................................................................ 2
1.3 Neuronul artificial ...................................................................................................................... 4
Capitolul 2. Arhitecturi de reţele neuronale.................................................................................... 8
2.1 Reţele neuronale feedforward .................................................................................................... 8
2.1.1 Perceptronul simplu ............................................................................................................ 9
2.1.2 Modelul Adaline ............................................................................................................... 10
2.1.3 Perceptronul multistrat ...................................................................................................... 12
2.2 Reţele neuronale recurente ....................................................................................................... 13
2.2.1 Introducere ........................................................................................................................ 13 2.2.2 Reţele neuronale de tip Hopfield ...................................................................................... 15
2.3 Reţele neuronale bazate pe funcţii radiale................................................................................ 17
Capitolul 3. Algoritmi de învăţare a reţelelor neuronale ............................................................. 22
3.1 Învăţare supervizată.................................................................................................................. 22
3.1.1 Algoritmul Back-Propagation ........................................................................................... 22
3.1.2 Algoritmi rapizi de antrenament pentru reţele neuronale feedforward............................. 26
3.2 Învăţare nesupervizată .............................................................................................................. 30
3.2.1 Algoritmul hebbian generalizat ......................................................................................... 31 3.3 Învăţarea prin întărire (Reinforcement Learning) .................................................................... 32
Capitolul 4. Reţele neuronale în identificarea şi modelarea sistemelor ...................................... 35
Capitolul 5. Stadiul actual în utilizarea reţelelor neuronale pentru identificarea și controlulproceselor .......................................................................................................................................... 40
Capitolul 6. Concluzii ...................................................................................................................... 47
Bibliografie ....................................................................................................................................... 49
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 4/54
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 5/54
1
Capitolul 1. Introducere
1.1 Generalităţi
Problema inteligenţei artificiale, deci implicit şi a reţelelor neuronale ca o componentă a
acesteia, preocupă un număr mare de cercetători din cele mai diverse domenii ale ştiinţei. Reţelele
neuronale reprezintă o încercare de a modela, de a simula – momentan, într-un mod destul de
rudimentar încă – structura şi funcţiile creierului specifice organismelor vii. La fel ca şi în natură,
funcţia reţelei este determinată de legăturile dintre elemente.
Interesul deosebit pentru acest domeniu este motivat de recunoaşterea faptului că, creierul
uman este deosebit de complex şi eficient în acţiunile sale, însă modul în care acesta procesează
datele este complet diferit faţă de cel al calculatoarelor numerice convenţionale. Astfel, spre
deosebire de maşinile clasice von Neumann, unde există o unitate de procesare care execută în mod
serial instrucţiunile stocate în memorie, adică numai o instrucţiune la un moment dat, reţelele
neuronale utilizează în mod masiv paralelismul [2].
Ca şi o definiţie generală, se poate spune că r eţelele neuronale reprezintă un sistem de
procesare a semnalelor, compus dintr-un număr mare de elemente interconectate, numite neuroni
artificiali – echivalenţi neuronilor biologici.
O altă definiț ie este dată de Simon Haykin care consideră că o reţea neuronală este un
procesor masiv paralel, distribuit, care are o tendinţă naturală de a î nmagazina cunoştinţe
experimentale şi de a le face disponibile pentru utilizare [27].
Ea se aseamănă cu creierul î n două privinţe: cunoştinţele sunt căpătate de reţea printr -un
proces de învăţare; cunoştinţele sunt depozitate nu în unităţile de procesare (neuroni), ci în
conexiunile interneuronale, cunoscute drept ponderi sinaptice.
În general, o reţea neuronală se comportă ca un sistem adaptiv, care îşi modifică (adaptează)
structura în funcţie de variaţiile interne ale sistemului sau variaţiile externe ale mediului. Adaptarea
la condiţiile mediului constă în modificarea ponderilor asociate conexiunilor dintre neuroni şi
eventual a structurii reţelei neuronale.
Reţelele neuronale nu dispun de unităţi de procesare puternice, dimpotrivă, acestea sunt
caracterizate printr-o simplitate extremă, î nsă interacţiunile lor per ansamblu produc rezultate
complexe datorită numărului mare de conexiuni.
Deja o serie de aplicaţii, cum ar fi procesarea de imagini, recunoaşterea de forme sau
caractere, sinteza semnalului vocal au devenit clasice în domeniul inteligenţei artificiale. Datoritădezvoltării de noi arhitecturi şi algoritmi de învăţare reţelele neuronale îşi găsesc tot mai mult
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 6/54
2
aplicabilitatea şi sunt utilizate cu success în identificarea, modelarea şi controlul sistemelor
dinamice. Dacă ne referim la controlul sistemelor trebuie menţionate următoarele proprietăţi ale
reţelelor neuronale :
- Capacitatea de a aproxima comportamentele neliniare ale sistemelor, deci de a
modela sisteme neliniare. În acest sens, reţelele neuronale pot fi antrenate respectând tehnici deoptimizare, fără a fi necesară implementarea unor algoritmi deosebit de complecşi pentru a obţine
rezultate satisfăcătoare;
- Capacitatea de adaptare şi învăţare permit utilizarea în controlul unor procese
complexe şi care prezintă incertitudini. Reţelele neuronale învaţă utilizând date din trecutul
procesului studiat, iar după ce sunt antrenate au capacitatea de generalizare în cazul apariţiei de
semnale ce nu apar în setul de învăţare. Mai mult, au proprietatea de adaptare on-line, ce are imediat
aplicabilitate în controlul adaptiv;- Posibilitatea de implementare paralelă a reţelelor neuronale conduc la un grad
ridicat de toleranţă la erori;
- Reţelele neuronale pot procesa mai multe intrări şi ieşiri. Deci sunt imediat
aplicabile sistemelor multivariabile, caz în care implementarea unor algoritmi clasici este deosebit
de dificilă şi de complexă;
- Implementările hardware ale reţelelor neuronale, cum ar fi de exemplu prin
intermediul circuitelor integrate pe scară largă (VLSI), permit utilizarea reţelelor neuronale în
cadrul aplicaţiilor de timp real.
1.2 Sistemul nervos biologic
Pentru a înţelege mai bine modul de abordare folosit la conceperea reţelelor neuronale
trebuie precizat modul de funcţionare al sistemului nervos.
Se estimează că în creierul uman există o reţea formată dintr-un număr între 1010 şi 1011
miliarde de neuroni puternic conectaţi între ei printr-un număr de sinapse de ordinul trilioanelor.În Fig. 1.2.1 apare structura unui neuron. Astfel, un neuron are următoarele părţi
componente principale :
- Soma sau corpul celulei este partea centrală a celulei care realizează majoritatea
funcţiilor neuronului. Conţine mecanismul metabolic şi genetic necesar menţinerii activităţii
neuronului;
- Axonul (ieşirea celulei) este o fibră mai lungă, neramificată, o prelungire a corpului
celulei (citoplasmă) care poate ajunge la 1, 1.5 metri. Funcţia îndeplinită de axon este aceea de a
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 7/54
3
conduce influxul nervos de la corpul celulei la dendritele sau corpul celular al altei celule nervoase,
sau la o celulă efectoare;
Fig. 1.2.1 Structura celulei nervoase (neuron)
- Dendritele (numite aşa datorită asemănării cu un copac, în limba greacă ”dendron”
= copac) sunt intrările neuronului, prelungiri ale citoplasmei, fibre scurte şi bogat ramificate.
Dentritele recepţionează impulsuri nervoase şi le transmite corpului neuronului. Un neuron poate
avea până la 104 dendrite;
- Interacț iunea dintre neuroni se realizează prin sinapse. Sinapsele (vezi Fig. 1.2.1)
reprezintă joncț iuni specilizate prin care neuronii comunică cu alț i neuroni , dar și cu celule non-
neuronale cum ar fi mușchii sau glandele. Tipul cel mai răspandit de sinapsă este sinapsa chimică,
ce operează astfel: un proces presinaptic eliberează o substanţă transmiţătoare, care difuzează peste
joncţiunea sinaptică dintre neuroni şi apoi acţionează asupra unui proces postsinaptic. Altfel spus, o
sinapsă converteşte un semnal electric presinaptic într-un semnal chimic (ioni de sodiu şi potasiu) şi
apoi din nou într-un semnal electric postsinaptic.
Sinapsele dintre doi neuroni se pot realiza în trei feluri: între butonii terminali ai axonului
unui neuron și dendritele unui alt neuron (sinapse axo-dendritice), între butonii terminali ai
axonului unui neuron și corpul unui alt neuron (sinapse axo-somatice) și între butonii terminali ai
axonului unui neuron și porț iunea incipientă a axonului unui alt neuron (sinapse axo-axomatice).
Stocarea informaț iei în neuroni se presupune că este efectuată prin intermediul conexiunilor
sinaptice, mai exact prin tiparele pe care acestea le formează și prin ponderea pe care o are fiecare
legătură în parte.
Corpul celulei primește semnale de la alț i neuroni prin intermediul conexiunilor sinaptice
ajustabile. Din punct de vedere funcț ional sinapsele pot fi excitatorii sau inhibatorii. Ambele efecte
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 8/54
4
sunt locale, ele propagându-se pe o distanț ă mică în corpul celulei. Apoi ele sunt însumate la nivelul
axonului. Dacă suma potenţialelor de excitare depăşeşte un anumit prag, atunci neuronul este
activat şi transmite impulsurile nervoase mai departe, de-a lungul axonului, fără atenuare, spre alț i
neuroni. Rata impulsurilor ieșirii neuronului depinde de intensitatea semnalelor de intrare cât și de
ponderile sinaptice aferente acestora.De aici rezultă cea mai importantă proprietate a reț elelor neuronale și anume plasticitatea.
Astfel, ca răspuns la stimulările primite, la nivelul conexiunilor se produc schimbări pe termen lung,
astfel încât conexiunile care ajută la obţinerea de rezultate pozitive sunt î ntărite, iar cele care
determină rezultate nedorite sunt slăbite. De asemenea, neuronii pot forma în timp noi conexiuni cu
alţi neuroni. Aceste mecanisme stau la baza capacităţii de adaptare a creierului la stimulii primiţi, pe
care o numim î n mod convenţional î nvăţare.
În mod analog funcţionează şi o reţea neuronală artificială. În cea mai general formă a sa, oreţea neuronală este un sistem proiectat pentru a modela felul î n care creierul rezolvă o anumită
problemă sau execută o funcţie cu un anumit scop; reţeaua este de obicei implementată folosindu-se
componente electronice sau simulată printr-un program software.
1.3 Neuronul artificial
Neuronul artificial denumit și procesor elementar, sau pur și simplu nod încearcă să imite
structura și funcț ionarea neuronului biologic. În literatură există numeroase modele, dar cel mairăspândit, care reprezintă de fapt și fundamentul structural pentru majoritatea arhitecturilor de reț ele
neuronale, este cel elaborat în anul 1943 de Warren McCulloch şi Walter Pitts prezentat în Fig.
1.1.3 de mai jos.
Figura 1.3.1 Modelul McCullock Pitts
Fiecărei conexiuni îi corespunde o valoare reală, numită pondere sinaptică, care determină
efectul intrării respective asupra nivelului de activare a neuronului.
În figură ix sunt intrările ponderate de mărimile iw , care apoi sunt însumate. Ponderile sunt
cele ajustate în timpul procesului de instruire. Rezultatul obț inut în urma însumării este:
1x
nx
∑
1w
nw
s
θ f y
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 9/54
5
∑=
=n
1i
iixwu
și este numită intrarea netă.
Ieşirea se calculează după formula:
−= ∑
=
n
1i
ii θxwf y
unde f este o funcţie de activare, n este numărul de intrări, iar θ este valoarea pragului de
activare (treshold).
Funcţ ia de activare f limitează amplitutinea semnalului de ieșire al neuronului și este
descrisă de ecuaț ia: ( ) ( )buf θuf y +=−= . Uneori este util să adăugăm intrării nete un termen b,
denumit factor al deplasării de scară (bias). Din ecuaț ie rezultă deci că deplasarea de scară
reprezintă negativul valorii pragului de scară. Valoare θus −= poartă denumirea de potenţ ial de
activare.
Modelul original utilizează o funcţie de activare de tip signum , cu valorile -1 și 1. Suma
ponderată a intrărilor este comparată cu valoarea de prag θ , iar în funcţie de rezultat ieşirea este
setată pe “1” sau “0”. Totuşi pentru reţelele neuronale mai complexe sunt folosite funcţii de activare
neliniare, pentru a asigura o creştere a puterii de calcul. Astfel, mai departe sunt prezentate câteva
dintre cele mai folosite funcț ii de activare (Fig. 1.3.2):
- funcț ia de prag:
<
≥=
0s,0
0s,1f(s) ;
- funcț ia de prag simetrică sau funcț ia signum:
<−
≥=
0s,1
0s,1f(s) ;
- funcț ia sigmoid unipolară sau logistică: ,e1
1f(s)
as−+= a = ct;
- funcț ia sigmoid bipolară (tangenta hiperbolică):as
as
e1
e1f(s) −
−
+−
= .
Funcț iile sigmoid unipolară și sigmoid bipolară sunt printre cele mai des folosite funcț ii de
activare pentru implementarea reț elelor neuronale, unul dintre motive fiind calculul relativ simplu
al derivatelor acestora.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 10/54
6
Figura 1.3.2 Funcţii de activare tipice
- funcț ia liniară: sf(s) = ;
- funcţia liniară cu saturaţie: ;
1s1,
1ss,0
0s0,
f(s)
>
≤≤
<
=
- funcţia liniară cu saturaţie, simetrică: ;
1s1,
1ss,0
0s1,-
f(s)
>≤≤
<
=
- funcţia gaussiană: )sexp(f(s) 2−= ;
Analizând comparativ modelul neuronului biologic și modelul neuronului artificial se pot
face câteva observaț ii:
- din punct de vedere al implementării, deocamdată este practic imposibil ca modelul
artificial al neuronului să copieze exact comportamentul și structura neuronului biologic. Cu toateacestea nu trebuie minimizată sau ignorată importanț a reț elelor neuronale artificiale, și este posibil
ca pe viitor, cu ajutorul lor să se ajungă la o cunoaştere mai aprofundată a fenomenelor ce au loc in
creierul uman;
- reț elele neuronale sunt proiectate pentru rezolvarea unor probleme specifice, deci
prin urmare arhitectura și structura reț elei va depinde de natura problemei. Datorită modului de
prelucrare a informaț iei, reț elele neuronale pot fi folosite pentru a rezolva probleme complexe care
sunt dificil de abordat prin metode clasice;
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 11/54
7
- un neuron biologic are la ieșire o secvenț ă de impulsuri și nu o anumită valoare cum
este cazul celui artificial. Reprezentarea ratei de activare printr-un singur număr ignoră informaț ia
care ar putea fi conț inută de exemplu în faza impulsurilor;
- unele celule nervoase biologice efectuează o însumare neliniară a intrărilor . De
asemenea ieșirile neuronilor nu se modifică în mod sincron și nu toț i au același tip de întârziere;- cantitatatea de substanț ă transmiț ătoare (mediator chimic) eliberată la nivelul
sinapsei poate varia într-un mod imprevizibil. Acest fenomen este aproximat grosier prin
intermediul funcț iei de activare;
- în final, ceea ce recomandă reţelele neuronale artificiale este raportul favorabil
performanţă-complexitate, aflat într-o continuă creştere şi care este superior sistemelor de
inteligenţă artificială implementate prin alte tehnologii.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 12/54
8
Capitolul 2. Arhitecturi de reţ ele neuronale
2.1 Reţ ele neuronale feedforward
În cazul reț elele neuronale feedforward (cu propagare înainte), neuronii sunt aranjaț i pe
nivele, formând un nivel de intrare, unul sau mai multe nivele ascunse și un nivel de ieșire. Nivelul
(nivelele) ascuns poate și să lipsească. Trăsătura definitorie pentru acest tip de reț ele neuronale este
că fiecare neuron recepț ionează semnale fie din mediul extern (în cazul nivelului de intrare), fie de
la neuronii din nivelul anterior, fără a se forma vreo legătură de reacț ie. Astfel reț eau va furniza un
set de ieșire ca răspuns la un set de semnale de intrare. Se spune că o reț ea neuronală este total
conectată dacă fiecare nod din fiecare strat (nivel) este conectat cu toț i neuronii din stratulprecedent (Figura 2.1.1).
Figura 2.1.1 Reț ea neuronală feedforward total conectată
Dacă unele conexiuni sinaptice lipsesc se spune că reț eau neuronală este numai parţ ial
conectată (Figura 2.1.1). Cele total conectate au un caracter general, în sensul în care pot fi folositeîntr-o gamă largă de probleme, dar rezultatele nu sunt întotdeauna cele mai bune. Reț elele
neuronale parț ial conectate introduc anumite restrângeri, dar care constituie cunoștinț e apriorice
despre problema în cauză și care reduc gradul de generalitate al unei reț ele neuronale. Acest proces
de eliminare (tăiere) a anumitor conexiuni sinaptice se numește pruning (de la cuvântul din engleză
”prune” = a reduce, a tăia, a simplifica) [16]. În principiu acest proces presupune eliminarea
conexiunilor sinaptice care nu influenț ează răspunsul ieșirii reț elei neuronale (sau au o influenț ă
neglijabilă). În literatura de specialitate există diferiț i algoritmi [19], [20] pentru eliminarea acestor
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 13/54
9
conexiuni. Astfel, reț elele neuronale parț ial conectate pot avea performanț e superioare celor total
conectate pentru anumite probleme specifice (de exemplu din punct de vedere a timpului de calcul).
După antrenare, având ponderile fixate, răspunsul reț elei la un set de semnale de intrare va fi
același, independent de activitatea anterioară a reț elei. Prin urmare, reț elele neuronale feedforward
nu includ o dinamică proprie și deci nici nu ridică probleme speciale în ceea ce privește stabilitatealor.
Figura 2.1.2 Reț ea neuronală feedforward par ț ial conectată
2.1.1 Perceptronul simplu
Unul dintre primele modele dezvoltate pe baza modelului McCulloch Pitts (1943) a fost o
reț ea neuronală numită perceptron (Rosenblatt 1958) cu propagare înainte a semnalului
(feedforward). Perceptronul este cea mai simplă formă a unei reț ele neuronale folosită pentru
clasificarea unor tipare liniar separabile. Interesul deosebit faț ă de aceste reț ele neuronale a fost
generat, printre altele, de capacitatea acestora de a generaliza, adică de a opera cu date diferite de
cele prezentate în etapa de antrenament şi de a învăț a plecând de la o distribuț ie aleatoare a
ponderilor sinaptice ale reț elei. În consecinț ă acest tip de reț ele poate fi folosit cu succes în diverseaplicaț ii ce presupun clasificări.
Ideea principală este de a face mici ajustări ale ponderilor pentru a reduce diferenţa dintre
ieşirea reală a perceptronului şi ieşirea dorită. Ponderile iniţiale sunt iniţializate aleatoriu (în general
în intervalul [-0.5, 0.5]) şi apoi actualizate treptat astfel încât ieşirea să se apropie de valorile dorite.
Apoi, exemplele de antrenare sunt prezentate succesiv, în orice ordine.
Perceptronul simplu are însă o aplicabilitate practică limitată datorită valorii binare a ieşirii
și datorită imposibilităț ii clasificării tiparelor (vectorilor de intrare) neliniare. Acesta constituie însăpunctul de plecare în studiul perceptronului multistrat.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 14/54
10
Arhitectura unei reț ele neuronale de acest tip este prezentată în Figura 2.1.1.1. Putem spune
că perceptronul simplu reprezintă o particularizare a modelului McCulloch-Pitts al neuronului
artificial pentru cazul în care funcț ia de activare este de tip treaptă unitate bipolară.
Figura 2.1.1.1 Arhitectura unui perceptron simplu
Scopul perceptronului simplu este de a clasifica în una din cele două clase disponibile (y =
+1 sau y = -1) un set de stimuli exteriori. Ieșirea binară obț inută y este comparată cu un semnal de
referinț ă d, obț inându-se o eroare cuantificată e care este folosită mai departe la ajustarea
ponderilor.
Algoritmul de bază al antrenării perceptronului a fost descris de același Rosenblatt.
Conform acestuia ponderilei
w sunt modificate astfel:
(n)xe(n)η(n)w1)(nw iii ⋅⋅+=+
unde (n)w i este eșantionul prelevat din iw la momentul t = n și
y(n)d(n)e(n) −=
sign(v)(v)y =ϕ=
θxwv i
N
1i
i −= ∑=
η - rata de învăț are, 1η0 <<
2.1.2 Modelul Adaline
Unul din cele mai importante aspecte ale neuronilor, artficiali sau naturali, este capacitatea
lor de a învăț a, deci de a-și modifica ponderile intrărilor în acord cu un algoritm adaptiv. Cu altecuvinte, procesul de învăț are în cazul reț elelor neuronale se referă la ajustarea ponderilor intrărilor,
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 15/54
11
astfel încât să se obț ină ieșirea dorită atunci când semnalele de intrare sunt corespunzătoare. Unul
dintre cele mai simple modele de neuron având capacitatea de a învăț a, a fost introdus de Widrow și
Hoff în 1960 numit generic Adaline (Adaptive Linear model) și are structura din Fig. 2.1.2.1.
Figura 2.1.2.1 Structura reț elei neuronale Adaline
Neuronul prezentat în figură are N intrări ix , o ieșire analogică v și una numerică y,
obț inută din cea analogică prin cuantizarea între valorile de prag -1 și 1, depinzând de polaritatea
ieșirii v. Intrarea d este utilizată ca referinț ă în procesul de învăț are, fiind activă numai în timpul
acestuia. Semnalul de ieșire v este comparat cu semnalul referinț ă d, diferenţa e dintre ele, numit
semnal de eroare, fiind folosit ca și semnal de învăț are. În general, modificarea ponderilor intrărilor
neuronului se face în sensul minimizării erorii pătratice.
Există mai multe metode de antrenare, dar cel mai utilizat algoritm este algoritmul Widrow
– Hoff sau regula delta. Este poate mai cunoscut sub denumirea de: algoritmul celor mai mici
pătrate (LMS – Least Mean Square) și este destinat antrenării unei reț ele neuronale formată
dintr-un singur neuron liniar . Ceea ce îl diferenț iază de algoritmul de învăț are Rosenblatt (pentru
antrenarea perceptronului simplu) este faptul că regula delta utilizează ca semnal de antrenare o
eroare liniară (nu este cuantizată), fiind deci un algoritm liniar, iar cel de-al doilea o eroarecuantificată, filtrată de un bloc neliniar , fiind deci un algorim neliniar . Pentru cuantificarea erorii la
nivelul neuronului de ieşire se defineşte o funcț ie de cost, uneori denumită şi criteriu de
performanț ă. O posibilă formă pentru aceasta este:
= ∑
k
k 2(n)e
2
1MJ
cu M[.] reprezentând media în sens static.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 16/54
12
Una dintre metodele folosite pentru obț inerea minimului funcț iei J este bazată pe gradientul
acesteia. Conform acestei metode incrementul de modificare a ponderilor este dat de ecuaț ia:
ww
∂∂
⋅−=∇⋅−=J
ηJη(n)Δ
Pentru că proprietăț ile statistice nu sunt de regulă cunoscute, se poate folosi în loc de J,
suma erorilor pătratice instantanee:
∑=k
(n)e2
1E(n) k
2
De aici rezultă:
www ∂
∂
−=∂
∂
−= ∑(n)e
(n)eη
E(n)
η(n)Δk
k k
dar:
(n))(v(n)d(n)y(n)d(n)e k k k k k ϕ−=−=
în care ϕ reprezintă funcț ia de activare şi k v potenț ialul de activare. Rezultă astfel:
x(n)(n))(v'(n)eη(n)Δk
k k ⋅⋅⋅= ∑ ϕ w
Astfel, pentru cazul în care avem k=1 şi sgn,=ϕ se obț ine:
(n)y(n))(d(n)η(n)e(n)η(n)Δ xxw ⋅−⋅=⋅⋅=
2.1.3 Perceptronul multistrat
Pentru a rezolva limitările legate de liniar separabilitate a fost dezvoltat perceptronul
multistrat.
Perceptronul multistrat (Reț ea neuronală MLP - Multilayer Perceptron) reprezintă o
generalizare a perceptronului simplu prezentat în capitolul anterior. Este o reț ea neuronală de tip
feedforward (cu propagare înainte a semnalului) compusă din (Fig. 2.1.2.1):
- un strat de intrare;
- unul sau mai multe straturi ascunse;
- strat de ieşire.
În cazul antrenării unei reț ele neuronale o epocă reprezintă prezentarea tuturor exemplelor
din setul de antrenare. De obicei antrenarea reţelei presupune mai multe epoci de antrenare. Există
două moduri de a adapta ponderile pentru o reţea MLP:
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 17/54
13
- antrenare incrementală (online sau pattern by pattern), în care ponderile sunt
actualizate după fiecare set de intrare aplicat reţelei (în acest caz, poate conta ordinea în care sunt
prezentaţi vectorii de test);
- antrenare periodică (batch training), în care ponderile sunt actualizate numai după
ce toţi vectorii de test sunt aplicaţi reţelei. Astfel la sfârşitul unei epoci de antrenare ponderile se vor modifica o singură dată .
Figura 2.1.3.1 Perceptron cu două straturi
Perceptronul multistrat a fost folosit cu succes pentru a rezolva diverse probleme dificile
fiind antrenat într-o manieră supervizată cu un algoritm foarte popular cunoscut denumit algoritmul
de propagare înapoi a erorii (Error Back-Propagation Algorithm). Acest algoritm se bazează
pe regula de învăţ are prin corecţ ia erorii. Astfel, poate fi privit ca o generalizare a la fel de
popularului algoritm de filtrare adaptivă: algoritmul celor mai mici pătrate. Algoritmul de propagare
înapoi a erorii este descris mai în detaliu în Capitolul 4.
2.2 Reţ ele neuronale recurente
2.2.1 Introducere
Reț elele neuronale recurente se individualizează prin existenț a unui semnal de reacț ie, din
partea neuronilor de ordin superior, pentru cei de ordin inferior sau chiar pentru propriile lor intrări
(Fig. 2.2.1). Acest tip de reț ele lasă o urmă a comportamentului său și sunt capabile să memoreze
stările lor anterioare. Reț ele neuronale recurente se pot împăr ț i în: (1) reț ele parț ial recurente sau
(2) reț ele total recurente. În primul caz reț elele au selectate conexiuni de reacț ie specifice care au o
utilitate mai mare. Conexiunile de reacț ie pentru stratul de intrare pot fi realizate din nodurileascunse sau din nodurile de ieșire.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 18/54
14
Figura 2.2.1.1 Reț ea neuronală recurentă În plus faț ă de conexiunile de reacț ie, care fac posibilă utilizarea unei valori de ieșire de la
un moment anterior pentru calculul valorii următoare, poate fi folosit un buffer suplimentar pentru a
memora valori de ieșire pentru mai mulț i pași anteriori.
Reț elele neuronale recurente sunt caracterizate de:
- unităț i de procesare neliniare;
- simetria conexiunilor sinaptice (wji = wij);
- folosirea intensivă a feedback-ului .Din această categorie fac parte reț elele neuronale Boltzmann şi reț elele neuronale Hopfield,
dezvoltarea acestora fiind inspirată din fizica statistică şi termodinamică. Reț elele neuronale
Hopfield vor fi descrise mai detaliat în cele ce urmează.
Câteva din dificultăț ile ce pot fi întâmpinate în cazul utilizării reț elelor neuronale recurente
sunt enumerate mai jos:
- este necesară o sincronizare la propagarea semnalelor prin reț ea pentru a obț ine
timpi adecvaț i;- este greu de descris într-un anumit fel (printr-o formulă de exemplu) dependenț a de
timp învăț ată de o reț ea neuronală după antrenare, adică echilibrul la care a ajuns reț eaua între a
uita stări anterioare și a învăț a stări noi. Problema care se pune este: de câte moment de timp
anterioare poate ț ine cont o reț ea recurentă ?;
- reț elele neuronale pot manifesta un comportament haotic, prin urmare învăț area
poate fi dificilă.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 19/54
15
2.2.2 Reţ ele neuronale de tip Hopfield
O reț ea neuronală de tip Hopfield este o reț ea dinamică, cu reacț ie încorporată (Fig.
2.2.1.1). Poate fi văzută ca o memorie asociativă sau ca o memorie adresabilă prin conţ inut.Astfel, o reț ea de acest tip are ca funcț ie principală regăsirea tiparelor stocate în memorie, ca
răspuns la prezentarea unui tipar incomplet sau contaminat cu zgomot la intrare. Acest lucru constă
în transformarea tiparelor μξ în stări stabile μs ale sistemului dinamic (proces de codare) și invers
(proces de decodare ).
Fiecare neuron, de tip McCulloch-Pitts, al reț elei neuronale Hopfield (Fig. 2.2.1.1) este
caracterizat prin una din cele două stări posibile: activ ( is = 1) , respectiv inactiv ( is = -1).
Figura 2.2.1.1Arhitectura unei reț ele de tip Hopefield cu 3 neuroni
Starea unei reț ele neuronale de tip Hopfield alcătuită din N neuroni este definită de cătrevectorul:
[ ]T
N21 s,...,s,s=s
Iar potenț ialul intern al unui neuron ”j” este:
ji
N
1i
jij θswv −= ∑=
Neuronul “j” îşi modifică starea conform funcț iei signum: ]sgn[vs jj = . Dacă 0v j = atunci
js poate lua o valoare arbitrară +1 sau -1, sau starea neuronului poate rămâne neschimbată.
În funcț ionarea reț elelor neuronale de tip Hopfield se pot distinge două etape:
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 20/54
16
1) Etapa de memorare. Dacă se dorește stocarea a ”p” vectori ”N” dimensionali
p1,2,...,μ|ξμ = atunci conform postulatului lui Hebb se poate scrie:
∑=
=N
1μ
iμ,jμ,ji ξξN
1w
Iar sub formă matriceală are forma:
∑=
−=N
1μ
T
μμ IN
pξξ
N
1W
în care W reprezintă matricea ponderilor sinaptice ale reț elei și are dimensiunea NN× .
Din ecuaț ia de calcul pentru ponderile reț elei neuronale se pot constata următoarele:
ponderile reț elei se calculează într -o singură epocă, spre deosebire de reț elele neuronale MLP sau
RBF; ieşirea fiecărui neuron se constituie în intrare pentru toț i ceilalț i neuroni ai reț elei; nu există
autoexcitaț ie (“self-feedback”), adică I0,w ii ∀= ; matricea ponderilor reț elei este simetrică
T)(sauww jiij WW == adică influenț a exercitată de neuronul “i” asupra neuronului “j” este egală
cu influenț a exercitată de neuronul “j” asupra neuronului “i”.
b) Etapa de utilizare (regăsire). În această etapă, un anumit tipar x este impus ca și vector
de stare. De regulă el reprezintă o versiune incompletă sau afectată de zgomot al unui tipar
memorat. Procesul de regăsire se desf ăşoară în mod dinamic: fiecare neuron al reț elei, în modaleator ales, estimează propriul potenț ial de activare şi îşi stabileşte starea finală. Acest proces
asincron (serial) de modificare a stărilor se va opri în momentul în care vectorul de stare nu se va
mai modifica. Aceasta înseamnă că reț eaua Hopfield a produs un vector de stare y invariant în timp,
ale cărui elemente satisfac condiț ia de stabilitate:
,θywsgny ii
N
1i
jij
−= ∑
= N1,2,...,j =
sau în forma matriceală:
( )θsgn −⋅= yWy
Vectorul de stare y este denumit stare stabilă a spaț iului fazelor sistemului.
Mai departe, unei reț ele neuronale de tip Hopfield i se poate asocia așa numita funcț ie de
energie:
∑∑= =
−=N
1i
N
1j
jiij ssw21E
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 21/54
17
Variaț ia energiei E∆ ca urmare a variaț iei stării neuronului “j” e dată de expresia:
∑≠=
−=N
ji1i
iijj swΔsΔE
Astfel, în timpul etapei de regăsire a unui tipar, E descreşte monoton. Schimbarea stăriireț elei va continua până când se va atinge un minim local al peisajului energetic. Minimele
peisajului energetic corespund unor atractori (stări) specifici spaț iului stărilor (fazelor) care în mod
normal reprezintă puncte determinate în faza de memorare. Regiunea învecinată atractorilor poartă
denumirea de bazin de atracț ie. Nu este obligatoriu ca starea finală să coincidă cu unul din tiparele
memorate. Acest fapt poate fi pus şi pe seama apariț iei unor stări (atractori) false (“spurious
states”).
Relativ la capacitatea de memorare a reț elei neuronale de tip Hopfield se arată că numărulmaxim de tipare de dimensiune N care pot fi regăsite perfect este:
4lnN
Npmax ≅
2.3 Reţ ele neuronale bazate pe funcţ ii radiale
În continuare este prezentată o abordare diferită a modului de implementare a reț elelor
neuronale. De această dată procesul este văzut ca o problemă de aproximare a unei curbe într -un
spaț iu multidimensional. Astfel, în locul determinării minimului gradientului funcţiei de eroare,
antrenarea reţelei neuronale poate fi concepută astfel încât, fiind dată mulţimea datelor de test, să se
determine hipersuprafaţa care realizează cea mai bună interpolare a ei într -un spaţiu
multidimensional. În acest caz, stratul neuronilor ascunşi are rolul de a produce o mulţime de funcţii
(funcţii radiale) pentru reprezentarea vectorilor de intrare.
Reţelele neuronale bazate pe funcţii radiale (RBF – Radial Basis Function) se bucură în
ultimul timp de o atenţie tot mai mare, datorită avantajelor pe care le prezintă. Acest mod de
implementare a reț elelor neuronale a fost propus și utilizat de mai mulț i autori: Moody and Darken
1989, Renals and Rohwer 1989 și alț ii. În Fig. 2.3.1 este prezentată o arhitectură generală.
Comparativ cu reț elele neuronale de tip perceptron multistrat, reț elele neuronale bazate pe
funcț ii radiale pot necesita mai mulț i neuroni dar antrenarea acestora necesită mai puț in timp decât
în cazul perceptronului. Explicaț ia acestui fapt este următoarea: ieşirile neuronilor sigmoidali ai
stratului ascuns sunt semnificative pentru regiuni largi ale spaț iului de intrare în timp ce neuronii
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 22/54
18
bazaț i pe funcț ii radiale răspund doar la regiuni relativ mici din spaț iul de intrare. În consecinț ă,
reț elele neuronale RBF se comportă mai bine când sunt disponibili mulț i vectori de antrenament.
Figura 2.3.1 Arhitectura unei reț ele neuronale RBF
Modelul unui neuron RBF este prezentat în Fig. 2.3.2. În acest caz intrarea netă este
consituită din norma diferenț ei vectoriale ||t - x||. Un exemplu tipic pentru funcț ia de activare este:2x
e(x)−=ϕ reprezentată în Fig. 2.3.3. Se constată că funcț ia radială are un maxim dacă intrarea e
nulă. Dacă distanț a dintre t şi x descreşte, valoarea ieşirii creşte. Adică neuronul radial se comportă
ca un detector care dă “1” la ieşire de fiecare dată când tiparul de intrare e identic cu vectorul
pondere t.
Figura 2.3.2 Arhitectura unui neuron RBF
O reț ea neuronală RBF este organizată pe trei straturi (vezi Fig 2.3.1): stratul de intrare
sau stratul senzorial, stratul ascuns care furnizează o mulț ime de funcț ii (numite funcț ii radiale)pentru reprezentarea vectorilor de intrare. Neuronii din stratul ascuns sunt total conectaț i cu
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 23/54
19
neuronii din stratul de intrare, dar și cu neuronii din stratul de ieşire. Nodurile din stratul de ieșire
realizează o simplă însumare folosind o funcț ie de activare liniară.
Transformarea spaț iului de intrare în spaț iul neuronilor ascunşi este neliniară pe când
transformarea spaț iului neuronilor ascunşi în spaț iul neuronilor de ieşire este liniară. Justificarea
acestui aspect se bazează pe teorema lui Cover asupra separabilităț ii tiparelor [22], care este șiprincipiul pe care se bazează funcț ionarea reț elelor neuronale RBF. Teorema arată că o problemă
complexă de clasificare a tiparelor poate fi mai bine rezolvată în sensul liniar separabilităţii, într-un
spaţiu cu un număr mare de dimensiuni, decât în unul cu un număr mic de dimensiuni.
Figura 2.3.3 Formă tipică pentru funcț ia de activare radial
Problema interpolării, în sensul strict al său, poate fi enunţată astfel:
Fiind dată mulţimea de puncte { }1,2,...,N|k Rxp
k =∈ şi o mulţime de numere reale
{ },1,2,...,NR|k dk =∈ să se determine funcţia ,: RRF
p
→ care să satisfacă condiţia deinterpolare:
N,2,1,k ,d)F(x k k =∀=
Tehnica funcţiilor radiale constă în alegerea funcţiei F de forma:
( )∑=
−ϕ=N
1k
k k xxwF(x)
unde ( ){ }N1,2,...,k | xx k =−ϕ este o mulţime de N funcţii arbitrare, în general neliniare, numite
funcţii radiale, iar • reprezintă o normă, în general fiind utilizată norma Euclidiană. Vectorii
cunoscuţi (şabloanele) N1,2,...,k |Rx p
k =∈ se numesc centrii funcţiei radiale, iar wk sunt
ponderi, iniţial necunoscute. Astfel, prin găsirea ponderilor wk, funcţia F este complet determinată.
Pentru aceasta, prin combinarea celor două ecuaț ii de mai sus se obţine:
( )∑= =∀=−ϕ
N
1k k k k N,2,1,k ,dxxw
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 24/54
20
Dezvoltând relaţia , rezultă următorul sistem de ecuaţii liniare, din care se pot determinaponderile wk:
=
ϕϕϕ
ϕϕϕ
ϕϕϕ
N
2
1
N
2
1
NNN2N1
2N2221
1N1211
d
d
d
w
w
w
unde
( ) N,2,1,k m,,xx k mmk =∀−ϕ=ϕ
Fie D = [d1, d2, ..., dN]T şi W = [w1, w2, ..., wN]T vectorul răspunsului dorit şi respectiv
vectorul pondere şi fie Φ matricea de dimensiune NxN, de elemente ϕmk, numită matrice de
interpolare. Sistemul de ecuaţii de mai sus poate fi rescris sub formă matriceală ca:
DΦW = ,
Rezultatele teoretice şi experimentale arată că alegerea funcț iei neliniare (.)ϕ nu este crucială
pentru performanț ele ulterioare ale une reț ele neuronale RBF. Aceasta poate fi, de exemplu:
0r0,c,)c(r
1(r)
1/222≥>
+=ϕ
sau
0r0,,2
rexp(r)
2
2
≥>σ
σ−=ϕ
Problema numărului de nivele și respectiv a numărului de neuroni pentru fiecare nivel în
parte pe care trebuie să-i conț ină reț eaua pentru a oferi o cât mai exactă aproximaț ie a unei funcț ii
neliniare, rămâne încă o problemă deschisă. O serie de autori (Hecht şi Nielsen, Lippman, 1987)
enunț ă faptul că pentru o bună aproximare a unei funcț ii neliniare de N variabile, trebuie utilizată oreț ea neuronală cu două nivele ascunse, având N(2N+1) neuroni în primul nivel ascuns și 2N+1
neuroni în cel de-al doilea.Aceste afirmaț ii pot fi contrazise însă de unele aplicaț ii (Poggio 1989,
Kurkova 1991.)
Reț elele neuronale recurente, care includ și elemente de tip integrator sau unităț i de
întârziere precum și bucle de reacț ie în interiorul lor, spre deosebire de reț elele feedforward,
prezintă o dinamică proprie. Proprietăț ile dinamice ale unei astfel de reț ele sunt descries de ecuaț ii
diferenț iale neliniare.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 25/54
21
O reț ea neuronală nu este caracterizată numai de arhitectura sa, ci și de tipul neuronilor ce o
compun, algoritmul utilizat pentru antrenarea ei precum și modul ei de operare.
Reț elele neuronale pot opera fie ca și sisteme deterministe, fie ca sisteme stochastice. În
cazul celor deterministe toate semnalele folosite precum și parametrii reț elei au un caracter
determinist. În cazul reț elelor stochastice, semnalele vehiculate precum și parametrii (ponderile deintrare) se schimbă aleator. Există patru modalităși de a construi reț ele neuronale stochastice:
- prin utilizarea unui semnal de intrare de tip zgomot, parametrii reț elei având un
caracter determinist;
- prin modificarea aleatoare a ponderilor de intrare a neuronilor;
- prin utilizarea unor funcț ii de activare neliniare stochastice;
- prin combinare tehnicilor menț ionate mai sus.
Problema realizării unui model artificial cât mai exact al sistemului nervos biologic rămâneo problemă deschisă. La ora actuală există un real interes în a realiza o reț ea neuronală artificială cu
un comportament cât mai apropiat de cel al creierului uman.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 26/54
22
Capitolul 3. Algoritmi de învăţare a reţelelor neuronale
După alegerea arhitecturii unei reț ele neuronale (tipul neuronului, numărul de nivele,
existenț a sau lipsa buclelor de reacț ie, etc.) pentru ca aceasta să asigure anumite performanț e
impuse în contextul real, este necesară învăț area ei. În general, în faza de învăț are ponderile de
intrare sunt ajustate în sensul minimizării unei funcț ii de performanț ă. În acest capitol vor fi
prezentaț i o serie de algoritmi de învăț are dintre cei mai utilizaț i în prezent.
3.1 Învăţ are supervizată
În cazul metode de învăţare cu supervizor, se utilizează un semnal de învăţare, care
specifică reţelei semnalul care se aşteaptă să se obţină la ieşire pentru un set de intrare dat.
Ponderile neuronilor sunt ajustate astfel încât să se minimizeze diferenţa dintre semnalul de învăţare
(semnalul dorit) şi semnalul de ieşire obţinut, pentru fiecare set de semnale de intrare.
3.1.1 Algoritmul Back-Propagation
Algoritmul de învăț are cu propagare înapoi este probabil cel mai utilizat algoritm de către
utilizatorii reț elelor neuronale. Este un algortim de învăț are supervizată, generalizând regula delta a
lui Widrow-Hoff. A fost propus prima dată de Werbos în 1971, însă nu a fost luat în considerare,
fiind apoi redescoperit de Parker în 1982 și respectiv Rumelhart, Hinton și Williams în 1986.
Realizat iniț ial pentru antrenarea reț elelor neuronale statice, cu propagare înainte (feedforward),
acest algoritm a fost extins și în cazul reț elelor recurente [23]. În esenț ă, algoritmul back -
propagation constă în compararea setului de ieșire cu un set de referinț ă și propagarea înapoi a
erorii de la un nivel la altul, ajustându-se ponderile de intrare astfel încât eroarea să fie minimizată.
Este de fapt un algoritm de modificare pas cu pas a gradientului funcț iei de eroare.
Semnalul de eroare al neuronului j din stratul de ieșire în iteraț ia n (adică la prezentarea
valorii a n-a din setul de intrare) este:
(n)y(n)d(n)e jjj −=
unde jd este semnalul de referinț ă, iar jy este răspunsul actual al reț elei neuronale MLP.
Mai departe definim valoarea erorii instantanee a neuronului j ca și (n)e
2
1 2
j. Pentru a obț ine
eroarea instantanee la nivelul întregului strat de ieșire (eroarea totală) ε(n) se însumează valoarea
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 27/54
23
(n)e2
1 2
jcorespunzătoare fiecărui neuron din stratul de ieșire; aceștia sunt numai neuronii ”vizibili”
pentru care putem calcula semnalul de eroare. Astfel putem scrie:
∑∈
=Cj
2
j (n)e2
1ε(n)
unde C include toț i neuronii din stratul de ieșire. Fie N numărul total de tipare din setul de date de
antrenare. În acest caz eroarea medie pentru întreg setul de date va fi funcț ia de cost care va trebui
minimizată:
∑=
=N
1n
av ε(n)N
1(n)ε
Eroarea instantanee ε(n) , deci și eroarea medie totală (n)εav , este o funcț ie a tuturor
parametrilor liberi (adică ponderile sinaptice și valorile bias-urilor) ai reț elei. Obiectivul procesului
de antrenare este de a ajusta parametrii liberi ai reț elei minimizând funcț ia (n)εav . Pentru a realiza
această minimizare considerăm o metodă simplă de antrenare în care ponderile sunt actualizate
incremental (pattern by pattern) preț de o epocă. Ajustarea ponderilor are loc în conformitate cu
erorile corespunzătoare calculate pentru fiecare tipar prezentat la intrarea reț elei.
Media aritmetică a modificărilor individuale a ponderilor din întreg setul reprezintă o
estimare a adevăratelor modificări care ar rezulta din ajustarea ponderilor bazată pe minimizareafuncț iei de cost (n)εav pe întreg setul de antrenare.
Într-o manieră asemănătoare algoritmului Widrow-Hoff (sau LMS), algoritmul back-
propagation aplică o corecț ie (n)Δw ji ponderii sinaptice (n)w ji , care este proporț ională cu derivata
parț ială a erorii, după cum apare în continuare:
(n)w
ε(n)-η(n)Δw
ji
ji ∂∂
=
unde η este rata de învăţ are a algoritmului back-propagation. Semnul minus din ecuaț ia de mai
sus ne indică folosirea gradientului descendent în spaț iul ponderilor (căutarea unei direcț ii pentru
modificarea ponderilor care duce la reducerea valorii ε(n) ).
Mai departe putem exprima gradientul astfel:
(n)w
(n)v
(n)v
(n)y
(n)y
(n)e
(n)e
ε(n)
(n)w
ε(n)
ji
j
j
j
j
j
jji
∂
∂⋅
∂
∂⋅
∂
∂⋅
∂∂
=∂∂
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 28/54
24
Derivata parț ială (n)wε(n)/ ji∂∂ reprezintă un factor de senzitivitate, determinând direcț ia de
căutare în spaț iul ponderilor pentru ponderea sinaptică jiw .
Diferenț iind ecuaț iile de mai sus avem :
(n)e
(n)e
ε(n)(n)e
2
1ε(n) j
jCj
2
j =
∂
∂⇒= ∑
∈
1(n)y
(n)e(n)y(n)d(n)e
j
j
jjj−=
∂
∂⇒−=
))n(v('(n)v
(n)y))n(v()n(y
j
j
j
jjϕ=
∂
∂⇒ϕ=
)n(y
(n)w
(n)v)n(y)n(w)n(v j
ji
j
j
ijij=
∂
∂⇒=
∑
Deci obț inem:
)())((')((n)w
ε(n)
ji
nynvne jjj ⋅⋅−=∂∂
ϕ
Definind un gradient local (n)δ j descris astfel:
(n))(v'(n)e
(n)v
(n)y
(n)y
(n)e
(n)e
ε(n)
(n)v
ε(n)
-(n)δ
jj
j
j
j
j
j
jj
ϕ ⋅=
∂
∂⋅
∂
∂⋅
∂∂
−=
∂
∂
=
De unde putem scrie:
(n)yδ(n)η(n)Δw jji ⋅⋅=
Gradientul local indică modificările cerute în ponderile sinaptice. Astfel după cum se poatevedea mai sus, gradientul local (n)δ j pentru neuronal j din stratul de ieșire este egal cu produsul
semnalului de eroare (n)e j corespunzător neuronului și derivata (n))(v' jϕ funcț iei de activare
asociate.
Se poate observa că factorul cheie pentru calcularea ajustărilor ponderilor (n)Δw ji este
semnalul de eroare (n)e j la ieșirea neuronului j. În acest context, putem considera două cazuri
distincte, în funcț ie de locul din cadrul reț elei în care se găsește neuronal j. Primul caz, în careneuronul j este un nod de ieșire, este simplu de tratat deoarece pentru fiecare nod de ieșire al reț elei
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 29/54
25
este specificat răspunsul dorit, astfel că semnalul de eroare asociat se poate calcula direct. În cazul
doi, neuronul j este un nod ascuns. Chiar dacă neuronii ascunși nu sunt direct accesibili, ei impart
responsabilitatea pentru orice eroare apare la ieșirea reț elei neuronale. Problema care se pune este
de a ști cum să penalizăm sau să recompensăm neuronii ascunșii pentru partea lor de
responsabilitate. Această problemă este rezolvată într-o manieră elegantă prin propagarea înapoiprin reț ea a semnalelor de eroare.
Astfel, pentru un neuron j aflat în stratul ascuns nu este specificat un răspuns dorit. Prin
urmare, semnalul de eroare pentru un neuron ascuns ar trebui determinat recursiv, în funcț ie de
semnalele de eroare ale tuturor neuronilor direct conectaț i la neuronul ascuns. În acest punct
algoritmul back-propagation devine complicat. Acum redefinim gradientul local (n)δ j pentru un
neuron j aflat în stratul ascuns:
ascuns este j neuronul (n)),(v'(n)y
ε(n)
(n)v
(n)y
(n)y
ε(n)(n)δ
j
j
j
j
j
j
ϕ∂∂
−=
∂
∂⋅
∂∂
−=
Pentru a calcula derivata parț ială (n)yε(n)/ j∂∂ folosim expresia (cu indexul k în locul
indexului j – pentru a evita confuzia între neuronul ascuns j și neuronul din stratul de ieșire k):
∑∈
=Ck
2
k (n)e2
1ε(n) , neuronul k este un nod de ieșire
Astfel obț inem ecuaț ia :
∑ ∂∂
=∂∂
k j
k k
j (n)y
(n)ee
(n)y
ε(n)
care poate fi scrisă mai departe:
∑ ∂∂
∂∂
=∂∂
k j
k
k
k k
j (n)y
(n)v
(n)v
(n)ee
(n)y
ε(n)
Observăm că:
(n))(v'(n)v
(n)e
(n))(v-(n)d(n)y-(n)d(n)e
k
k
k
k k k k k
ϕ−=∂∂
⇒
ϕ==
De asemenea putem nota că potenț ialul local pentru neuronul k este:
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 30/54
26
∑=
=m
0j
ikjk (n)(n)yw(n)v
unde m este numărul total de intrări (excluzând bias-urile) aplicate neuronului k. Aici, din nou,
ponderea sinaptică (n)w k0 este egală cu bias-ul (n)bk aplicat neuronului k, iar intrarea
corespunzătoare este fixată la valoare +1. Astfel, diferenț iind ultima ecuaț ie în funcț ie de (n)yi
rezultă:
(n)w(n)y
(n)vkj
i
k =∂∂
Am ajuns acum la derivata parț ială care ne interesează:
(n)w(n)δ
(n)(n))w(v'(n)e(n)y
ε(n)
kj
k
k
k kjk k
j
∑∑
−=
ϕ−=∂
∂
În cele din urmă obț inem formula back-propagation pentru gradientul local (n)δ j descris
de expresia:
(n)w(n)δ(n))(v'(n)δ kj
k
k jjk ∑ϕ=
Factorul (n))(v' k jϕ folosit pentru calculul graientului local (n)δ j depinde numai de funcț ia
de activare asociată neuronului ascuns j. Celălalt factor implicat în calcul, suma de k, depinde de
două seturi termeni. Primul set de termeni (n),δk necesită cunoștinț e despre semnalele de eroare
(n),ek pentru toț i neuronii aflaț i în stratul din imediata apropiere a neuronului ascuns j, și care sunt
direct conectaț i la neuronul j. Cel de-al doilea set de termeni (n),w kj reprezintă ponderile sinaptice
associate acestor conexiuni.
Acum însumăm relaț iile pe care le-am derivat pentru algoritmul back-propagation șiobț inem:
(n)y(n)w(n)δ(n))(v'η(n)Δw ikj
k
k k jji
= ∑ϕ
3.1.2 Algoritmi rapizi de antrenament pentru reţ ele neuronale feedforward
Algoritmul back-propagation standard prezintă o serie de dezavantaje. Printre acestea se pot
enumera convergenț a lentă şi dependenț a acesteia de parametrii liberi ai reț elei (ponderile,
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 31/54
27
pragurile, forma funcț iei de activare, rata de învăț are, etc.). Algoritmii prezentaț i în cadrul acestui
subcapitol oferă o alternativă la backpropagation. Ei converg în mult mai puț ine epoci de antrenare
spre valori optime ale ponderilor decât back-propagation însă implică o complexitate ridicată a
calculelor. De subliniat însă faptul că în cazul unor reț ele de dimensiuni mari convergenț a într-un
număr mai mic de epoci nu înseamnă implicit şi un timp de antrenament mai scurt deoarececalculele aferente unei epoci pot să dureze foare mult. Din acest motiv folosirea unuia sau altuia
dintre algoritmii de antrenament este determinată de problema concretă ce se doreşte a fi
soluț ionată.
Metoda lui Newton
Funcț ia de cost )(ε w poate fi aproximată conform dezvoltării în serie Taylor în jurul
punctului0
w :
( ) ( ) ( )00
2T
0000 )(ε2
1)(εε)(ε wwwwwwwww −∇−+∇−+=
Matricea cu derivate parț iale de ordinul doi :
ji
2
ijww
ε
∂∂∂
=H
se numește hessian.Pentru ca w să fie un punct de minim se anulează derivata relaț iei precedente:
( )
1
0
1
00
00
)(εη
)(ε
0)(ε)(ε
−−
∇−=∇⇒
∇−=⇒
=−+∇=∇
H
ww
H
www
wwHww
Relaț ia de mai sus reprezintă metoda lui Newton, care folosită iterativ (estimarea lui w fiind
un nou 0w ), conduce la găsirea minimului într -un număr extreme de redus de epoci deantrenament. Dezavantajul metodei constă în complexitatea extrem de ridicată a calculelor ce
trebuie efectuate la fiecare iteraț ie: calculul derivatelor parț iale de ordin întâi şi doi pentru ε
precum şi inversa hessianului (care poate să fie singular şi deci 1−H nu există!).
În consecinț ă metoda lui Newton îşi găseşte aplicabilitate practică restrânsă, dar poate servi
ca punct de referinț ă pentru abordări ulterioare.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 32/54
28
Metoda Levenberg- Marquardt
Elimină par ț ial dezavantajele metodei lui Newton prin aproximarea hessianului cu matricea
Iw ν)(ε2 +∇ , în care ν reprezintă un factor de regulă pozitiv iar I matricea identică:
[ ] 12
0
ν)(ε
)(εη −
+∇
∇−=∆
Iw
ww
Observaţ ie:
O matrice este:
a) simetrică dacăT
AA = ;
b) pozitiv definită, dacă ;,0,0nT
RxxAxx ∈≠∀>
c) singulară, dacă nu1−∃A .
În acest condiț ii Iw ν)(ε2 +∇ este simetrică şi nesingulară chiar dacă hessianul e singular.
Pe de altă parte, v poate fi făcut suficient de mic pentru a asigura convergenț a rapidă a
algoritmului.
Metoda Levenberg–Marquardt reprezintă una din cele mai rapide metode folosite în
practică, dar este dificil de folosit în cazul în care vectorii de antrenament au dimensiuni foarte mari
din cauza cerinț elor de memorie şi putere de calcul.
Metoda de tip cvasi-Newton
Se circumscriu în cadrul metodelor de minimizare care folosesc doar informaț ie provenită
din derivata de ordinul I, combinată cu aşa numita căutare după o linie („line search”):
dηww ⋅+= 0,
în care η este reprezintă pasul iar d direcț ia în care se face căutarea.
În cazul în care direcț ia de căutare se alege ca fiind negativul gradientului, )(ε 0wd −∇= ,
atunci se obț ine din relaț ia de mai sus tocmai algoritmul paşilor descendenț i (gradientului
descendent) folosit în deducerea algoritmului back-propagation standard:
)(εη 00 wwww ∇−=−=∆
Ideea care stă la baza metodelor de tip cvasi–Newton este aceea de a aproxima 1−H printr-o
matrice k H care să ț ină cont doar de informaț ia obț inută pe baza derivatelor parț iale de ordinul I.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 33/54
29
Una din cele mai sofisticate metode cvasi–Newton este algoritmul BFGS (Broyden–Fletcher–
Goldfarb–Shanno):
k (k)(k)1)(k
dηww ⋅+=+
)(ε (k)k
(k)1)(k k wHwwd ∇−=−= +
Fie:
)(ε)(ε (k)1)(k k wwy ∇−∇= +
Atunci:
k
T
k
Tk k
k
T
k
Tk k
k
k
T
k
Tk k
1k yd
dd
yd
dy
yd
yd+
−
−=+ IHIH
și rata de învăț are:
(k)
k
(k)
0η
(k)Δεηεminargη wHw −=
≥
Metode bazate pe gradientul conjugat
Conform metodei gradientului (paşilor) descendent vectorul direcț ie de-a lungul căruia
ajustează vectorul pondere, reprezintă negativul vectorului gradient . Paşii succesivi
ai acestui algoritm sunt în mod necesar perpendiculari, deoarece:
( ) ( )1nε)n((n)ηεη
0 0 +∇⋅=+∂∂
= ddw
adică noul vector gradient este perpendicular pe vechea direcț ie de căutare (vezi Fig. 3.1.2.1). În
consecinț ă, se urmează o traiectorie în zig - zag.
Figura 3.1.2.1 Găsirea minimului unei suprafeț e pătratice (central elipsei) în cazul pașilor
descendenț i a) și în cazul gradientului conjugat b)
)(ε 0wd −∇=
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 34/54
30
O soluț ie mai bună constă în alegerea noii direcț ii ca un compromis între direcț ia
gradientului şi vechea direcț ie de căutare:
( ) ( ) ( ) ( )wdd nβ1nε1n ++−∇=+
Aceasta înseamnă că noua direcț ie trebuie astfel aleasă încât să nu modifice componentagradientului de-a lungul direcț iei anterioare, care a fost tocmai anulată:
( ) ( )( ) 01nηεn 0 =++∇ dwd
adică
( ) ( ) 01nn =+Hdd
În acest caz se spune că vectorii d(n+1), şi d(n) sunt conjugaţ i, de unde şi denumirea acestor
algoritmi de antrenament.
Există mai multe modalităț i de alegere a lui β :
• Polak-Ribiere:( ) ( ) ( )[ ]
( ) ( )nn
n1n1nβ(n)
T
T
gg
ggg −++=
• Fletcher-Reeves:( ) ( ) ( )[ ]
( ) ( )nn
n1n1nβ(n)
T
T
gg
ggg −++=
în care cu g(n) s-a notat vectorul gradient ε(n)∇ şi:
( ){ }(n)η(n)εminargη(n)η
dw +=
Din punct de vedere al rapidităț ii convergenț ei şi al complexităț ii algoritmului, metoda
gradientului conjugat se situează între metoda gradientului descendent şi cea de tip cvasi-Newton.
3.2 Învăţ are nesupervizată
În cadrul învă ţ ării nesupervizate nu există un ”învăț ător” sau critic extern care să
supervizeze procesul de învăț are. Mai degrabă, este furnizată o măsură independentă legată de
calitatea reprezentării pe care reț eaua trebuie sa o înveț e (pentru a rezolva o anumită problemă), iar
parametrii liberi ai reț elei sunt optimizaț i în funcț ie de această măsură. Mai simplu spus, singurele
informaț ii disponibile pentru antrenarea reț elei rezultă din setul de semnale aplicate la intrarea
reț elei. Odată ce reț eaua a fost ”tunată” în funcț ie de regularităț ile statistice a datelor de intrare, î și
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 35/54
31
dezvoltă abilitatea de a-și forma reprezentări interne ale datelor de intrare și, deci de a creea
automat noi clase.
3.2.1 Algoritmul hebbian generalizat
În continuare se va prezenta succint algoritmul hebbian generalizat (GHA, Generalized
Hebbian Algorithm) propus de Sanger [24] în 1989 precum şi o generalizare a acestuia denumit
algoritm hebbian generalizat pentru domeniul complex (CGHA, Complex Domain Generalized
Hebbian Algorithm ) prezentată de Y. Ma şi Y. Zhang [25] în 1997.
Prin intermediul algoritmului hebbian generalizat vectorii proprii ai matricii de corelaț ie a
datelor de intrare pot fi deduşi iterativ cu ajutorul unei reț ele neuronale cu un singur strat liniar (Fig.
3.2.1.1).
Figura 3.2.1.1 Reț eaua pentru implementarea algoritmului hebbian generalizat
Presupunem vectorul de intrare de forma :
[ ]Tn21 ,.....xx,x=X ,
Primii M vectori proprii ai matricii de corelaț ie Txx XXER = , ordonaț i în manieră
descrescătoare a valorilor proprii sunt furnizaț i de următorii vectori coloană :
[ ]
[ ]
[ ]TMNM2M1M
T
2N22212
T
1N12111
,.....ww,w
......................................
,.....ww,w
,.....ww,w
=
=
=
W
W
W
Principala problemă a algoritmului hebbian generalizat este găsirea ponderilor jW (j = 1,
2,....M). Pentru aceasta se iniț ializează jW cu valori aleatoare după care ponderile vor fi modificateastfel:
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 36/54
32
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
−−+=+ ∑
< ji
iijjjjj nnynnynnynηn1n WWXWW
în care n reprezintă indexul iteraț iilor şi
( ) ( ) ( )nxnny
T
jj W=
Sanger arată că jW converge spre componenta de ordinul j a vectorului propriu al xxR .
Ma şi Zhang [25] observă că algoritmul este restrâns doar la domeniul real şi propun
algoritmul CGHA capabil să prelucreze date din domeniul complex (de exemplu, datele obț inute de
la o matrice de senzori sunt transformate prin eşantionare în cuadratură în mărimi complexe). În
acest caz modificarea ponderilor se va face după o regulă asemănătoare cu cea de la GHA:
( ) ( ) ( ) ( )[ ] ( ) ( ) ( ) ( ) ( )
−−+=+ ∑< ji
iijjjjj nnynnynnyconjnηn1n WWXWW
în care ( )nyconj j este conjugata complexă a lui
( ) ( ) ( )nnnyHjj XW=
unde X reprezintă hermitianul transpus.
3.3 Învăţ area prin întărire (Reinforcement Learning)
Învăț area prin întărire (Reinforcement Learning, RL) este sinonimă cu învăț area prin
interacţ iune. În timpul învăț ării sistemul adaptiv încearcă anumite acţ iuni asupra mediului; pentru
fiecare dintre acestea primeşte o evaluare, de obicei mărime scalară, denumită semnal de înt ă rire.
Algoritmii RL urmăresc, prin acț iunile selectate, maximizarea recompensei (“reward”) primite într-
o anumită perioadă de timp.
Programarea agenț ilor se face prin semnale de întărire sau slăbire (răsplată/pedeapsă) f ără a
fi nevoie să se precizeze modalitatea concretă de rezolvare a sarcinii necesar a fi îndeplinită.
Comportamentul adecvat se învaț ă prin interacț iuni de tipul încercă rilor succesive (‘trial-and-
error’) asupra unui mediu înconjurător dinamic.
Există două strategii principale pentru rezolvarea problemelor de tipul învăț ării prin întărire:
a) Metode evolutive. Din această clasă fac parte metodele de optimizare a funcț iilor, gen
algoritmi genetici, programare evolutivă sau călire simulată. Caracteristic pentru aceste metode este
căutarea în spaț iul comportamentelor posibile în scopul găsirii unuia care să fie potrivit mediului
considerat.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 37/54
33
b) Metode statistice şi de programare dinamică. Se bazează pe estimarea utilităț ii
acț iunilor.Nu este clar deocamdată care din abordările sus-menț ionate este cea mai bună în anumite
circumstanț e date.
În concluzie, RL înseamnă învăț area transformării situaț ii în acț iuni astfel încât să fie
maximizată o recompensă numerică. Sistemului supus învăț ării nu i se precizează ce acț iuni trebuieefectuate ci el singur descopere comportamentul ce aduce recompensa maximă prin încercarea
diverselor acț iuni posibile.
O diferenț ă majoră dintre învț area prin întărire şi învăț area de tip supervizat o reprezintă
faptul că primului tip îi este necesară o fază explicit ă de explorare a mediului în scopul
achiziț ionării de cunoştinț e. Cel de al doilea tip de învăț are, cel supervizat, presupune acumularea
cunoştinț elor pe baza unor exemple furnizate de către un expert/supervizor extern şi, deşi reprezintă
unul din tipurile cele mai importante de instruire, nu este adecvată învăț ării din interacț iuni cumediul. În probleme interactive este deseori imposibil şi nepractic să se obț ine exemple de
comportament adecvat şi reprezentativ pentru toate situaț iile posibile în care un agent ar putea să se
găsească. Este deci necesară capacitatea agentului de a învă ţ a din propria experienţ ă .
Elementele de bază ale RL sunt agentul supus învăț ării şi mediul înconjurător acestuia.
Agentul reprezintă un sistem care încearcă să îndeplinească un scop într -un mediu complex şi
dinamic. În modelul standard al RL agentul (program, robot etc.) este conectat la mediul
înconjurător prin intermediul percepț iei şi al acț iunilor (Fig.3.3.1).
Fig.3.3.1 Interacț iunea mediu-agent se face prin: acț iuni (“a”), semnal de întărire (“r”),
semnal senzorial ce informează despre starea mediului (“s”).
Înainte de a aborda algoritmii RL ce conduc la un comportament optim, trebuie definită
această din urmă noț iune. În literatură [1] sunt menț ionate de regulă trei modele: modelul
orizontului finit, modelul orizontului infinit, modelul recompensei medii.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 38/54
34
Ca și algoritmi specifici învăț ării prin întărire pot fi amintiț i: metoda bazată pe valoarea
acţ iunilor, metoda bazată pre pogramarea dinamică, metoda de tip Monte Carlo, diferenţ a
temporală.
Ca și aplicaț ii cele mai spectaculoase rezultate ale reț elelor neuronale artificale bazate pe
învăț area prin întărire s-au obț inut în domeniul jocurilor de inteligenț ă (cum ar fi șahul sau tablele).
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 39/54
35
Capitolul 4. Reţele neuronale în identificarea şi modelarea sistemelor
Un domeniu în care utilizarea reț elelor neuronale este promiț ătoare, este cel al modelării și
identificării sistemelor.
O problemă care trebuie pusă este cea a identificabilităț ii sistemelor. Spre deosebire de cazul
metodelor analitice de identificare în care această problemă este larg tratată, în cazul identificării
sistemelor cu ajutorul reț elelor neuronale problema nu este încă pe deplin clarificată. Vom
considera însă că toate sistemele pot fi reprezentate printr-o reț ea neuronală, indiferent de
complexitatea lor, tipul, arhitectura și algoritmul de învăț are ale acesteia fiind stabilite pentru clase
de sisteme în parte. Se presupune de asemenea că pentru sistemul ce urmează a fi identificat, atât
semnalele de ieșire cât și cele de intrare sunt observabile și măsurabile.
Pentru identificarea unui proces trebuie construită o reţea neuronală, care are la intrare
acelaşi vector de intrare u ca şi sistemul real şi trebuie să genereze un vector my care estimează py
astfel încât să se minimizeze eroarea mp yye −= . Cea mai importantă caracteristică a reţelelor
neuronale, în acest caz, este posibilitatea de a modela, cu ajutorul acestora, atât sisteme liniare, cât
şi sisteme neliniare. Pentru a obț ine o reț ea predictivă cu performanț e bune este important să o
antrenăm cu date reprezentative ale procesului real. Munca de până acuma arată că antrenarea unei
reț ele pe baza unora date luate aleator și care acoperă tot domeniul de funcț ionare oferă cea mai
bună reprezentare și capacitate de generalizare. McGregor și alț ii în [25] observă că, pentru un
model empiric care este folosit într-o buclă închisă de control, achiziț ia datelor pentru antrenare
trebuie realizată în aceleași condiț ii.
Figura 4.1 Structura de antrenare a unei reţele neuronale
Problema identificării poate fi împăr ț ită în trei subprobleme, după cum urmează:
Proces
ModelNeuronal
Algoritm Antrenare
-+
u py
Eroare
my
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 40/54
36
- construirea modelului (alegerea tipului și arhitectura reț elei);
- antrenarea reț elei;
- verificarea corectitudinii modelului (validarea modelului cu date de intrare diferite
de cele folosite pentru antrenare).
Structura de antrenare a reț elei neuronale uzual folosită în acest caz este prezentată în Fig.4.1. Modelul neuronal este plasat în paralel cu sistemul fizic real, recepț ionând ca semnal de eroare.
Datorită caracteristicilor lor, reț elele neuronale vor putea modela atât sisteme liniare, cât și sisteme
liniare.
În cazul sistemelor liniare cel mai simplu mod de identificare este cel dat de regresia liniară,
adică
e(t)(t)y(t)T += φw
unde y(t) reprezintă variabila măsurabilă de ieșire, [ ]Tn21 φ,...,φ,φ=φ vectorul variabilelor de
regresie (cunoscute), [ ] nT
n21 Rw,...,w,w ∈=w vectorul parametrilor ce urmează a fi estimaț i, iar
e(t) o variabilă introdusă de incertitudinea asupra modelului, zgomote sau perturbaț ii. Pentru
aplicarea metodei, se realizează o eșantionare cu perioada τ , astfel încât problema regresiei liniare
poate reformulată ca
e(i),(i)y(i) T += φw 1,2,...mi =
De fapt problema revine la minimizarea funcț iei de eroare:
[ ]∑=
σ=m
1i
i )(r)E( ww
unde
∑=
−=−=m
1j
jj
T
i )i()i(y)i()i(y)(r φwφww
și
( ) 0,r
coshlnr i2
i >β
β
β=σ
Minimizarea funcț iei de eroare prin intermediul unei tehnici de scădere a gradientului,
conduce la ecuaț ia diferenț ială neliniară:
,)i()r(dt
)t(dw m
1i
jij
j ∑=
ϕψµ= 1,2,...nj =
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 41/54
37
unde
β
=ψ>µ iij
rtanh)r(,0
Considerând variaț ii infinit mici pentru ponderile de intrare, ecuaț ia de mai sus se
transformă într -un set de ecuaț ii cu diferenț e:
,)i())k (r()k ()k (w)1k (wm
1i
jijj ∑=
ϕψα+=+ 1,2,...,0k =
unde
τ=
=
=
ϕ−= ∑
k tjj
m
1j
jji
|)t(w)k (w
)i()k (w)i(y)k (r
și
0)k ( >α
Pentru obț inerea unor modele cu grad de exactitate mai mare, pot fi utilizate unul sau mai
multe nivele ascunse, introduse de ecuaț iile auxiliare:
,)k (w)k (w1k
1)k (w)1k (w j
^
jj
^
j
^
−
++=+ 1,2,...,0k =
În cazul sistemelor liniare se pot enumera mai multe tipuri de modele folosite uzual:
- modelul ARMAX, de forma: )e(k)C(z)u(k)B(z)y(k)A(z 111 −−− += ;
- modelul RFI, cu forma: e(k))u(k)B(zy(k) 1 += − ;
- modelul ARX, cu forma: e(k))u(k)B(z)y(k)A(z11 += −− ;
În cazul sistemelor neliniare, în literatura de specialitate sunt sugerate patru tipuri de
modele:
- [ ];)nk (u,),1k (u),nk (y,),1k (yF(k)y ba
^
−−−−=
- [ ] [ ];)nk (y,),1k (yF)nk (u,),1k (uF(k)y a2b1
^
−−+−−=
- [ ];)nk (y,),1k (yF)jk (ub(k)ya2
n
1j
j
^ b
−−+−= ∑=
- [ ] ;)ik (ua)nk (u,),1k (uF(k)yan
1i
ib1
^
∑=
−+−−=
În procesul de proiectare a unei reț ele neuronale, principala problemă care se pune este de a
determina structura ei, adică numărul de straturi și numărul de neuroni pe fiecare strat, astfel încât
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 42/54
38
să fie atins scopul dorit. Am arătat în capitolul 2, că în literatura de specialitate se consideră că orice
funcț ie liniară sau neliniară, mono sau multivariabilă poate fi modelată prin intermediul unei reț ele
neuronale cu două nivele ascunse. Nu întotdeauna însă sunt neapărat necesare două nivele ascunse.
Numărul optim de neuroni în stratul ascuns, numărul de epoci de antrenare, sau valoarea a
erorii medii pătratice nu pot fi prezise cu exactitate înainte de o evaluare a peformanț elor reț elei înmai multe seturi de experimente. Optimul acestor valori poate fi determinat numai experimental și
depinde de tipul problemei și structura reț elei neuronale.
În inginerie cea mai utilizată arhitectură pentru reț elele neuronale este arhitectura
feedforward. Acestea î și datorează popularitatea ”afinităț ii” lor pentru ecuaț iile matematice
întâlnite în inginerie. O altă arhitectură care poate fi utilă în identificarea sistemelor este cea
recurentă, în care stratul ascuns include conexiunile de reacț ie dintre neuroni, cu o întârziere t. Dacă
aceste conexiuni sunt îndepărtate, reț eaua rămasă corespunde unei arhitecturi feedforward și, deaceea arhitectura feedforward poate fi văzută ca un subset al arhitecturii recurente. În Fig 4.2 de mai
jos este prezentată structura generală a unei reț ele recurente pentru identificarea unui proces.
Figura 4.2 Arhitectura generală a unei reț ele neuronale
pentru identificarea unui proces
Mai departe identificarea și modelarea pe baza reț elelor neuronale poate fi folosită în
reglarea adaptivă. În general sunt folosite două tipuri de scheme în conducerea adaptivă : în buclă
deschisă (feedforward sau cu programarea parametrilor) şi în buclă închisă. Se porneşte de la o
buclă de reglare obişnuită, cu reacţie negativă, cu un regulator cu parametrii ajustabili. Cheia
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 43/54
39
problemei este de a găsi o cale convenabilă de ajustare a parametrilor regulatorului, ca răspuns la
modificările dinamicii procesului, dar şi la variaţiile perturbaţiilor din proces.
Dacă schimbările acestea sunt predictibile pe baza măsurătorilor se poate folosi un regulator
cu parametrii programabili şi autoacordarea pentru determinarea valorilor parametrilor în diverse
puncte de funcţionare. Există cazuri însă, când variaţia dinamicii procesului nu este predictibilă.Acest lucru se poate întâmpla în cazul modificărilor unor parametrii tehnologici nemăsurabili, a
uzurii, neliniarităţi necunoscute etc. Variaţiile de acest gen nu pot fi compensate decât prin folosirea
adaptării, regulatorul adaptiv fiind iniţializat prin pre-acordare sau acordare inţială şi este nevoie de
o schemă de reglare în buclă închisă. De asemena este necesară o buclă de reglare suplimentară ce
acţionează asupra parametrilor regulatorului în prezenţa variaţiilor parametrice ale procesului.
Sistemele adaptive în buclă închisă pot fi clasificate în sisteme duale şi nonduale, iar mai
departe cele nonduale se împart în două categorii mari, şi anume în sisteme adaptive cu model dereferinţă şi în sisteme adaptive cu identificarea modelului.
Există mai multe căi de utilizare a tehnicilor de control adaptiv, dar datorită faptului că
teoria în domeniu nu este completă, apar deseori confuzii în terminologie. O catalogare a acestor
tehnici ar fi următoarea :
- Acordarea automată (auto-acordarea) reprezintă o metodă prin care regulatorul
este acordat automat la solicitarea utilizatorului;
- Reglare adaptivă cu programarea parametrilor care presupune prestabilirea unei
dependenţe între parametrii regulatorului şi anumite modificări măsurabile în condiţiile de
funcţionare ale procesului;
- Reglare adaptivă care implică utilizarea unui regulator ai cărui parametrii se
modifică continuu, pentru a se adapta schimbărilor din dinamica procesului şi perturbaţiilor (Fig.
4.3).
Fig. 4.3 Structura de reglare adaptivă
ParametriiRegulatorului
Regulator
Estimator
ProcesComanda
Ieşire Referinţă
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 44/54
40
Capitolul 5. Stadiul actual în utilizarea reţ elelor neuronale pentruidentificarea și controlul proceselor
Marele avantaj pe care îl prezintă reț elele neuronale în domeniul identificării și modelării
sistemelor este acela că pot aproxima comportarea oricărui proces neliniar pe toată dinamica
procesului (și nu doar în puncte de funcț ionare). În literatura de specialitate există un număr
considerabil de lucrări care dovedesc preocupările a numeroși cercetători în acest domeniu.
De asemenea în mediul software Matlab exisă un ”toolbox” dedicat (Neural Network
Toolbox) care facilitează realizarea unor aplicaț ii pentru modelarea și controlul proceselor [3], [26].
Unii autori au dezvoltat ”toolbox-uri” proprii pentru utilizarea în mediul Matlab, utile în cazul unor
probleme specifice (ca de exemplu în [16]). O altă modalitate de implementare software a reț elelor
neuronale este în limbajul C/C++. Este mai dificil de implementat însă timpul de calcul este mai
redus.
În cele ce urmează vor fi prezentate câteva aplicaț ii apărute în unele lucrări de specialitate
(din domenii diverse ale inginerie), în care sunt folosite reț ele neuronale pentru identificarea și
modelarea sau estimarea parametrilor unor procese.
În [28] este descrisă o tehnică bazată pe reț ele neuronale feedforward multistrat, antrenate
cu algorimul back-propagation, folosită în procesul de gravare cu ioni reactivi. Autorii utilizează
estimatori liniari și neliniari pentru a modela efectul pe care îl au parametrii procesului (cum ar fipresiunea camerei de gravare, puterea RF, amestecul de gaz) asupra măsurătorile efectuate in situ
prin emisia optică spectroscopică și analiza gazului rezidual. Rezultatele obț inute au fost
satisfăcătoare, având performanț e superioare în comparaț ie cu modelele liniare. Tehnica utilizată
surprinde modificările din camera de contaminare și pare a fi o unealtă promiț ătoare pentru
monitorizarea în timp real și controlul procesului de gravare cu ioni activi.
O altă problemă în care și-au gasit utilitatea reț elele neuronale este în controlul procesului
de electroliză a celulelor de aluminiu [10]. În acest caz reț elele neuronale sunt antrenate iniț ial cudate obț inute din sumulări realizate pe calculator, înainte de a fi învăț ate on-line pentru a prezice
comportamentul variabilelor de decizie din cadrul acestui proces. Mai apoi, reț elele antrenate sunt
folosite în controlul procesului, care are ca scop principal eliminarea efectului de anod, un
eveniment destabilizator ce apare în timpul electrolizei.
S-a folosit o reț ea neuronală feedforward cu nouă noduri în stratul de intrare (pentru ca toate
datele de intrare necesare în identificare să poată fi aplicate reț elei pentru antrenarea ei) și nouă
neuroni ascunși. Adaptarea on-line a ponderilor sinaptice s-a realizat cu algoritmul back-propagation folosind ca parametrii rata de învăț are adaptivă și momentum.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 45/54
41
Cum reț eaua este antrenată pentru a opera în timp real, sunt impuse două constrângeri legate
de adaptarea on-line pentru a evita modificări ale ponderilor datorate unor disturbaț ii asimilate în
timpul învăț ării:
(1) Dacă are loc o modificare a anodului, reț eaua nu mai primește date de intrare pentru o
perioadă de timp, la sfâr șitul căreia vectorul de intrare este reajustat în funcț ie de valori de dinainteși de după modificarea anodului;
(2) Înainte și după adaptarea unei ponderi, dacă raportul dintre două valori a erorii prezise
depășește o anumită limită, noua pondere este rejectată.
Astfel reț eaua a fost antrenată și testată pe o perioadă de 24 de ore pe baza unori factori
prestabiliț i (câștigul și eroarea în acest caz). Analiza performanț elor reț elei după antrenare a arătat
că aceasta este capabilă să prezică rezistenț a unei celule 15 minute în viitor (cu o eroare de 0.005),
chiar și în prezenț a unor modificări ale anodului. Deci reț eaua a învăț at să prezică starea celulelormai multe minute în avans, în timp ce menț ine ultimele stări cunoscute. Acest lucru este de mare
importanț ă pentru utilizarea reț elei mai departe în controlul predictiv, pentru că astfel operatorul
poate preveni situaț iile critice cum ar fi efectele de anod.
În continuare, fără o antrenare adiț ională reț eaua a fost testată pe date furnizate de la o
celulă reală (în prima situaț ie datele de testare au fost obț inute prin simulare). Rezultatele,
prezentate în Fig 5.1 indică faptul că reț eaua este capabilă să surprindă dinamica celulei reale și de
asemenea să reducă nivelul de zgomot, aceasta fiind de fapt esenț a generalizării.
Figura 5.1 Predicț ia în timp real 15 minute în viitor, a rezistenț ei unei
celule folosind date de la o celulă reală [10]
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 46/54
42
Pe de altă parte, acest test folosește și ca validare a simulatorului arătând că, după învăț area
reț elei pe baza datelor rezultate din simulare, poate generaliza pentru a prezice dinamica procesului
real. Performanț ele reț elei pot fi îmbunătăț ite prin antrenare suplimentară, dar acest lucru va dăuna
capacităț ii de generalizare a reț elei. Este însă evident că performanț ele se vor îmbunătăț i odată ce
reț eaua neuronală va fi integrată în procesul real și va începe să înveț e on-line. Mai departe înlucrare, reț eaua neuronală dezvoltată este folosită la implementarea unui algoritm de control
predictiv pentru procesul de obț inere a celulelor din aluminiu prin electroliză.
Identificarea și modelarea pe baza reț elelor neuronale şi-a gasit aplicabilitatea și în
conducerea proceselor biologice. Două astfel de exemple sunt cele din [8] și [17]. Ambele lucrări
prezintă metode de control pentru procesul de tratare a apelor uzate din staț iile epurare (Fig. 5.2).
Figura 5.2 Reprezentare schematică a procesului de apurare al apelor uzate [17]
În [17] a fost folosită o reț ea neuronală feedforward pentru a modela comportamentul
procesului din Fig. 5.2. Reț eaua conț ine 15 neuroni în primul strat, 7 neuroni în stratul ascuns și 4
neuroni în strtul de ieșire. Pentru a surprinde corect toate interconexiunile dintre variabile, au fost
furnizate intrării reț elei până valori întârziate de până la patru ori perioada de timp. Datele utilizate
pentru antrenarea reț elei au fost obț inute prin simularea unui model descris de ecuaț ii diferenț iale.
Un alt set de date diferit, obț inut tot prin simulare, a fost folosit pentru validarea datelor. Rezultatele
obț inute apar în Fig 5.3. Performanț ele reț elei au fost bune, ț inând însă cont de faptul cont că
reț eaua este folosită numai pentru predicț ia unui parametru din proces (oxigenul dizolvat).
Ca și în cazul precedent reț eaua neuronală este folosită pentru implementarea unui algoritm
de conducere predictiv.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 47/54
43
Figura 5.3Validarea modelului nuronal: procesul – linia continuă, modelul – linia întreruptă [17]
În cel de-al doilea caz [8] este folosită o reț ea neuronală recurentă care apoi este folosită
pentru implementarea unui coltroler bazat de asemenea tot pe reț ele neuronale.
În ultima perioadă reț elele neuronale s-au utilizat cu succes în domeniu aviatic. În [29] este
abordată problema modelării aerodinamice și a estimării parametrilor unui avion aeroelastic pe baza
reț elelor neuronale. Este dezvoltat un model neuronal capabil să prezică for ț a generalizată și
coeficienț ii momentului folosind măsurători privind doar variabilele de mișcare și control, fără a fi
nevoie de convenț ionalele variabile de elasticitate și derivatele lor în funcț ie de timp. Mai departe
se arată că un astfel de model neuronal poate fi folosit pentru a extrage derivatele de control și
stabilitate echivalente pentru un avion flexibil. Sunt prezentate rezultatele pentru un avion cu
diferite grade de flexibilitate pentru a demonstra utilitatea abordării pe baza reț elelor neuronale atât
în cazul modelării, cât și în cazul estimării parametrilor.
De asemenea, în [30] este implementat un sistem control bazat pe reț ele neuronale pentru un
UAV (Unmaned Aerian Vehicle). Foarte interesantă este analiza coparativă care se face în lucrare,
între performanț ele obț inute de reț elele neuronale bazate pe funcț ii radiale (RBF) și reț eleleneuronale cu un singur strat ascuns. S-a pornit de la ideea că aceste două arhitecturi de reț ele sunt
cele mai utilizate de industrie și de societăț ile academice pentru implementarea controlului adaptiv
cu model de referinț ă bazat pe reț ele neuronale. Sunt evidenț iate diferenț ele cheie între aceste
arhitecturi, care au un impact considerabil asupra abordărilor legate de controlul adaptiv.
Rezultatele și concluziile notate în lucrare pot furniza specialiștilor în domeniu o justificare în
alegerea unei arhitecturi în detrimentul celeilalte, și deci un control cu performanț e mai bune, în
funcț ie de aplicaț ie.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 48/54
44
Un alt exemplu de utilizare cu succes a reț elelor neuronale este cel prezentat în [9], și
anume modelarea unui proces de reglare a nivelului din tamburul unui cazan de abur din industria
electroenergetică. Motivaț ia autorilor pentru alegerea de a modela procesul pe baza reț elelor
neuronale este capacitatea acestora de a aproxima sistemele neliniare pentru întreaga zonă de
operare a acestora.În proiect se presupune că informaţiile privitoare la dinamica procesului neliniar sunt accesibile
numai prin ieşirea acestuia şi se consideră că procesul are o singură intrare şi o singură ieşire. Un model
neuronal de tip model neliniar autoregresiv cu mărimi de intrare exogene (NNARX) este descris de
ecuaţia:
)]1mdk (u,),dk (u),1nk (y),k (y[f )1k (yN +−−−+−=+
unde (.)f este o funcţie neliniară de argumentele sale. Intrări în acest model neuronal sunt valorile
trecute ale intrării exogene în proces, )mdk (u,),1dk (u),dk (u −−−−− , şi respectiv regresorii
ieşirii modelului, )1nk (y,),1k (y),k (y +−− ; d este timpul mort estimat iar m şi n reprezintă ordinul
modelului procesului.
Modelul neuronal al procesului, reprezentat în Fig. 5.4, a fost obţinut ajustând, pe baza unui
algoritm de antrenare, ponderile şi deplasările reţelei neuronale multistrat (Multilayer Perceptron –
MLP) astfel încât să fie minimizat în sens statistic, pentru un anumit număr de eşantioane
achiziţionate din proces, semnalul de eroare:
)k (y)k (y)k (e N
* −=
unde )k (y* reprezintă răspunsul dorit al reţelei.
n
m
( 1)u k d m − − +
( )y k
( 1)y k n − +
(.)N f
D D D *d D
D D D
( 1)y k +
( )u k
( 1)u k d − −( )u k d −
Figura 5.4 Reţea neuronală extern recurentă; model de tip NNARX [9]
În lucrare se evidenț iază necesitatea caracterului recurent al reţelei neur onale utilizate,
prezentată în Fig. 5.4, unele intrări în reţea corespunzând unor valori trecute ale ieşirii acesteia.
Altfel spus, pentru a putea fi folosit în procesul de predicţie pe un pas, modelul obţinut trebuie să fie
de tip paralel deoarece în realizarea predicţiei nu vor putea fi furnizate la intrarea reţelei valori reale
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 49/54
45
ale ieşirii viitoare a procesului ci vor fi folosite valori ale ieşirii reţelei. Aceasta poate conduce la
instabilitate în cazul unor regimuri din zona de operare a reţelei şi poate fi dificil de determinat dacă
predictorul neuronal este stabil sau nu. În această situaţie ieşirea predicț ionată peste orizontul de
predicţie va fi puternic influenţată de apariţia şi propagarea erorilor de predicţie datorate unui model
inadecvat.Mai departe reț eaua neuronală a fost folosită pentru implementarea unui simulator și inclusă
într-o structură de reglare de forma celei prezentate mai jos în Fig. 5.5:
Model neuronal
y p (k+i|k ) i =1...N
Regulator
ProcesRegulator
qopt
e p (k+i|k )+
-
u p (k+i|k )
r (k )+
-
y (k )Buclă de control de
timp real( T )
u (k )
r p (k+i |k )
Bloc deoptimizare
q
Funcţie de cost Restricţii
Simulatorneuro-predictiv
e (k )
P̂
Bloc de adaptare
Figura 5.5. Structură neuro-predictivă de adaptare a parametrilor regulatorului [9]
Problema care s-a dorit a fi rezolvată în acest proiect a fost cea referitoare la acordarea
corectă a parametrilor regulatoarelor PID. Astfel s-a pornit de la ideea că, în majoritatea aplicaț iilor
industriale, peste 90%, se utilizează regulatoare PI, PID. Mai mult, statisticile arată că 30% din
regulatoare operează în mod manual şi doar 20% din buclele de reglare au fost acordate folosind o
metodă teoretică de determinare a parametrilor. De cele mai multe ori, parametrii regulatoarelor
sunt fixaţi pentru anumite puncte nominale de funcţionare, pentru care problema reglării în
conformitate cu restricţiile şi performanţele impuse este rezolvată. Dar, procesele industriale sunt
complexe, neliniare, multivariabile, cu o comportare dinamică ce se modifică în timp datorită
schimbărilor punctelor de operare şi din aceste motive, utilizarea regulatoarelor PID cu parametrii
constanţi asigură performanţe slabe de reglare. Înlocuirea regulatoarelor clasice PID cu regulatoare
moderne bazate pe strategii avansate de control (regulatoare predictive, regulatoare neurale sau
neuro-fuzzy etc.) ar necesita costuri suplimentare. Astfel, alternativa abordată în lucrare constă în
acordarea parametrilor regulatoarelor în funcţie de condiţiile de funcţionare ale procesului, utilizând
tehnici de auto-tuning sau self-tuning pe baza reț elelor neuronale.
În final tunerul neuro-predictiv, proiectat şi testat iniț ial în timp real pe o machetă de
laborator (PROCON), a fost testat apoi prin simulare cu ajutorul modelului neural al sistemului de
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 50/54
46
reglare al nivelului în tambur. Modelul neuronal obţinut a fost introdus într -o structură de simulare
care permite adaptarea on-line a parametrilor de acord ai regulatorului PI.
Rezultatele obţinute sunt prezentate în Fig. 5.6. Acestea evidenţiază viabilitatea metodei de
acordare on-line a parametrilor regulatorului, în raport cu structura curentă. Fig. 5.6 (a) ilustrează
răspunsul sistemului de reglare curent de la CET, cu structură într -un punct şi regulator cuparametrii ficşi. Fig. 5.6 (b) ilustrează răspunsul obţinut prin simulare în jurul aceluiaşi punct de
operare, fiind evidenţiată reducerea oscilaţiilor în variabilei reglate, nivel.
Fig. 5.6 Rezultate obţinute prin simulare [9](a) Răspunsul sistemului real; (b) Răspunsul obţinut prin simulare; (c) Comanda obţinută prin
simulare (d) Parametrii de acord
După cum se poate constata literatura este bogată în lucrări ce prezintă metode de
implementare a reț elelor neuronale pentru identificarea, modelarea și estimarea unor procese, iar
exemplele pot continua.
0 100 200 300 400 500-0.5
0
0.5
(b)
0 100 200 300 400 50024.6
25
(c)
0 100 200 300 400 500-1
0
1
Timp [sec]
(d)
0 100 200 300 400 500-10
0
10
20
30
(a)
comanda
q0q1
referintaiesire nivel
comandaiesire nivel
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 51/54
47
Capitolul 6. Concluzii
Cercetările atât în domeniul reţelelor neuronale sunt în plină expansiune şi preocupă un
număr însemnat de oameni de ştiinţă din domenii variate. Acest lucru se datorează potenţialului
deosebit al acestora şi al aplicabilităţii lor într -un spectru deosebit de larg de activităţii (după cum se
poate deduce din titlurile menț ionate în lucrare și domeniile foarte diverse în care reț elele neuronale
au fost utilizate).
În procesul de proiectare a unei reț ele neuronale, principala problemă care se pune este de a
determina structura ei, adică numărul de straturi și numărul de neuroni pe fiecare strat, astfel încât
să fie atins scopul dorit. Am arătat în capitolul 2, că în literatura de specialitate se consideră că orice
funcț ie liniară sau neliniară, mono sau multivariabilă poate fi modelată prin intermediul unei reț ele
neuronale cu două nivele ascunse. Nu întotdeauna însă sunt neapărat necesare două nivele ascunse.
Numărul optim de neuroni în stratul ascuns, numărul de epoci de antrenare, sau valoarea a
erorii medii pătratice nu pot fi prezise cu exactitate înainte de o evaluare a peformanț elor reț elei în
mai multe seturi de experimente. Optimul acestor valori poate fi determinat numai experimental și
depinde de tipul problemei și structura reț elei neuronale.
Alte probleme legate de implementarea reț elelor sunt legate de resursele de calcul necesare.
La alegerea arhitecturii trebuie făcut un compromis între performanț ele reț elei și volumul de
memorie și timpul de calcul necesare.
Totuși, în ciuda unelor dificultăț i întâlnite la implementarea reț elelor neuronale, avantajele
pe care le oferă le recomandă drept soluț ii viabile, cu performanț e deosebite în identificarea,
modelarea și conducerea sistemelor. Mai jos sunt amintite încă o dată aceste avantaje:
- Capacitatea de a aproxima comportamentele neliniare ale sistemelor, deci de a
modela sisteme neliniare. În acest sens, reţelele neuronale pot fi antrenate respectând tehnici de
optimizare, fără a fi necesară implementarea unor algoritmi deosebit de complecşi pentru a obţine
rezultate satisfăcătoare;
- Capacitatea de adaptare şi învăţare permit utilizarea în controlul unor procese
complexe şi care prezintă incertitudini. Reţelele neuronale învaţă utilizând date din trecutul
procesului studiat, iar după ce sunt antrenate au capacitatea de generalizare în cazul apariţiei de
semnale ce nu apar în setul de învăţare. Mai mult, au proprietatea de adaptare on-line, ce are imediat
aplicabilitate în controlul adaptiv;
- Posibilitatea de implementare paralelă a reţelelor neuronale conduc la un grad
ridicat de toleranţă la erori;
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 52/54
48
- Reţelele neuronale pot procesa mai multe intrări şi ieşiri. Deci sunt imediat
aplicabile sistemelor multivariabile, caz în care implementarea unor algoritmi clasici este deosebit
de dificilă şi de complexă;
- Implementările hardware ale reţelelor neuronale, cum ar fi de exemplu prin
intermediul circuitelor integrate pe scară largă (VLSI), permit utilizarea reţelelor neuronale încadrul aplicaţiilor de timp real.
După cum apare în capitolul precedent aplicaț iile din domeniul ingineriei sunt deosebit de
variate și cu rezultate deosebite.
În cadrul doctoratului se vor dezvolta algoritmi de control neuro-predictiv pentru controlul
unui UAV. Prin dezvoltarea unor algoritmi de control adaptiv pentru conducerea proceselor
utilizând reţele neuronale se încearcă întrunirea avantajelor acestora pentru a putea rezolva câteva
dintre problemele pe care le ridică procesele neliniare ce prezintă incertitudini de modelare, şivariaţii în dinamica procesului şi a perturbaţiilor. Astfel, acest referat încearcă să stabilească bazele
teoretice, de asemenea să scoată în evidenț ă avantajele, dezavantajele și problemele legate de
implementarea reț elelor neuronale. De asemenea, în capitolul 4 sunt amintite câteva lucrări și
aplicaț ii în care sunt folosite cu succes reț ele neuronale pentru controlul unor procese.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 53/54
49
Bibliografie
[1] V. Toponuţ, C.D. Căleanu, Reţele Neuronale - Arhitecturi şi algoritmi, Editura Politehnica,
Timişoara, 2002.
[2] D. Gâlea, F. Leon, Inteligenţa artificială , Universitatea Tehnică Gh. Asachi Iaşi, Facultatea
de Automatică şi Calculatoare.
[3] H. Demuth, M. Beale, M. Hagan, Neural Network Toolbox 6 User's Guide, 2007.
[4] Honoriu Vălean, Reţele Neuronale - Aplicaţii în Controlul Sistemelor , Referat de doctorat,
1996.
[5] B. Mureşan, ş.a., Reţele Neuronale în Identificarea şi Modelarea Sistemelor , în Ştiinţă şi
Inginerie, Vol 15, Editura AGIR, Bucureşti, 2009, pp. 667-672.
[6] I. Naşcu, Control adaptiv, Editura Mediamira, Cluj-Napoca, 2002.
[7] J.A. Rossiter, Model-based predictive control: a practical approach , Sheffield, 2005;
[8] E. Petre, D. Selişteanu, D. Şendrescu, C. Ionete, Nonlinear and Neural Networks Based
Adaptive Control for a Wastewater Treatment Bioprocess, în Knowledge-Based Intelligent
Information and Engineering Systems, ISBN978-3-540-85564-4, 2008, pp. 273-280.
[9] C. Lazăr, S. Carari, Drăguna Vrabie, T. Ganciu, O. Păstrăvanu, Letiţia Mirea, Alina
Barabulă, M. Kloetzer, D. Ivana, Raport de Cercetare : Acordarea neuro-predictivă a
algoritmilor de conducere, Grant: Cod CNCSIS A258, 2004.[10] A. Meghlaoui, R.T. Bui, J. Thibault, L. Tikasz, R. Santerre, Predictive Control of
Aluminium Electrolytic Cells Using Neural Networks, Metallurgical and Materials Transactions
B, Volume 29B, 1998.
[11] Tingliang Hu, Jihong Zhu, Chunhua Hu, Zengqi Sun, Neural Networks Robust Adaptive
Control for a Class of MIMO Uncertain Nonlinear Systems, LNCS 3498, pp. 60-68, Springer-
Verlag Berlin Heidelberg 2005.
[12]
R. Findeisen, F. Allgower, An Introduction to Nonlinear Model Predictive Control, Institutefor Systems Theory in Engineering, University of Stuttgart, Germany.
[13] Alexander I. Galushkin, Neural Networks Theory, ISBN 978-3-540-48124-9, Springer-
Verlag Berlin Heidelberg 2007.
[14] Diana Robescu, S. Lanyi, A. Verestoy, Dan Robescu, Modelarea şi simularea proceselor de
epurare, Editura Tehnică, Bucureşti, 2004.
[15] F. Nejjari, A. Benhammou, B. Dahhou and G. Roux, Non-linear multivariable adaptive
control of an activated sludge wastewater treatment process, Int. J. Adapt. Control Signal
Process., Vol. 13, pp.347-365, 1999.
8/7/2019 Bogdan Muresan - STUDIU PRIVIND STADIUL ACTUAL ÎN UTILIZAREA REŢELELOR NEURONALE PENTRU IDENTIFICARE…
http://slidepdf.com/reader/full/bogdan-muresan-studiu-privind-stadiul-actual-in-utilizarea-retelelor-neuronale 54/54
50
[16] Nørgaard, Neural Network Based System Identification Toolbox, Tech. Report. 00-E-891,
Department of Automation, Technical University of Denmark, 2000.
[17] S. Caraman, M. Sbarciog, M. Barbu, Predictive Control of a Wastewater Treatment
Process, International Journal of Computers, Communications & Control, Vol. II, No. 2, pp.
132-142, 2007.[18] E. Petre, D. Selişteanu, D. Şendrescu, C. Ionete, Neural network-based adaptive control for
a class of nonlinear bioprocesses, Neural Comput & Applic, Springer – Verlag London
Limited, 2009.
[19] B. Hassibi, D.G. Stork, Second Order Derivatives for Network Pruning: Optimal Brain
Surgeon, NIPS 5, Eds. S.J. Hanson et al., 164, San Mateo, Morgan Kaufmann, 1993.
[20] M.W. Pedersen, L.K. Hansen, J. Larsen, Pruning With Generalization Based Weight
Saliences, Proc. of the Neural Information Processing Systems 8, 1995. [21] Nikola K. Kasabov, Foundations of Neural Networks, Fuzzy Systems, and Knowledge
Engineering, A Bradford Book, The MIT Press, Cambridge, Massachusetts Institute of
Technology, London, England, 1996.
[22] T. Cover, Elements of Information Theory, New York, Wiley, 1991.
[23] Pineda F.J., Recurrent backpropagation and dynamical approach to adaptive neural
computation, Neural Computation, vol I, 1989.
[24] J.L. McClelland, D.E. Rumelhart, G.E. Hinton, Parallel Distributed Processing, Exploration
in the Microstructures of Cognition, Vol I., 1989.
[25] J.F. MacGregor, T.E. Marlin, J.V. Kresta, Chemical Process Control CPCIV,
CACHE/AIChE , New York, NY, Y. Arkum and W.H. Ray, eds., 1991, pp. 665-72.
[26] C. R. Marcano-Gamero, Plant identification and Control using a Neural Network Controller
Based on Reference Model, Univesidad Nacional Experimentl Politecnica ”Antonio Jose de
Sucre”, Puerto Ordaz, Venezuela, 2007.
[27] S. Haykin, Neural Network a Coprehensive Foundation, Prentice Hall, 1999.
[28] R. Shadmehr, D. Angell, P. B. Chou, G. S. Oehrlein, R. S. Jaffe, Principal Component
Analysis of Optical Emission Spectroscopy and Mass Spectrometry: Application to Reactive Ion
Etch Process Parameter Estimation Using Neural Networks, The Electrochemical Society, Vol.
139, March 1992.
[29] S.C. Raisinghani, A.K. Ghosh, Parameter Estimation of an Aeroelastic Aircraft Using
N l N k S dh V l 25 A il 2000 181 191