25.08.2013 Views

Rezumat teza Alin Tisan - Facultatea de Electronica ...

Rezumat teza Alin Tisan - Facultatea de Electronica ...

Rezumat teza Alin Tisan - Facultatea de Electronica ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Rezumat</strong> pag. 29<br />

Formarea datelor <strong>de</strong> antrenare<br />

Datele <strong>de</strong> antrenare a reţelei neuronale cuprind două seturi <strong>de</strong> date: datele <strong>de</strong> intrare şi datele ţintă şi sunt<br />

formate respectiv din vectori <strong>de</strong> lungime egală cu numărul <strong>de</strong> trăsături extrase înmulţit cu 7 (numărul <strong>de</strong><br />

senzori) ce au fost obţinute prin combinarea datele generate în urma aplicării funcţiei <strong>de</strong> extragere a<br />

trăsăturilor asupra răspunsului senzorului la aplicarea compusului volatil şi din vectori ce caracterizează<br />

clasa vectorilor <strong>de</strong> intrare. Crearea matricei <strong>de</strong> vectori <strong>de</strong> antrenare (vectori antrenare – vectori ţintă) am<br />

realizat-o prin intermediul scriptului date_input_target.m, aplicat asupra matricei trăsăturilor <strong>de</strong> dimensiune<br />

56 x 258.<br />

Erori şi calcularea erorilor<br />

Erorile <strong>de</strong> recunoaştere ale reţelei neuronale în funcţie <strong>de</strong> compunerea setului <strong>de</strong> date <strong>de</strong> antrenare le-am<br />

calculat cu ajutorul funcţiilor “obt_erori.m” şi “numarare_erori.m” explicitate in cele ce urmează.<br />

Funcţia este aplicată datelor obţinute în urma simulării reţelei antrenate şi datelor ţintă şi returnează grafic,<br />

poziţiile nerecunoscute şi valoric, numărul <strong>de</strong> poziţii recunoscute exprimate in procente, anexa 9.6.<br />

O altă sursă <strong>de</strong> erori apare la implementarea hardware a reţelei neuronale şi este <strong>de</strong>terminată <strong>de</strong> precizia<br />

<strong>de</strong> reprezentare a valorilor, ce se regăseşte la stocarea datelor în memoria <strong>de</strong> pon<strong>de</strong>ri şi la efectuarea<br />

calculelor pe un anumit număr <strong>de</strong> biţi.<br />

Pentru analiza erorilor funcţie <strong>de</strong> numărul <strong>de</strong> biţi <strong>de</strong> reprezentare şi calcul am realizat în Simulink un<br />

mo<strong>de</strong>l care să emuleze comportamental o reţea neuronală Ff-Bp implementată hardware. Mo<strong>de</strong>lul este unul<br />

general şi în funcţie <strong>de</strong> setările efectuate în fereastra <strong>de</strong> configurare a parametrilor va modifica numărul <strong>de</strong><br />

biţi în care partea întreagă şi cea fracţionară a datelor este reprezentată şi tipul reţelei.<br />

Figura 9.8. Arhitectura mo<strong>de</strong>lului <strong>de</strong> simulare a relei<br />

neuronale<br />

Figura 9.9. Fereastra <strong>de</strong> configurare a<br />

parametrilor <strong>de</strong> reprezentare a<br />

datelor şi <strong>de</strong> importare a reţelei<br />

Reţeaua neuronală simulata este formată dintr-un bloc <strong>de</strong> procesare a vectorilor <strong>de</strong> intrare un strat ascuns,<br />

un strat <strong>de</strong> ieşire şi un bloc <strong>de</strong> procesare a vectorilor <strong>de</strong> ieşire, figura 9.10<br />

Figura 9.10. Componenţa reţelei neuronale FF-BP<br />

Procesarea vectorilor <strong>de</strong> intrare constă in implementarea funcţiilor <strong>de</strong> <strong>de</strong>terminare şi înlocuire a valorilor<br />

NAN, funcţia fixunknowns.m, <strong>de</strong> eliminare a rândurilor cu valori constante, funcţia removeconstantrows.m<br />

şi <strong>de</strong> mapare a valorilor vectorilor într-un interval prestabilit <strong>de</strong> valori, <strong>de</strong> obicei [-1 1] folosind algoritmul:<br />

x - xmin<br />

y = ( y max - ymin ) ⋅ + y<br />

(9.1)<br />

min<br />

x - x<br />

max min<br />

un<strong>de</strong> ymax şi ymin sunt valorile minime şi maxime ale intervalului în care se mapează valorile <strong>de</strong> intrare,<br />

xmin şi xmax sunt valorile minime şi maxime ale datelor <strong>de</strong> mapat, x este valoarea <strong>de</strong> mapat şi y este valoare<br />

mapată. Procesarea vectorilor <strong>de</strong> intrare constă in implementarea funcţiilor <strong>de</strong> restabilire a valorilor <strong>de</strong><br />

dinaintea mapării, funcţia mapminmax_reverse.m şi <strong>de</strong> refacere a rândurilor cu valori constante înlăturate<br />

iniţial, funcţia removeconstantrows_reverse.m.<br />

Stratul ascuns şi cel <strong>de</strong> ieşire este format din blocurile <strong>de</strong> conversie a datelor pe un număr <strong>de</strong> biţi setat în<br />

fereastra <strong>de</strong> configurare a parametrilor, un bloc <strong>de</strong> calcul al intrărilor pon<strong>de</strong>rate, bloc <strong>de</strong> stocare a biasului, un<br />

bloc <strong>de</strong> însumare a intrărilor pon<strong>de</strong>rate şi a biasului şi un bloc <strong>de</strong> calcul al valorilor <strong>de</strong> ieşire a stratului<br />

neuronal prin aplicare funcţiei <strong>de</strong> activare tansig.m,<br />

Bloc <strong>de</strong> calcul al intrărilor pon<strong>de</strong>rate conţine la rândul lui blocurile <strong>de</strong> multiplicare a intrărilor cu<br />

pon<strong>de</strong>rile aferente stocate<br />

Implementarea reţelei pe un număr <strong>de</strong> biţi fix constituie o sursă <strong>de</strong> erori în recunoaşterea tiparului

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!