Professional Documents
Culture Documents
(1/2)
x1
x
2
x
....
xn
xi = descriptorul i.
Varianta: x = ( x1, x2,... , xn )T.
Potrivire ("matching")
fiecare clasa ~ vector de forma prototip
=> forma necunoscuta asignata clasei celei mai apropiate (pe baza
unei metrici predefinite).
1
mj
Nj
j 1,2,..., W
j = 1, 2, .. , W
j = 1, 2, ... , W
j = 1, 2, ... , 14
c( x, y ) f ( s, t ) w( x s, y t )
s
Aplicatie. (a) imaginea f(x, y); (b) w(x, y); (c) coeficientul de corelatie
afisat ca o imagine => valoarea maxima (cea mai luminoasa) ~ cea mai buna
potrivire.
a)
b)
c)
r j (x) Lkj p ( k / x)
k 1
1 W
r j ( x)
Lkj p(x / k ) P ( k )
p(x) k 1
p(x /k) =functia de densitate de probabilitate a formelor din clasa k ;
P(k) = probabilitatea de aparitie a clasei k .
r j (x) Lkj p (x / k ) P ( k )
k 1
calculeaza r1(x), r2(x), ..., rW(x) => x i cu ri(x) minim => pierderea medie
totala minima.
Clasificatorul care minimizeaza pierderea medie totala = clasificator Bayes.
x asignat la clasa i , daca ri(x) < rj(x), pentru j = 1, 2,... , W, j i, adica:
W
L
k 1
ki
p (x / k ) P( k ) Lqj p (x / q ) P ( q )
q 1
pentru toti j , j i. Pierderea pentru o decizie corecta este zero, iar pentru o
decizie incorecta se atribuie o aceeasi valoare > 0 (ex. 1), functia de pierdere
devine:
Lij = 1 ij
unde ij = 1 pentru i = j si ij= 0 pentru i j =>
W
p (x) p (x / i ) P ( i ) p (x) p (x / j ) P ( j )
sau echivalent
p (x / i ) P ( i ) p (x / j ) P ( j )
Observatie: clasificatorul Bayes pentru o functie de pierdere 0-1 este chiar
calculul functiilor de decizie de forma:
d j (x) p (x / j ) P( j )
j 1,2,...,W
x j cu dj(x) maxim.
Cea mai utilizata forma pentru p(x/j) = functia de densitate de
probabilitate Gaussiana.
d j ( x) p( x / j ) P( j )
(formele sunt scalari, notati cu x).
1
2 j
( xm j )2
2 2j
P( j )
j 1,2
1
p(x / j )
e
n/2
1/ 2
(2 ) | C j |
1
( x m j )T C j 1 ( x m j )
2
1
mj
Nj
Cj
1
Nj
x xT m j m j
x j
d j (x) p (x / j ) P ( j )
Forma exponentiala a densitatii Gaussiene => mai convenabil sa se lucreze cu
logaritmul natural al functiei de decizie:
d j (x) ln[ p (x / j ) P ( j )] ln p (x / j ) ln P ( j )
n
1
1
1
d j (x) ln P ( j ) ln 2 ln | C j | [(x m j ) T C j (x m j )]
2
2
2
(n/2)ln2 acelasi pentru toate clasele => se poate elimina:
1
1
1
T
d j (x) ln P ( j ) ln | C j | [(x m j ) C j (x m j )]
2
2
pentru j = 1, 2,... , W (functiile de decizie Bayes pentru clase de forme
Gaussiene sub conditia unei functii de pierdere 0-1).
1 T 1
d j (x) ln P( j ) x C m j m j C m j
2
T
1 T
d j ( x) x m j m j m j
2
T
Se aplica
ecuatiile:
1
mj
Nj
3
1
m1 1
4
1
x j
1
Cj
Nj
1
1
m 2 3
4
3
3 1 1
1
C1 C 2 1 3 1
16
1 1 3
x x
m jm j
1 T 1
d j (x) ln P ( j ) x C m j m j C m j
2
T
in care
8 4 4
C 1 4 8
4
4 4
8
=> functiile de decizie
d1(x) = 4x1 1.5
d2(x) = -4x1 + 8x2 + 8x3 5.5
Suprafata de separare intre cele doua clase:
d1(x) - d2(x) = 8x1 - 8x2 - 8x3 + 4 = 0
Retele neurale
-clasificatorul de distanta minima complet specificat prin vectorul medie
din fiecare clasa;
-clasificatorul Bayes pentru populatii Gaussiene complet specificat de
vectorul medie si matricea de covarianta din fiecare clasa;
-formele utilizate pentru estimarea acestor parametri = forme de
antrenare;
-set de astfel de forme din fiecare clasa =set de antrenare;
-procesul in care un set de antrenare este utilizat pentru obtinerea
functiilor de decizie = invatare ("learning") sau antrenare ("training").
Retea neurala = multitudine de elemente de calcul neliniare
interconectate (neuroni).
Retelele utilizate pentru dezvoltarea adaptiva a coeficientilor functiilor
de decizie prin prezentarea succesiva a seturilor de forme de antrenare.
d (x) wi xi wn 1
i 1
~ functie liniara de decizie in raport cu vectorii de forme (wi , i = 1, 2, ... ,n, n+1
ponderi):
-d(x) > 0 => elementul de prag comuta la iesire pe +1 (~ x 1);
- d(x) < 0 => elementul de prag comuta la iesire pe -1 (~ x 2);
- d(x) = 0 => x suprafata de separatie 1 si 2.
(o singura functie de decizie pentru doua clase).
Granita de decizie:
n
d (x) wi xi wn 1 0
i 1
w1 x1 w2 x 2 ... wn x n wn 1 0
hiperplan in spatiul n-dimensional de forme:
-w1 wn : orientarea hiperplanului;
-wn+1 : departarea fata de origine;
-wn+1 = 0 hiperplanul trece prin origine;
-w = 0 hiperplanul paralel cu axa x .
daca
daca
w x
i 1
n
w x
i 1
wn 1
wn 1
Alta formulare:
-vectorul de forme marit cu o componenta egala cu 1, y = (y1, y2, ... ,
yn,1)T ;
-vectorul de ponderi w = (w1, w2, ... , wn, wn+1,)
=> functia de decizie:
n 1
d (y ) wi y i w T y
i 1
Algoritmi de antrenare
1) doua seturi de antrenare pentru doua clase separabile liniar si se
doreste obtinerea vectorului de ponderi.
Initial: vector de ponderi arbitrar w(1).
La pasul k:
-daca y(k)1 si w T(k)y(k)0 inlocuieste w(k) cu:
w(k+1) = w(k) + cy(k)
c fiind un incremet pozitiv de corectie (deocamdata fix);
-daca y(k)2 si w T(k)y(k)0 inlocuieste w(k) cu:
w(k+1) = w(k) - cy(k)
altfel w(k) ramane nemodificat.
Algoritmul se mai numeste regula de corectie cu increment fix.
Convergenta algoritmului: cand intregul set de antrenare din ambele
clase este trecut fara erori.
Convergenta: numar finit de pasi daca cele doua seturi de antrenare
sunt separabile liniar ("teorema de antrenare perceptron").
J (w )
w (k 1) w (k )
w w (k )
J (w )
( r w T y ) y
w
Modificarea erorii:
e(k) =[ r(k) - w T(k+1)y(k)] [ r(k) - w T(k)y(k)]=
= - [w T(k+1) - w T(k)]y(k) = -w Ty(k)
dar w = e(k)y(k) , deci:
e = -e(k)yT (k) y(k) = -e(k) y(k) 2
modificand ponderile eroarea se reduce cu un factor y(k) 2.
Pentru stabilitate: 0 < < 2, practic 0.1 < < 1.0.
Astfel, algoritmul reprezentat de ecuatia:
w(k+1) = w(k) + [r(k) - w T(k)y(k)]y(k)
converge la o solutie care minimizeaza eroarea patratica medie peste formele
unui set de antrenare.
Cei doi algoritmi: pot fi extinsi pentru mai multe clase si pentru functii
de decizie neliniare.
h j (I j )
1 e
( I j j ) / o
I j w jk Ok
k 1
pentru j = 1, 2, ... , N
, (NJ numarul de noduri de pe stratul J) unde wjk este
J
ponderea modificand iesirea Ok a nodului k de pe stratul K inainte de a fi
furnizata nodului j de pe stratul J. Iesirile de pe stratul K:
Ok = hk (Ik)
pentru k = 1, 2, ... , NK.
=> sunt necesari NJ x NK coeficienti + NJ coeficienti j pentru a
specifica complet nodurile de pe stratul J.
hj (I j )
(functia de activare)
1 e
Nk
w jk Ok j ) / o
k 1
In timpul antrenarii:
-adaptarea neuronilor in stratul de iesire: simplu! (se cunoaste iesirea
dorita a fiecarui nod);
- mai complicat: ajustarea ponderilor in straturile ascunse (adica toate
celelalte straturi decat stratul de iesire).
1 Q
EQ (rq Oq ) 2
2 q 1
(NQ = numarul de noduri in stratul de ieisire Q, prin conventie in notatie
pentru derivare ulterioara).
Obiectivul: dezvoltarea unei reguli de antrenare (asemanatoare cu
regula delta) care permite ajustarea ponderilor in fiecare dintre straturi cautand
un minim al functiei de eroare EQ => derivarea partiala a erorii in raport cu
ponderile:
wqp
E Q
wqp
E Q
wqp
EQ I q
I q wqp
.......
In final se obtine:
w pj (rp O p )h' p ( I p )O j p O j
unde termenul de eroare:
p ( r p O p ) h' p ( I p )
Exceptand rp toate variabilele sunt cunoscute sau pot fi observate in retea.
rp fara sens intr-un strat intern (nu se cunoaste raspunsul unui nod intern in
termenii apartenentei formei la o clasa, doar pentru stratul de iesire se poate
specifica clasa la care apartine) => se reformuleaza p prin cantitati care sunt
cunoscute sau pot fi observate:
E P
E P O p
p
I p
O p I p
.......
Rezulta:
NQ
p h' p ( I p ) q wqp
q 1
se poate calcula! (se cunosc toti parametrii) => se poate calcula p din q si wqp
care s-au calculat in stratul imediat urmator stratului P => o cale de propagare
inapoi a erorii in retea incepand de la stratul de iesire.
w jk j Ok
j ( r j O j ) h' j ( I j )
iar daca este un strat intern:
NP
j h' j ( I j ) p w jp
p 1
h' j ( I j ) O j (1 O j )
rezulta cele doua expresii pentru j (strat de iesire / intermediar):
j (r j O j )O j (1 O j )
NP
j O j (1 O j ) p w jp
pentru j = 1, 2, ... , Nj.
p 1
hj (I j )
1 e
Nk
w jk Ok j ) / o
k 1
cu o = 1.
Procesul de antrenare divizat in doua parti:
1) Ponderile initializate la valori mici aleatoare cu media zero
reteaua antrenata cu vectorii de forme fara zgomot => reteaua a invatat
formele din cele patru clase cand pentru oricare forma de antrenare din clasa
i elementele stratului de iesire au furnizat Oi 0.95 ("high") si Oq 0.05 ("low")
pentru q = 1, 2, ..., NQ ; q i.
2) S-au utilizat formele cu zgomot, generate astfel: fiecarui pixel de pe
conturul formei fara zgomot i s-a asignat o probabilitate V de a-si pastra
coordonatele sale originale si probabilitatea R = 1-V de a fi asignat aleator
unuia din cei opt vecini ai sai (marind R creste zgomotul in forme). S-au
generat doua seturi de forme cu zgomot: primul set (set de test) cu 100 de
forme cu zgomot pentru fiecare clasa R variind intre 0.1 0.6 (in total 400 de
forme) si un al doilea set de forme cu zgomot pentru antrenare.