Rezumat teza Alin Tisan - Facultatea de Electronica ...
Rezumat teza Alin Tisan - Facultatea de Electronica ...
Rezumat teza Alin Tisan - Facultatea de Electronica ...
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