Documente Academic
Documente Profesional
Documente Cultură
1.1. Introducere
2
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
d
x1 w1
x1 w1 g ( x) xi wi
i 1
x2 w2 Functia de
x2 w2
activare
x3 w3 Activarea
x3 w3 g(x)
f( )
y
...
b
Pragul
xd wd (threshold, bias)
xd wd
Ponderi d
sinaptice y f ( g ( x ) b) f ( xi wi b)
i 1
Combinator liniar
3
Dan-Marius Dobrea
4
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
5
Dan-Marius Dobrea
x Sistem necunoscut y
care va fi
identificat/modelat
Model matematic ^y +
(neural, fuzzy, statistic
liniar sau neliniar):
∑
-
f(x, w)
Algoritm de
adaptare
y - ^y
6
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
7
Dan-Marius Dobrea
9
Dan-Marius Dobrea
10
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
11
Dan-Marius Dobrea
E e2 E d y
2
Ed w Ex x w 2 E{d x }w
2 T T T
(2.4)
Matricea:
Rx E x xT (2.5)
este matricea de corelaţie a vectorului aleator real x de intrare. În plus,
definim şi vectorul P = E{d xT}. Cu aceste definiţii, relaţia (2.4) devine:
w E e 2 E d 2 wT Rx w 2 P w (2.6)
13
Dan-Marius Dobrea
1 1
𝜉(𝑤) = 𝐸{(𝑑 − 𝑦) } = (𝑑 − 𝑤𝑥 ) = ((𝑑 ) − 2𝑤𝑑 𝑥 + 𝑤 (𝑥 ) ) (2.10)
𝐴 𝐴
(w) tangenta în
punctul wa 𝜕
= (𝑤 )
𝜕𝑤
𝜕
𝜕𝑤 𝜕 𝜕
>
(w )
a 𝜕𝑤 𝜕𝑤
(wa)
(w )
b
14
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
w k 1 w k w k (2.12)
T
unde wk este gradientul , , ... în w[k],
w0 w1 w
d
iar este o constantă pozitivă denumită constantă de adaptare (de
învățare).
După cum am demonstrat anterior gradientul erorii pătratice medii se
poate calcula prin intermediul relaţiei (2.9) dacă se cunosc matricea de
corelaţie a setului de date, Rx, şi vectorul P. Dar există situaţii în care nu
dispunem apriori de un set de instruire sau estimarea matricii Rx şi a
vectorului P este dificilă. În aceste situaţii se recurge la aproximarea
gradientului erorii medii pătratice, , cu gradientul erorii pătratice
instantanee. Algoritmii de calcul ai ponderilor rezultaţi în urma acestei
aproximări formează clasa algoritmilor de tip gradient stohastic.
Algoritmul de tip gradient stohastic utilizat în cadrul modelul Adaline
este denumit în literatura de specialitate algoritmul Least Mean Square sau
prescurtat LMS.
În cadrul procesului de adaptare a ponderilor întregul set de antrenare
{x , da}, a = 1, 2, ... , A, va fi prezentat modelului neuronal Adaline de mai
a
15
Dan-Marius Dobrea
𝑘= 0 1 ⋯ 𝐴−1 𝐴 𝐴 + 1 ⋯ 2𝐴 − 1 ⋯ 8𝐴 ⋯ 9𝐴 − 1
𝑖𝑛𝑡𝑟𝑎𝑟𝑒 𝑥 𝑥 ⋯ 𝑥 𝑥 𝑥 ⋯ 𝑥 ⋯ 𝑥 ⋯ 𝑥
𝑑𝑜𝑟𝑖𝑡 𝑑 𝑑 ⋯ 𝑑 𝑑 𝑑 ⋯ 𝑑 ⋯ 𝑑 ⋯ 𝑑
16
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
17
Dan-Marius Dobrea
w1 𝑤 ,
w1 𝑤 = 𝑤
,
w2
w2
A A
Direcția inițială a
(a) (b) gradientului în punctul A
19
Dan-Marius Dobrea
𝑡𝑟 𝑅 = 𝜆 ≥𝜆 (2.24)
Problemă 2.2: Fiind dat un semnal arbitrar (s(t) – discretizat s[n]), acesta se
va aproxima prin intermediul unui alt semnal caracterizat de
relaţia1:
1
Acest mod de compunere a unui semnal din diferite componente spectrale este
caracteristic modalităţii de generare a undelor EEG în creierul uman. Diferitele unde
EEG sunt generate în principal pe baza unor: (a) oscilaţii spontane (caracterizate de
diferite frecvenţele fi), (b) de o serie de componente de autocuplare (situate la frecvenţe
cu valori de tipul 2fi) şi, în final, (c) de o altă serie de componente de intercuplare (fi + fj
şi fi –fj). Componentele de autocuplare, precum şi cele de intercuplare apar în special
20
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
k k k k k k
y n a m n x m n bm n m n clm n lm n d lm n lm n
m 1 m 1 l 1 m 1 l 1 m 1
(2.25)
l m lm
fi – fj : ij [ n] sin 2 mi m j i j (2.28)
fi + fj : [n] sin 2 m m
ij i j i j (2.29)
Să se determine:
(a) Relaţiile matematice de modificare a amplitudinilor fiecărei
componente spectrale utilizând algoritmul LMS ştiind că
funcţia de cost a cărui minim trebuie determinat este:
1 2
J e n (2.30)
2
În relaţia anterioară eroarea instantanee este dată de:
e n s n y n (2.31)
(b) Relaţiile matematice de modificare a fazelor fiecărei
componente spectrale utilizând algoritmul LMS, în aceleaşi
condiţiile ca cele prezentate la punctul anterior.
Rezolvare:
(a) Relaţia ce va fi utilizată în modificarea iterativă a
amplitudinii oscilaţiilor spontane este similară cu (2.12) fiind
dată de:
a j n 1 a j n a j J a j n (2.32)
Derivând funcţia de cost se obţine:
1
e 2 n
a j n a j
2
a j n 1
a j n (2.33)
y n
a j n a j en
a j n
În final se obţine:
a j n 1 a j n a j en x j n (2.34)
În mod similar pentru amplitudinile componentelor de
autocuplare cât şi pentru cele de intercupare se obţine:
bj n 1 bj n bj en j n (2.35)
22
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
Aşa după cum s-a menţionat mai sus, funcţia de coerenţă a fost cea
utilizată pentru a determina oscilaţiile spontane specifice utilizate apoi a
priori în cadrul modelului AAPPM. Pentru a calcula funcţia de coerenţă am
împărţit fiecare din cele două serii de timp analizate (de lungime P) în
segmente ce se suprapuneau; astfel au fost obţinute L segmente, fiecare de
lungime T, pentru fiecare serie de timp în parte. În continuare s-a aplicat
transformata Fourier fiecărui segment obţinut.
lT lT
FxT ( , l )
(l 1)T
x(t )e it dt e
t (l 1)T
it
x(t ) (2.38)
^ 2 f xy ( )
Rxy ( ) ^ ^
(2.40)
f xx ( ) f yy ( )
2
k ( mi m )
(2.42)
i 1 2
Pentru cei k estimatori ai coherency, mi, am estimat media comună prin
(2.41) şi am calculat statistica cu (2.42) care în cazul ipotezei nule este
distribuită aproximativ ca χ2 cu (k-1) grade de libertate. Calculul ecuației
(2.42) a fost făcut pentru fiecare frecvenţă λ din intervalul [0,125] Hz. O
limită de 95% grad de încredere a fost setată la valoarea χ2(α;k-1) iar ipoteza
nulă a fost rejectată dacă valoarea din (2.42) depăşea această limită.
24
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
2
k ^
f xy ( ) L
i 1
^ ^ (2.43)
k ^ k ^
( f xx ( ) L) ( f yy ( ) L)
i 1 i 1
25
Dan-Marius Dobrea
K K
y n a j n x j n sj a j n j n
j 1 j 1
[ ijc1ai na j nij n ijc 2ai na j nij n]
i , j 1, K
i j
x j n sin( n TS 2 f j i )
(2.45)
n sin( n T 2 2 f )
i S
j ij
fi
n sin n T 2 ( f f )
ij S i j ij
ij n sin n TS 2 ( f i f j ) ij
26
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
K L
y n a m n x m n bm n m n
m 1 m 1
M N P Q (2.47)
clm n lm n d lm n lm n
l 1 m 1 l 1 m 1
lm lm
27
Dan-Marius Dobrea
Cantităţile aj, bj, cij and dij sunt scalari pozitivi ce controlează rata de
convergenţă şi asigură stabilitatea modelului. În ceea ce priveşte variabilele
de fază, relaţiile LMS ale lui Windrow aplicate de noi au fost similare cu
cele prezentate mai sus, ele fiind date de (17):
1
e 2 n
j n 1 j n j
2 n en yn (2.54)
j n j n
j j
şi, în final:
j n 1 j n en a j ncos n Ts 2 f j j
j
(2.56)
Din relaţiile de mai sus se poate observa că atunci când numărul
sinusoidelor ce sunt utilizate în modelarea semnalului EEG este mic
complexitatea computaţională a modelului este una foarte mică. Astfel,
pentru a actualiza un parametru estimat nu avem nevoie de mai mult de 4
înmulţiri şi 3 adunări. Cererea cea mai mare în complexitatea
computaţională apare la calcularea funcţiilor sinus şi cosinus. Însă această
problemă poate fi uşor rezolvată folosind o tabelă de tip look-up.
Pentru a încheia prezentarea noului model EEG propus vom spune că cel
mai mare avantaj al AAPPM este dat de caracteristicile sale superioare de
convergenţă. De fapt, modelul este unul capabil să conveargă la soluţia
optimă în nu mai mult de 30 de intervale de eşantionare (vezi Figura 2.4).
Coeficienţii AAPPM calculaţi (amplitudinele și fazele oscilațiilor
spontane și a componentelor de autocuplare și intercuplare) au reprezentat
componentele vectorilor-trăsături utilizaţi ca intrări pentru clasificatorul de
tip RNA, [Dobrea, 2007]. Reţeaua neuronală folosită a fost una de tip
perceptron multistrat (MLP) cu un singur strat ascuns şi antrenată cu
algoritmul backpropagation [Haykin, 1999]. În această lucrare s-a preferat
utilizarea unei reţele neuronale de tip MLP în locul oricărui alt clasificator
superior (cum ar fi cazul clasificatorilor de tip Support Vector Machines
28
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
etc.) şi asta doar pentru că s-a dorit doar testarea noului concept introdus şi
a performanţelor sale în comparaţie cu alte tehnici de extragere de trăsături
deja implementate şi raportate în literatură şi nu puterea sistemelor de
clasificare.
Frecvențele oscilaţiilor
spontane [Hz] Eroarea de antrenare [epoci]
2.3.3. Rezultate.
30
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
31
Dan-Marius Dobrea
Figura 2.6. Scăderea erorii în setul de antrenare (curba cea mai de jos –
roșu) şi în cel de crosvalidare (curba superioară - albastru)
33
Dan-Marius Dobrea
34
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
35
Dan-Marius Dobrea
funcţia de activare f este o funcţie de tip semn (hard limited) definită prin
relaţia:
1 dacă x 0
f x (3.2)
1 dacă x 0
Această funcţie de activare este liniară pe porțiuni și discontinuă în
punctul 0. Funcția caracterizată de relația (3.2) poartă numele de funcţie
semn sau comparator bipolar.
Pentru utilizarea unei funcții semn în cadrul modelului neuronal M-P,
(3.2), decizia aparteneţei unui element la o clasă sau alta este una de tip crisp
– elementul poat sau nu să aparțină clasei respective.
Din relația (3.2) observăm că un astfel de sistem, realizat cu ajutorul
unui neuron de tipul M-P, este capabil să separe doar elementele
caracterizate de două clase. Pentru prima clasă răspunsul structurii
neuronale va fi de exemplu +1, iar pentru cea de a doua clasă vom avea
valoarea -1. Acesta este un prim dezavantaj al acestei structuri neoronale:
capacitatea de a clasifica elemnte aparținân doar la două clase.
În concluzie, elementul de procesare M-P este compus din:
elementul liniar adaptiv (combinatorul liniar), cunoscut sub
numele de neuronul Adaline (Adaptive Linear Element), şi
o funcţie neliniară.
În continuare vom studia şi vom înţelege capacitatea neuronului M-P
de a recunoaşte, de a clasifica diferiţii vectori de trăsături. Din punct de
vedere al teoriei clasificatorilor, relaţia (3.1) este generatoarea unei singure
funcţii discriminant [Dobrea, 2009], dată de relaţia:
d
g x[ k ] w1 [ k ] x1 [ k ] ... w d [ k ] x d [ k ] b w [k ]x [k ] b
i i (3.3)
i 1
36
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
g>0
50 3
2
25 1
-3 -2 00 0
x1
-1 1 2 3
-25 -1
-2
-50
-3
-75 -b/|w|
g<0 -100
37
Dan-Marius Dobrea
2
Distanţa dintre un punct de coordonate (x0, y0) şi o dreaptă de ecuaţie a x + b y + c = 0
este:
ax by0 c
d 0
a 2 b2
38
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
b
d (3.10)
w 1
2
w 22
Datorită formei şi a semnificaţiei generate de relaţia (3.10) termenul b
este cunoscut în literatura de specialitate drept deplasare (bias în engleză)
sau distanța față de origine a suprafeței de decizie.
x2 x2
1
0.5
x1 0.5 1 x1
0.5 1 - 0.5
-0.5 -0.5
-1
(a) (b)
x2
x2
1 1
0.5 -0.5
- 0.5 0.5 x1 - x1
-1 1 -0.5 0.
- 0.5 -0.5
(c) -1 (d)
40
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
f x tanh x (3.13)
x
f x (3.14)
1 x
3
aceasta funcţie este una monoton crescătoare având o formă de tip S
41
Dan-Marius Dobrea
valorilor de ieşire. Pentru funcţia logistică domeniul este cuprins între [0, 1]
în timp ce pentru funcţia tangent hiperbolică între [-1, 1].
=4
=1
= 0.25
Figura 3.4. Alte tipuri de funcții de activare: (a) ReLU și (b) Gausiană
42
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
f x max 0 , x (3.15)
f x ln 1 exp x (3.16)
f x exp x
2
(3.17)
Relațiile (3.15) și (3.16) sunt reprezentate grafic în Figura 3.4(a) și sunt
utilizate în special în rețelele neuronale cu structură adâncă. Relția (3.15)
prezintă funcția de activare semi-liniară, ReLU (Rectified Linear Unit)
utilizată în majoritatea rețelelor profunde, în timp ce (3.16) este aproximarea
ei continuă, cunoscută sub numele de funcția SoftPlus.
Aceste neliniarități sunt doar unele din cele mai importante care există
– dar există multe altele. La sfarșit ne putem pune o întrebare foarte legitimă:
“Pe care dintre acestea să le utilizez în problema mea?”.
În literatura de specialutate există dovezi care susțin faptul că funcțiile
de transfer antisimetrice4 permit algoritmului de retropropagare a erorii să
conveargă mai repid. O astfel de funcție este funcția tangent hiperbolică. De
asemenea, există dovezi practice care susțin utilizarea unei neliniarități
SoftPlus. Utilizând o astfel de neliniaritate o RNA de tip perceptron
multistrat poate clasifica corect distribuții spațiale precum cea din problema
de tip benchmark a celor două spirale îmbinate. Anterior, fără a utiliza o
astfel de neliniaritate, o astfel de RNA nu putea clasifica corect o astfel de
distribuție. În schimb rețelele neuronale de tip RBF cu neliniarități Gauss-
iene pot rezolva ușor problema.
4
O funcție antisimetrică satisface următoarea relație: f(-x) = - f(x).
43
Dan-Marius Dobrea
– acum pot exista multiple minime [Principe, 2000], vezi Figura 3.5. Deci,
suprafaţa de eroare poate avea acum mai multe minime, din care numai unul
dintre este minimul global, restul fiind minime locale.
(w)
minim
minim local 2
local 1 minim
global
w
wmin.1 wmax.1 wopt. wmax.2 wmin.2
Figura 3.5. Suprafaţa de performanţă
0 10
-15 -10 -5 15
0 5 10 15
w1
Zonă de minim global
44
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
46
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
𝑓(𝑐 |𝑥)𝑃(𝑐 )
𝑃(𝑐 |𝑥) = (3.18)
𝑓(𝑐 |𝑥)𝑃(𝑐 ) + 𝑓(𝑐 |𝑥)𝑃(𝑐 )
Pentru situația noastră particulară, în relația (3.18) indexul i poate lua doar
valorile 1 și 2, iar c1 şi c2 reprezintă cele două clase. Din punct de vedere
matematic se poate arăta ușor că:
P c1 x f log g x
1
(3.19)
1 exp g x
47
Dan-Marius Dobrea
48
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
1 1
𝐽= 𝜀 = (𝑑 − 𝑦 ) (3.23)
𝐴 𝐴
1 1
𝐽= 𝜀 = (𝑑 − 𝑦 ) (3.24)
2𝐴 2𝐴
În relaţia (3.23):
este eroarea instantanee a clasificării - egală cu diferenţa între
valoarea dorită a ieşirii, dn, şi ieşirea reală a neuronului yn obținută
în urma aplicării vectorului de intrare xn;
n este un index pe întreaga mulţime a vectorilor de trăsături – avem
astfel o mulțime de A vectori de trăsături în cadrul setului de
antrenare al rețelei.
Scopul oricărui clasificator neuronal este de a minimiza această funcţie
de cost (de a obține valoarea minimă posibilă) prin modificarea ponderilor
și a bias-ului reţelei (a parametrilor rețelei). Căutarea vectorului optim de
ponderi pentru a minimiza un anumit criteriu este în esenţă ideea de bază a
oricărui algoritm de adaptare. Aceeași idee se regăsește la orice altă
structură neuronală: trebuie identificați vectorul de pondere optim care
minimizează eroarea sistemului.
x2
Clasa 2
Clasa 1 x1
51
Dan-Marius Dobrea
52
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
{x1, x2}
x1
g(x1, x2)=0
{w1, w2}
53
Dan-Marius Dobrea
În acest caz vectorial, produsul din relaţia (3.33), w1 x1 + w2 x2, poate
fi interpretat ca un produs intern a doi vectori [w1, w2]T şi [x1, x2]T. Pentru a
satisface g(x1, x2) = 0, vectorii w şi g trebuie să fie perpendiculari deoarece
produsul lor intern este zero. În concluzie suprafaţa de decizie g(x1, x2) = 0
trebuie să fie perpendiculară pe vectorul ponderilor w , vezi Figura 3.8.
Cum ponderile neuronului sunt coeficienţii funcţiei discriminant rezultă că
ponderile indică direcţia normală a suprafeţei de separaţie în spaţiul de
intrare.
În plus, întotdeauna vectorul w va fi situat în semiplanul în care
răspunsul neuronului M-P va fi +1. Pentru a verifica acest lucru
particularizăm funcţia discriminant, g(x1, x2), pentru punctul extrem al
acestui vector {w1, w2}, obţinând:
54
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
5 {10, 5}
-10 -5 5 10
x1
-5
{5, -10}
-10
55
Dan-Marius Dobrea
x1
S2
S1
(a)
x2
S3
x1
S1
(b)
Figura 3.10. Modalitatea de infuenţare a suprafeţei de decizie de un
elemnt clasificat incorect: (a) aparţinând clasei asociată cu valoarea +1,
respectiv, (b) aparţinând clasei asociată de clasificator cu valoarea -1
57
Dan-Marius Dobrea
58
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
59
Dan-Marius Dobrea
⎛ ⎞
𝑦[𝑘] = 𝑓 ⎜ 𝑤 [𝑘]𝑥 [𝑘] + 𝑏 ⎟ (3.42)
⎝ ⎠
Derivata erorii instantanne ne va duce din aproape în aproape la derivata
funcției f. Simplificând și presupunând existența unei funcţii y = f(x), dacă
dorim calcularea derivatei y/x5 vom obține:
y y f
(3.43)
x f x
5
Semnificația fizică a derivatei y/x este de a evidenția cum se reflectă o schimbare de
mică amplitudine în intrare, x, în valoarea ieșirii y. Deci, cât de sensibilă este variabila
dependentă y la schimbările variabilei independente x. În concluzie, acest parametru
poate fi numit sensibilitatea ieşirii la o variaţie a intrării.
60
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
𝜕𝜉 𝜕𝜀 𝜕𝜀 𝜕𝑦[𝑘] 𝜕
≅ = ∙ ∙ 𝑔(𝜕𝑤 [𝑘]) =
𝜕𝑤 [𝑘] 𝜕𝑤 [𝑘] 𝜕𝑦[𝑘] 𝜕𝑔 𝜕𝑤 [𝑘] (3.44)
−(𝑑 [𝑘] − 𝑦[𝑘])𝑓 (𝑔)𝑥 [𝑘] = −𝜀 𝑓 (𝑔)𝑥 [𝑘]
De aici utilizând gradientul descendent pe suprafaţa de eroare (deci relația
fundamentală (3.40)) obținem:
61
Dan-Marius Dobrea
1
g 1 y2
ftanh
2
(3.47)
62
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
4. Perceptronul
Unul din dezavantajele majore ale neuronului de tip M-P este dat de
incapacitatea acestuia de a discrimina mai mult de două clase. Dar în lumea
reală există foarte multe situații care necesită o abordare mai generală a
problemelor de clasificare, astfel încât un clasificator să aibă posibilitatea
de a discrimina un număr mult mai mare de clase – de exemplu, problema
clasificării simbolurilor alfabetului latin. Pentru a atinge acest scop, trebuie
să extindem ideea unui singur neuron în direcția includerii unui strat de M
elemente de procesare M-P puse în paralel și care să fie complet conectate.
Într-o astfel de structură, fiecare neuron va avea propria funcţie
discriminant, în spaţiul d-dimensional de intrare, iar aceasta va întoarce o
valoare maximă pentru o parte a elementelor spațiului de intrare și valori
scăzute pentru restul elementelor. Deci, avantajul de a avea M neuroni
cuplați în paralele este dat de abilitatea de a determina fiecare neuron să
răspundă numai de o anumită zonă a spaţiului, vezi și Figura 4.2. Prin
intermediul funcției discriminant, fiecare neuron în parte va decide dacă
vectorul de trăsături, prezentat la intrarea acestui sistem de clasificare (vezi
Figura 4.1), este sau nu în clasa caracterizată de această funcţie discriminant
specifică.
Perceptronul, denumit adeseori perceptronl lui Rosenblatt, este un
sistem care a fost utilizat inițial în recunoaşterea de paternuri vizuale, în
cadrul problemelor de recunoaştere a diferitelor caractere (OCR - optical
character recognition). Perceptronl a fost descoperit la sfârșitul anilor 1950,
mai exact în 1957 de către Frank Rosenblatt [Rosenblatt, 1958].
Din cele prezentate până acum putem concluziona că perceptronul este
o reţea neuronală formată dintr-un singur strat de neuroni artificiali conectaţi
complet prin intermediul ponderilor la intrările sistemului, Figura 4.1.
Perceptronul stă la baza tutror arhitecturilor mult mai complexe, ce presupun
63
Dan-Marius Dobrea
Strat de
intrare Strat de
x1 ieșire
1 y1
x2
2 y2
M yM
xd
Figura 4.1. Topologia unei RNA de tip perceptronul cu d intrări şi M
ieşiri
64
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
S31 R1 S14
R3 C1 R4
C3
S21 C4
R2
C2
S32
S24
Figura 4.2. Posibile suprafeţele de decizie ale unui perceptron
65
Dan-Marius Dobrea
6 !
Combinații de M funcții discriminant luate câte 2 – 𝐶 (𝐶 = ( )! !
)
66
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
1
𝐸 = 𝑑 − 𝑦 [𝑘] (4.5)
2
cu:
𝑦 [𝑘] = 𝑓 𝑔 𝑤 [𝑘] (4.6)
unde:
𝜕𝐸 𝜕𝐸 𝜕𝑦 [𝑘] 𝜕𝑦
= 𝑔 𝑤 [𝑘] =
𝜕𝑤 [𝑘] 𝜕𝑦 [𝑘] 𝜕𝑔 𝜕𝑤 [𝑘]
(4.9)
= − 𝑑 − 𝑦 [𝑘] 𝑓 𝑔 𝑥 =
= −𝜀 𝑓 𝑔 𝑥
68
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
din nou eroare zero de clasificare – dacă este necesar puteți utiliza
mai multe epoci de antrenare. Ce concluzie puteți trage acum?
69
Dan-Marius Dobrea
x2 Hiperplan optim
Vectori suport
Vector suport
x1
Figura 4.4. După cum se vede din toate hiperplanele posibile care separă
setul de date (deoarece reprezentarea este 2D, acest hiperplan este o
dreaptă), cel optimal este acela care trece la jumătatea distanţei dintre
eşantioanele care definesc frontierele celor două clase și care simultan
maximizează distanța dintre eșantioanele de frontieră și el însuși.
Problema pe care o avem acum este aceea de a găsi un algoritm care să
determine acest hiperplan optim. Într-o altă abordare, după cum se poate
observa și din Figura 4.4, primul pas ar fi să găsim acele elemente optime
(vectori de trăsături) care se regăsesc pe frontiera claselor (numiţi şi vectori
suport), definind-o, iar ulterior să plasăm funcţia discriminant la mijlocul
distanţei dintre ele.
72
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
În relația (4.12) <> este produsul intern, iar A este numărul de eşantioane
care formează setul de antrenare (S) – S = {(x1, d1), (x2, d2), …, (xA, dA)} .
Coeficienții i sunt un set de multiplicatori ce cuantizează influența fiecărui
vector de trăsături de intrare asupra ponderilor – mai exact, acest coeficient,
este direct proporțional nu numărul epocilor în care eșantionul
corespunzător a fost clasificat în mod greșit.
Din punctul de vedere al unui algoritm de adaptare, acesta are un set de
parametri, care în cazul primei părți a relației (4.12) sunt ponderile w, pe
care trebuie să le modifice de o așa natură stfel încât o eroare a sistemului
să se diminueze. Analizând cea de a doua parte a relației (4.12) (în care
73
Dan-Marius Dobrea
xi1 w1,1=x11
<xi,x1>
1
xi2 α1
<xi,x2>
2 g(xi)
α2 ∑ Sign y
w2,N=xN2
w1,N=xN1
<xi,xA> αA
A b
wd,N=xNd
xid
+1
Figura 4.5. Perceptronul reprezentat ca o structură dependentă de
setul de date
Primul strat neuronal este fix, având A neuroni. Acest strat are un număr
de neuroni egal cu numărul de eșantioane din setul de antrenare. Ponderile
primului neuron din stratul ascuns sunt tocmai valorile primului vector de
intrare x1 = [𝑥 , 𝑥 , …, 𝑥 ]T din setul de antrenare. La modul cel mai general
ponderile neuronului k din stratul ascuns, vor fi tocmai elementele
vectorului de intrare xk = [𝑥 , 𝑥 , …, 𝑥 ]T din setul de intrare (k ≤ A), deci
vom avea w1,k = 𝑥 , w2,k = 𝑥 , …, wd,k = 𝑥 .
Cel de al doilea neuron de ieșire, după cum se prezintă și în Figura 4.5,
este un neuron tipic de tipul M-P. În această structură neuronală, algoritmul
de adaptare a perceptronului va modifica doar ponderile i și biasul b dar
doar în situația unei clasificări eronate a eșantionului de intrare (dată de o
relație de forma: 𝑑 ∙ 𝑦 = −1) – în conformitate cu relațiile (3.29) și (3.30).
În această situație algoritmul adaptiv devine:
75
Dan-Marius Dobrea
Sistemul de comandă și
Sistemul de control și control – microcontrolerul
interfațare cu motoarele MCF 5213
Senzorul IR plasat
în partea din spate
Trei senzori
frontali
76
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
77
Dan-Marius Dobrea
y0 y1
SS SC SD
b0 b1
MSt. MDr.
+1 +1
w31
(a)
(b)
SS(0) SC(1) SD(2) SSp(3)
SSp
78
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
79
Dan-Marius Dobrea
7
A doua linie de după capul tabelului. Prima linie (capul tabelului) o putem considera
linia 0.
80
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
Datorită simetriei cu următoarea linie din tabel (linia 6) când vom face
calculele pentru această situație și vom dori ca, de această dată, y1 să fie
egală cu 1, prin calcul va rezulta și w31 = 1 – deci, luăm și păstrăm această
pondere la această valoare și pentru situația 5 din tabel. Dar, revenind din
nou la linia 5 acum ne dorim ca y1 = -1, dar din calcul ieșirea neuronului y1,
înaintea linearității de ieșire (a funcție signum) va fi 0 – deci, o valoare pe
care nu ne-o dorim. În această situație modificăm valoarea ponderii w01 la
valoarea negativă -3 (anterior era -2) și observăm, că de această dată,
obținem valoarea de la ieșirea y1 = -1, așa cum ne-am dorit și am precizat
în cazul 5 din Tabelul 4.1.
În mod similar se obține și schimbarea valorii ponderii w20 la -3, de la
valoarea anterioară egală cu -2, atunci când analizăm situația 6 din tabel.
81
Dan-Marius Dobrea
x2 S2 S1
S3 P01 (y = 1) P11 (y = 0)
x1 x2 y
P00 0 0 0
P01 0 1 1
P10 1 0 1 P00 (y = 0)
P11 1 1 0 x1
P10 (y = 1)
(a) (b)
5.1. Introducere
wkj(1) 1 wji(2)
a
x1 1 y1(2)
2
x 2a 2 y2(2)
3
M yM(2)
x da
L
𝑳 𝒅
⎛ (𝟏) (𝟐) ⎞
𝒚𝒊 [𝒌] = 𝒇𝒊 ⎜ 𝒇𝒋 𝒘𝒌𝒋 𝒙𝒌 + 𝒃𝒋 𝒘𝒋𝒊 + 𝒃𝒊 ⎟
(5.1)
𝒋 𝟏 𝒌 𝟏
⎝ 𝒑𝒓𝒊𝒎𝒖𝒍 𝒔𝒕𝒓𝒂𝒕 𝒂𝒔𝒄𝒖𝒏𝒔 ⎠
𝒔𝒕𝒓𝒂𝒕𝒖𝒍 𝒅𝒆 𝒊𝒆ș𝒊𝒓𝒆
84
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
w1 y1
x1 ∑ w5
w2 y
∑
w3 b1
w4 y2 w6
x2 ∑
b3
b2
Figura 5.2. Reţea neuronală de tip perceptron cu un singur strat
ascuns, MLP {2, 2, 1}
(care, la rândul lor, sunt controlate de valorile variabilelor w1, w2, w3, w4, b1
şi b2 din ecuaţia (5.2)). În Figura 5.3 este prezentată doar o situație
particulară de poziționare a suprafețelor de decizie, o altă situație va fi
prezentată în cadrul problemei ce va urma.
Tot din Figura 5.3 trebuie observat ca valoarea bias-ului b3 este
adăugata la rezultatul aferent stratului ascuns. Valoarea bias-ului va dicta
daca valoarile de vârf a lui y sunt pozitive (zonele spațiale pentru care y =
2) sau, daca vârful şi ambele “platouri” (y = 0, conform Figura 5.3(c)) sunt
pozitive, sau, dacă toate aceste regiuni vor avea un răspuns pozitive sau
negativ al ieșirii globale y.
Deci, putem concluziona că, rolul bias-ului pentru stratul de ieşire este
unul substanţial diferit de ceea ce se înţelege ca fiind un simplu control
asupra ieșirii y – cum este rolul bias-ul la nivelul stratului ascuns. În cazul
stratului de ieșire bias-ul permite diferite tipuri de asociere a tuturor
partiţiilor create de stratul ascuns – vezi Figura 5.4. Ponderile de ieşire
w5 si w6 modifică modul în care se compun ieşirile neuronilor de pe stratul
ascuns – permițându-se astfel și un efect multiplicativ, pe lângă cel aditiv
prezentat anterior.
Ieşirea y Ieşirea y Ieşirea y
x2 x2 x2
y=1 y=1
y=1
y = -1
y = -1
x1 x1 x1
(a) (b) (c)
87
Dan-Marius Dobrea
x1 x2 Out
-1 -1 -1 -
x1 -1 1 1-
Out
x2 1 -1 1-
1 1 -1 -
(a) (b)
x2
(-1, 1) (1, 1)
x1
(-1, -1) (1, -1) (c)
Rezolvare:
(a) Pentru obţinerea unui răspuns egal cu unitatea pentru
anumite elemente ale setului de antrenare şi un răspuns egal
88
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
89
Dan-Marius Dobrea
x2
2
+
- (-1,1) (0, 1) (1, 1)
0
0
x1
(1, -1)
(-1, -1) (0, -1) -
+ S2
S1
Figura 5.6. Spaţiul trăsătrilor şi plasarea suprafeţelor de
decizie a primului strat pentru problema XOR-ului
(-1,1) (1,1)
x1 w1o
w2S1 Out
∑
w1S2 w2o
x2
91
Dan-Marius Dobrea
1.5
1
Out 1
0.5
0 0
x
-1 -0.5
-1.5
-1
-0.5 -1
0
0.5
1
1.5 -1.5
x
93
Dan-Marius Dobrea
94
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
6.1. Introducere
1
1
x1 2 1 y1
2
x2 3 2 y2
3
M yM
xd
L
Strat de intrare K
Strat de ieșire
Straturi ascunse
95
Dan-Marius Dobrea
⎛ ⎞
⎛ ⎞⎟
𝑦 = 𝑓⎜
⎜ 𝑓⎜ 𝑓 (𝑥) ⎟⎟
⎜ ⎟ (6.1)
⎝ ⎠
⎝ ⎠
ș
x2
x1
S7 S8
S5
S2 S9
S3
R1 R2 R3
S4
S1 S10
S6
(a)
S1
S2
S5 R1
S6
x1 S3 y
R2
x2 S4
S7
S8 R3
S9
S10
(b)
-4 -3 -2 -1 1 2 3 4
x1
0
-1
-2
-3
-4
-5
Figura 6.4. Distribuţia elementelor în spaţiul
de trăsături x
Rezolvare:
(a) Pentru rezolvarea acestei probleme există mai multe soluţii.
Una dintre aceste soluţii este prezentată în Figura 6.5.
S2 x2 S3
5
3 S4
2
-2 -1
x1
-4 -3 1 2 3 4
0
-1
-2
S1
-3
-4
-5
S4
Z2
Z1
S1 Z3
(a)
n1 (S1) n5
Clasa ■
n2(S2) n6 (Z1)
x1 Clasa ●
n3 (S3)
x2 n7 (Z2)
n9
Clasa ○
n8 (Z3) (b)
n4 (S4)
5
4
3
2 S3
S2 S4
1
-2 -1 x1
-4 -3 1 2 3 4 Z4
0
Z2
-1
Z5
-2 S1 Z1
-3 Z3
-4 (b)
(a)
n1 (S1)
n7
Clasa ■
n2 (S2) n5 (T1)
x1 n8
n3 (S3) Clasa ●
x2
n9
n4 (S4) n6 (T2)
Clasa ○
(c)
Figura 6.7. (a) Poziţionarea corectă a suprafeţelor de
decizie conformă cu cerinţele problemei, (b) zonele de interes
definite şi (c) arhitectura reţelei neuronale
104
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
S2 x2
E1
E2 E13
E4 E3 E14
E6 E5 A
E8 E7 O E15 x1
E10 E9 E18 E16
E12 E11 E17
S1 E19
S4 E23E22 E21 E20
E24 S3
E25 E26 E27 E28
105
Dan-Marius Dobrea
107
Dan-Marius Dobrea
urilor proprii rezultatul trebuie să fie mai mare sau egal cu zero
iar în exteriorul acestor zone negativ.
Dacă ponderile neuronului n5 sunt ambele egale cu unitatea
iar bias-ul este zero la ieşirea acestuia, dar înaintea funcţiei de
activare, diferitele zone ale spaţiului de trăsături de intrare
primesc valorile prezentate în Figura 6.9(a) încadrate într-un
chenar. Dacă aceste valori sunt trecute prin funcţia neliniară se
observă că zonele ce iau valori egale cu +2 şi 0 vor fi asociate
aceleiaşi clase caracterizată de o valoare egală cu +1 a neuronului
n5. Deci, această asociere este una greşită. Dacă în schimb luăm
o valoare egală cu -1 a bias-ului neuronului n5 valorile obţinute
sunt cele subliniate din Figura 6.9(a). De această dată prin
trecerea acestor valori prin funcţia neliniară se observă o
partiţionare corectă a spaţiului de intrare.
-2
S3
-3
S2 S4
-1
0
-1
+2 +1 0 0
-1
+1 +1 -1
+1 S1
-1 -3 +2
-1 -2 -1
0 +1
(a) +1 -1 (b)
108
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
S3
S2 S4
0
-2
0
+2
0
S1 +2
0 -2 0 0
110
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
stratul anterior. Nu în ultimul rând, pot exista neuroni redundanţi care crează
mai multe posibile soluţii, mai multe potențiale partiționări corecte a
spațiului de intrare.
M yM(3) dMa
xda
L
Strat de intrare K
Strat de ieșire
Straturi ascunse
Din aceste relații, se vor putea deduce ulterior foarte ușor toate relațiile
necesare adapării structurilor neuronale mai simple (de ex. RNA cu un
singur strat ascuns sau perceptronul).
Conform notațiilor din Figura 6.11 avem că ieșirea neuronului j din
stratul i al RNA este egală cu:
112
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
() () ( )
𝑦 [𝑘] = 𝑓 𝑤 [𝑘] ∙ 𝑦 [𝑘] (6.2)
r wrj(i)
j
113
Dan-Marius Dobrea
1
𝐸 = 𝑑 [𝑘] − 𝑦 [𝑘] (6.3)
2
[ ]
( ) ⎛ ( ) ⎞
𝑦 [𝑘] = 𝑓 ⎜ 𝑤 [𝑘] ∙ 𝑦 ( ) [𝑘]⎟ (6.7)
⎝ [ ] ⎠
De aici avem:
114
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
( )
𝜕𝑦 [𝑘] 𝜕𝑦
( )
[𝑘] 𝜕 ∑ 𝑤 [𝑘] ∙ 𝑦 ( ) [𝑘]
= = 𝑓 𝑔 [𝑘]
𝜕𝑤
( )
[𝑘] 𝜕𝑤
( )
[𝑘] 𝜕𝑤
( )
[𝑘] (6.8)
( )
= 𝑓 𝑔 [𝑘] 𝑦 [𝑘]
Din relațiile (6.5), (6.6) și (6.8) rezultă că ponderea wij(3) dintre ieșirea j și
neuronul i din stratul ascuns 2 (vezi Figura 6.11) se calculează cu
următoarea relație generică:
( )
𝑤 [𝑘 + 1] = 𝑤 ( ) [𝑘] + 𝜂 𝑑 [𝑘] − 𝑦 [𝑘] ∙ 𝑓′ 𝑔𝑗 [𝑘] ∙ 𝑦𝑖(2) [𝑘] (6.9)
și
( ) 1
𝑤 [𝑘 + 1] = 𝑤 ( ) [𝑘] + 𝜂 𝑑 [𝑘] − 𝑦 [𝑘] ∙ ( )
1 − 𝑦 [𝑘] ∙ 𝑦 [𝑘]
2 (6.12)
[ ]
[ ]
115
Dan-Marius Dobrea
( ) ⎛ ( ) ⎞ (6.15)
𝑦 [𝑘] = 𝑦 [𝑘] = 𝑓 ⎜ 𝑤 [𝑘] ∙ 𝑦 ( ) [𝑘]⎟
⎝ [ ] ⎠
și
( ) ⎛ ( ) ⎞
𝑦 [𝑘] = 𝑓 ⎜ 𝑤 [𝑘] ∙ 𝑦 ( ) [𝑘]⎟ (6.16)
⎝ [ ] ⎠
Stratul Stratul
(1) (2) Stratul
(3)
1
1
1
M
L
K
116
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
𝜕𝐸
( )
=− (𝑑 − 𝑦 [𝑘])𝑓 (𝑔 [𝑘])𝑤 ( ) [𝑘] (6.18)
𝜕𝑦 [𝑘]
Termenul B din relația (6.14) se va calcula conform celor de mai jos:
( ) ( )
𝜕𝑦 [𝑘] 𝜕𝑦 [𝑘] 𝜕𝑔 [𝑘] ( )
( )
= ( )
= 𝑓 𝑔 [𝑘] 𝑦 [𝑘] (6.19)
𝜕𝑤 [𝑘] 𝜕𝑔 [𝑘] 𝜕𝑤 [𝑘]
( ) ( )
(6.20)
+𝜂 𝑓 𝑔 [𝑘] 𝑦 [𝑘] (𝑑 − 𝑦 [𝑘])𝑓 (𝑔 [𝑘])𝑤 [𝑘]
( )
∆𝑤 [𝑘] = 𝜂 𝑓 𝑔 [𝑘] 𝑦 ( ) [𝑘] ( )
(𝑑 − 𝑦 [𝑘])𝑓 (𝑔 [𝑘])𝑤 [𝑘] (6.21)
( )
(6.22)
𝜆 [𝑘] = 𝑓 𝑔 [𝑘] ∙ (𝑑 − 𝑦 [𝑘])𝑓 (𝑔 [𝑘])𝑤 [𝑘]
8
Dacă M(p1(a), p2(a), ..., pn(a)) atunci derivând funcție de variabila a vom obține:
𝜕𝑀 𝜕𝑀 𝜕𝑝 (𝑎)
= ∙
𝜕𝑎 𝜕𝑝 (𝑎) 𝜕𝑎
117
Dan-Marius Dobrea
Stratul
(1) Stratul
Stratul (2) Stratul
(0) (3)
1
1
x1a[k] 1
wij(1) j yj(1)[k]
wsr(3) yr(3)[k] = yr[k]
xia[k] r
wjs(2) s ys(2)[k]
xda[k] M
L
K
Strat de intrare Strat de ieșire
Straturi ascunse
⎛ ⎞
( )
𝑦 [𝑘] = 𝑦 [𝑘] = 𝑓 ⎜ 𝑤
( )
[𝑘] ∙ 𝑦 ( ) [𝑘]⎟ (6.26)
⎝ [ ] ⎠
( ) ⎛ ( ) ⎞
𝑦 [𝑘] = 𝑓 ⎜ 𝑤 [𝑘] ∙ 𝑦 ( ) [𝑘]⎟ (6.27)
⎝ [ ] ⎠
( ) ⎛ ( ) ⎞
𝑦 [𝑘] = 𝑓 ⎜ 𝑤 [𝑘] ∙ 𝑥 [𝑘]⎟ (6.28)
⎝ [ ] ⎠
Aceste trei relații anterioare sunt în directă legătură cu Figura 6.14. De altfel
întreaga demonstrație a relației de adaptare a ponderii wij(1) este susținută și
legată de această reprezentare grafică a RNA.
Deoarece ieșirea yj(1)[k] a neuronului j din primul strat ascuns intervine
în calculul fiecăreia din ieșirile RNA, vom avea:
( )
𝜕𝐸 𝜕𝐸 𝜕𝑦 [𝑘]
( )
= ( ) (6.29)
𝜕𝑤 𝜕𝑦 [𝑘] 𝜕𝑤 ( ) [𝑘]
119
Dan-Marius Dobrea
Continuând dezvoltarea:
( )
(6.35)
∙ (𝑑 [𝑘] − 𝑦 [𝑘])𝑓 (𝑔 [𝑘]) 𝑤 [𝑘] ∙ 𝑓 (𝑔 [𝑘]) ∙ 𝑤 ( ) [𝑘]
În mod similar vom pune relația anterioară sub o altă formă pentru
ușurință, obținem astfel:
( )
𝑤 [𝑘 + 1] = 𝑤 ( ) [𝑘] + 𝜂 ∙ 𝜌 [𝑘] ∙ 𝑥 [𝑘]
( )
(6.36)
𝜌 [𝑘] = 𝑓 𝑔 [𝑘] ∙ 𝑒𝑎𝑟 [𝑘]𝑓 (𝑔 [𝑘]) 𝑤 [𝑘] ∙ 𝑓 (𝑔 [𝑘]) ∙ 𝑤 ( ) [𝑘]
120
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
( )
∙ 𝑤 [𝑘] ∙ 𝑦 ( ) [𝑘] ∙ 1 − 𝑦 ( ) [𝑘] ∙ 𝑤 ( ) [𝑘]
( [ ])
și
( ) ( ) 1 ( )
𝑤 [𝑘 + 1] =𝑤 [𝑘] + 𝜂 ∙ ∙ 1 − 𝑦 [𝑘] ∙ 𝑥 [𝑘] ∙
2
[ ]
⎛ 1
∙ ⎜(𝑑 [𝑘] − 𝑦 [𝑘]) ∙ 2 ∙ (1 − 𝑦 [𝑘]) ∙ (6.38)
( [ ])
⎝
( ) 1 ( ) ( )
∙ 𝑤 [𝑘] ∙ ∙ 1 − 𝑦 [𝑘] ∙𝑤 [𝑘]
2
( [ ])
M yM(2) M yM
xd xd
L
( ) ( ) ( )
𝑦 = 𝑓( )
𝑦 𝑤 (6.39)
( ) ( )
𝑦 = 𝑓( )
𝑥𝑤 (6.40)
( ) ( ) ( )
𝑦 = 𝑓( )
𝑓( )
𝑥𝑤 𝑤 (6.41)
( ) ( ) ( ) ( ) ( )
𝑦 = 𝑓( )
𝑥𝑤 𝑤 = 𝑓( )
𝑥 𝑤 𝑤 (6.42)
( ) ( )
𝑤 = 𝑤 𝑤 (6.43)
iar ieșirea:
𝑦 = 𝑓( )
𝑥𝑤 (6.44)
(𝒊 𝟏)
𝒚𝒊 (𝒈𝒊 ) 1.0
0.8
0.6
0.4
0.2 𝒈𝒊
-5 -4 -3 -2 -1 1 2 3 4 5
-0.2
( )
-0.4
0.5 𝑦 ∙ 𝑓( )
(a) -0.6 0.4
-0.8
0.3
-1.0
0.2
0.5 -0.3
0.4
-0.4
0.3
-0.5
0.2
(b) 0.1 𝒈𝒋
-5 -4 -3 -2 -1 0 1 2 3 4 5
124
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
125
Dan-Marius Dobrea
( )
𝜆 [𝑘] = 𝑓 𝑔 [𝑘] ∙ (𝑑 − 𝑦 [𝑘])𝑓 (𝑔 [𝑘])𝑤 [𝑘] (6.47)
( )
𝜌 [𝑘] = 𝑓 𝑔 [𝑘] ∙ 𝑒𝑎𝑟 [𝑘]𝑓 (𝑔 [𝑘]) 𝑤 [𝑘] ∙ 𝑓 (𝑔 [𝑘]) ∙ 𝑤 ( ) [𝑘] (6.48)
( )
𝑤 [𝑘 + 1] = 𝑤 ( ) [𝑘] + 𝜂 ∙ 𝜆 [𝑘] ∙ 𝑦 ( ) [𝑘] (6.50)
( )
𝑤 [𝑘 + 1] = 𝑤 ( ) [𝑘] + 𝜂 ∙ 𝛿 [𝑘] ∙ 𝑦 ( ) [𝑘] (6.51)
Mai mult dorim ca toţi neuronii să înveţe la aceiaşi rată, adică toate
ponderile să ajungă la valorile lor optime aproximativ în același moment de
timp. După cum am prezentat anterior neuronii aflaţi în regiunea liniară a
caracteristicii învaţă mai repede decât cei aflaţi în regiunea saturată.
De exemplu, într-o abordare simplificată ponderile pot fi inițializate în
mod aleatoriu cu o funcție densitate de probabilitate uniformă, în intervalul:
𝑤 ∈ [−𝑟, +𝑟 ] (6.52)
Dacă valoarea r ar fi destul de mică atunci activarea unui anumit neuron (gi)
ar fi și ea de valoare redusă și mai mult ne-am plasa în zona liniară a funcție
de activare. Dacă valorile iniţiale ale ponderilor sunt prea mari se va obține
un fenomen de saturare a neuronilor.
Dar, putem constata că există o mare diferență atunci când inițializăm
ponderile unui neuron ce are 100 de intrări față de situația unui neuron cu
doar 10 intrări. Acest fapt ne subliniază necesitatea iniţializării ponderilor
ţinând cont de fan-in-ul fiecărui neuron în parte, astfel încât aceştia să
proceseze datele în regiunea liniară a funcție de activare şi, în concluzie, să
înveţe toți la aceiaşi viteză.
Notând cu Fi fan-in-ul fiecărui neuron în parte (deci, numărul de intrări
a fiecărui neuron), o regulă practică ne impune ca valorile ponderilor pentru
un neuron al reţelei să fie distribuite uniform în intervalul [Principe, 2000]:
2.4 2.4
− ,+ (6.53)
𝐹 𝐹
În alte locuri, în literatura de specialitate, se recomandă o distribuite
uniformă a valorilor ponderilor în intervalul [Duda, 2001], [Xavier, 2010]:
1 1
− ,+ (6.54)
𝐹 𝐹
Pentru RNA cu structură adâncă (deep feedforward neural networks) în
literatura de specialitate se recomandă o inițializare a ponderilor unui anumit
127
Dan-Marius Dobrea
128
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
1
𝐸 . [𝑘] = 𝑑 [𝑘] − 𝑦 [𝑘] (6.56)
2
Setul de antrenare
Epoci
9
Generalizare este abilitatea unei reţele de a clasifica corect vectori de trăsături de intrare
care nu au fost utilizați în setul de antrenare.
130
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
132
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
10
Neliniaritatea softmax se va prezenta în detaliu în cadrul subcapitolului 6.5
133
Dan-Marius Dobrea
Aparţinând de drept
11
Ne putem imagina în această situație că RNA este captivă într-un minim local sau,
poate, am suprantrenat structura neuronală
134
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
cea importantă la care ne referim (clasa pozitivă), iar restul claselor sunt cele
negative.
Un alt parametru este precizia clasificării. Precizia reprezintă
probabilitatea ca un exemplu clasificat pozitiv să fie corect clasificat.
Aceasta se calculează cu:
𝐴𝑃
(6.62)
𝐴𝑃 + 𝐹𝑃
Dacă revenim la problema de clasificare a subiecților care au sindromul
Down, precizia ne furnizează o mărime direct proporțională cu pacienții ce
au sindrom Down și care chiar sunt bolnavi. Presupunând că avem din nou
datele de mai sus și că sistemul de clasificare greșește în totalitate,
clasificând toți subiecții drept subiecți cu sindrom Down, vom obține o
precizie a clasificării de 2.9%, deci foarte scăzută și inacceptabilă pentru un
sistem real de clasificare.
Senzitivitatea sau rapelul este numărul de exemple pozitive corect
clasificate supra numărul total de exemple pozitive. Reprezintă
probabilitatea ca un exemplu pozitiv să fie identificat corect de către un
clasificator.
𝐴𝑃
(6.63)
𝐴𝑃 + 𝐹𝑁
Calculând sozitivitatea, în aceleași condiții ca în exemplul anterior (sistemul
de clasificare greșește în totalitate, clasificând toți subiecții drept subiecți cu
sindrom Down), vom obține o senzitivitate de 100%.
Dacă dorim ca să minimizăm elementele fals negative (FN) ca în
Aplicația 6.2 atunci vom dori ca senzitivitatea să fie apropiată de 100%, în
timp ce dacă dorim să minimizăm vectorii de trăsături de tipul falși pozitivi
(FP), precum în Aplicația 6.3, vom dori ca precizia clasificării să fie
maximă (cât mai apropiată de 100%).
Un ultim parametru, utilizat pe larg în cadrul clasificatorilor, este
specificitatea. Specificitatea se definește ca proporţia actuală de perechi
negative (nu are afecțiunea sau email-ul nu este spam pe drept) care sunt
corect identificate. Specificitatea este dată de relația:
𝐴𝑁
(6.64)
𝐴𝑁 + 𝐹𝑃
Reluând problema subiecților care au sindromul Down dacă sistemul de
clasificare greșește în totalitate, clasificând toți subiecții drept subiecți cu
sindrom Down, atunci specifictatea va fi zero.
137
Dan-Marius Dobrea
139
Dan-Marius Dobrea
J w1, w2
1
4
1 Out 1, 1, w1, w2 2 1 Out 1, 1, w1, w2 2
(6.70)
1 Out 1, 1, w1, w2 2 1 Out 1, 1, w1, w2 2
0 10
-15 -10 -5 15
0 5 10 15
w1
Zonă de minim global
(a).
w2
15
10
-15 -10 -5 5 10 15 w1
-5
-10
-15
(b).
141
Dan-Marius Dobrea
Din punct de vedere practic, s-a dovedit că într-o mare parte din
problemele de clasificare o rețea neuronală de tip perceptron multistrat
(MLP), învăță mai repede dacă funcția de activare folosită de neuronii RNA
este o funcție asimetrică (antisimetrică):
𝑓(−𝑥) = −𝑓(𝑥) (6.71)
De exemplu, o astfel de fucție este funcția tangent hiperbolică.
dependentă direct de forma suprafeţei de eroare. Dacă n0 este prea mic, faza
de căutare va fi scurtă şi procesul de învăţare se poate opri prematur într-o
soluţie neoptimală (de exemplu sistemul este “prins” într-un minim local).
În situaţia în care n0 este prea mare sistemul nu petrece prea mult timp în
faza de învăţare, oscilând în jurul soluţiei optime sau între 2 soluții
suboptimnale.
O altă metodă, foarte populară în domeniul RNA, utilizează o scădere
exponențială a ratei de adaptare funcție de numărul epocii de antrenare. O
potențială relație utilizată în această modelare a variației ratei de învățare
este următoarea:
𝜂(𝑛) = 𝜂 ∙ 𝑒𝑥𝑝(−𝑘 ∙ 𝑛) (6.73)
(6.61)
(6.62)
(6.60)
𝜂(𝑛) = 𝜂 ∙ 𝑑𝑟 (6.74)
Pentru toate reprezentările grafice din Figura 6.20 rata de adaptare
inițială a fost aleasă egală cu 1.
144
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
Cu cât facem mai mic pasul de învăţare, , cu atât mai mici vor fi
posibilele modificări ale vectorilor de ponderi a unui strat neuronal de la o
iteraţie la alta. În acest mod se obţine o traiectorie mai lină în spaţiul de
eroare, vezi Figura 2.3(a). Costul pe care trebuie sa-l plătim va fi dat de o
viteză de adaptare scăzută. În cazul în care alegem o valoare mai mare pentru
pasul de adaptare, pentru a mări viteza învăţării, obţinem schimbări mari de
amplitudine ale vectorilor de ponderi, vezi Figura 2.3(b), şi este posibil ca
reţeaua să devină instabilă și să nu poată converge la un minim local sau
global.
Pentru creşterea vitezei de învăţare şi, simultan, stabilizarea
convergenţei reţelei neuronale artificiale se poate introduce suplimentar un
termen de tip moment [Rumelhart, 1986]. În acest mod ecuaţia de
modificare a ponderilor devine:
𝜕𝐽(𝑛)
𝑤 (𝑛 + 1) = 𝑤 (𝑛) −𝜂 + 𝛼 𝑤 (𝑛) − 𝑤 (𝑛 − 1)
𝑤 (𝑛) (6.75)
( )
cu
𝜕𝐽(𝑛)
𝛥𝑤 (𝑛) = −𝜂 + 𝛼𝛥𝑤 (𝑛 − 1) (6.76)
𝑤 (𝑛)
145
Dan-Marius Dobrea
𝜕𝐽(𝑛 − 1)
𝛥𝑤 (𝑛 − 1) = −𝜂 + 𝛼𝛥𝑤 (𝑛 − 2) (6.78)
𝑤 (𝑛 − 1)
folosindu-ne de relaţiile (6.77) şi (6.78) anterioare obţinem:
𝜕𝐽(𝑛 − 1) 𝜕𝐽(𝑛)
𝛥𝑤 (𝑛) = 𝛼 𝛥𝑤 (𝑛 − 2) − 𝛼𝜂 −𝜂 (6.79)
𝜕𝑤 (𝑛 − 1) 𝑤 (𝑛)
continuând dezvoltarea relaţiei (6.79), vom obţine:
( )
𝛥𝑤 (𝑛) = 𝛼 𝛥𝑤 (0) − 𝜂 ∑ 𝛼 ( )
≅
( )
(6.80)
≅ −𝜂 ∑ 𝛼 ( )
147
Dan-Marius Dobrea
𝑃(𝑥|𝐶 ) ∙ 𝑃(𝐶 )
𝑃(𝐶 |𝑥) = (6.81)
∑ 𝑃(𝑥|𝐶 ) ∙ 𝑃(𝐶 )
pentru a fi optimal. Într-o astfel de situație, conform criteriului lui Bayes,
elemental necunoscut va aparține clasei Ci pentru care 𝑃(𝐶 |𝑥) este maxim.
Știind că o RNA de tip MLP este un aproximator universal, după cum
s-a prezentat anterior, sunt șanse mari ca rețeaua MLP să fie și un clasificator
universal – dar, acest lucru trebuie demonstrat.
O condiție minimă, elementară ca o RNA de tipul MLP să producă la
ieşiri estimări directe ale probabilităţilor posterioare, date de (6.81) – adică,
𝑦 (𝑥) = 𝑃(𝐶 |𝑥), este aceea ca valoarea fiecărei ieşiri să fie între 0 şi 1 iar
suma tuturor ieşirilor să fie egală cu 1 pentru orice vector de trăsături x de
intrare. O potențială abordare este aceea de a alege funcțiile de activare
exponențiale, în locul celor sigmoidale:
( )
𝑦 (𝑥) = 𝑓 𝑔 (𝑥) = 𝑒 (6.82)
148
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
= [𝑦 (𝑥, 𝑤) − 1] + [𝑦 (𝑥, 𝑤) − 0] =
∈ ∉ (6.85)
𝑛 1 𝐴−𝑛 1
=𝐴 ∙ [𝑦 (𝑥, 𝑤) − 1] + ∙ 𝑦 (𝑥, 𝑤)
𝐴 𝑛 𝐴 𝐴−𝑛
∈ ∉
1
𝐸{𝑔(𝑥)} = 𝑔(𝑎 ) (6.86)
𝐾
și
149
Dan-Marius Dobrea
𝑃 𝐶 𝑦 (𝑋, 𝑤) 𝑝 𝑋|𝐶 𝑑𝑋
+ 𝑦 (𝑋, 𝑤) 𝑃 𝐶 𝑝 𝑋|𝐶 𝑑𝑋
,
Pentru aducerea relației (6.90) sub o formă din care să putem trage
concluziile necesare dovedirii că o rețea de tipul MLP este un clasificator
optimal, vom dezvolta în continuare ultima integrală din relația (6.90), cea
notată cu A. Astfel avem:
150
Tehnici de inteligență computațională. Aplicații în electronică și biomedicină
152