clasificarea masinilor in imagini de intensitate

15
Clasificarea masinilor in imagini de intensitate Algoritm de clasificare: Perceptron Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Upload: cristi-mihalcea

Post on 13-Dec-2015

10 views

Category:

Documents


3 download

DESCRIPTION

Clasificarea Masinilor in Imagini de Intensitate

TRANSCRIPT

Page 1: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Clasificarea masinilor in imagini de intensitate

Algoritm de clasificare: Perceptron

Page 2: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Cerinta:

• Detectati masinile in imagini de intensitate folosind algoritmul perceptron.

Page 3: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Algoritmul perceptron

• Consta in studiul unor funcţii de discriminare liniară, exemplificate de perceptron, şi vom aplica metoda “gradient descent” pentru a calcula cele mai bune reguli de clasificare pentru două clase.

Page 4: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Fundamente teoretice:• Scopul clasificării este de a grupa elemente cu trăsături similare în clase

sau grupuri. Un clasificator liniar reuşeşte acest lucru prin luarea deciziei în funcţie de o combinaţie liniară a trăsăturilor.

• Definiţia unui clasificator• Fie S o mulţime de exemple {S1, S2,…, Sn} ce aparţin unor clase diferite

{c1, c2, … , cm}. Fiecare exemplu are d trăsături associate x = {x1, x2,…, xd}. Un clasificator este o corespondenţă între spaţiul trăsăturilor şi etichetele claselor, {c1, c2,…,cm}.

• Astfel un clasificator partiţionează spaţiul în m regiuni de decizie. O dreaptă sau o curbă ce separă clasele se numeşte limită de decizie. Dacă avem mai mult de două trăsături, această limită devine o suprafaţă (e.g. un hiperplan).

• În continuare ne vom referi la cazul cu două categorii, în care exemplele din S aparţin de două clase {c1, c2}.

Page 5: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Page 6: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

• 2.1. Forma generală a unui clasificator liniar• Un clasificator liniar este o combinaţie liniară de trăsături, care sunt componentele

unui vector x. Clasificatorul poate fi scris ca: g(x) = wt x + wo = ∑ xiwi + w0• Unde:• w este vectorul de ponderi • • w0 este deplasamentul (bias), sau ponderea pragului.• Un clasificator cu liniar două categorii (clasificator binar) implementează

următoarea regulă de decizie:• daca g (x)>0 decide ca exemplul x apartine clasei c1• daca g (x)<0 decide ca exemplul x apartineclasei c2• Sau• daca wt x>-w0 decide ca exemplul x apartineclasei c1• daca wt x<w0 decide ca exemplul x apartineclasei c2

• Daca g(x) = 0, x poate fi clasificat oricum.

Page 7: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Page 8: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

• Învăţarea perceptron• Vom considera metoda învăţării unei probleme

de clasificare binară folosind un clasificator liniar. Presupunem că avem o mulţime de date X={x(1, x(2,… , x(n} conţinând exemple din două clase. Fiecare exemplu x(i din mulţime este caracterizat de un vector de trasaturi {x1, x2, … , xd}.

• O vedere schematică a perceptronului este prezentată în figura următoare.

Page 9: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Pentru convenienţă vom absorbi factorul liber w0 prin introducerea în vectorul de trăsături x a unei dimensiuni suplimentare.Obiectivul nostru este de a găsi un vector a în aşa fel încât :

Page 10: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Algorithm: Batch Perceptron

• Begin• • Initializare a, η, criteriul θ, k=0• • “normalizare” a setului de antrenare prin înlocuirea

tuturor exemplelor din c2 prin negativul lor: 2 y ←[−y], y c∀ ∈

• • Do o k = k+1• o a= a + η ∑y• • Until η ∑y < θ• • Return a• End

Page 11: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

1. Exemplu numeric• Să se antreneze perceptronul pe următoarele date:• X1 = [(1,6), (7,2), (8,9), (9,9)]• X2 = [(2,1), (2,2), (2,4), (7,1)]• Algoritmul de învăţare perceptron:• • Considerăm η=0.1• • Considerăm a(0)=[0.1, 0.1, 0.1]• • Folosim metoda de actualizare pas cu pas• • Se normalizează setul de date • Se parcurg exemplele şi se actualizează a(k) atunci când apare clasificare greşită.• 1. Y(1) [1 1 6]*[0.1 0.1 0.1]T>0 ok⇒ ⇒• 2. Y(2) [1 7 2]*[0.1 0.1 0.1]T>0 ok⇒ ⇒• 3. … • 4. …• 5. Y(5) [-1 -2 -1]*[0.1 0.1 0.1]T<0 actualizare a(1) = [0.1 0.1 0.1] + ⇒ ⇒ η*[-1 -2 -1] = [0 -0.1 0]• 6. Y(6) [-1 -2 -2]*[0 -0.1 0]T>0 ok⇒ ⇒• 7. …• 8. Y(1) [1 1 6]*[0 -0.1 0]T<0 actualizare a(2) = [0 -0.1 0] +⇒ ⇒ η*[1 1• 6] = [0.1 0 0.6]• 9. Y(2) [1 7 2]*[0.1 0 0.6]T>0 ok⇒ ⇒• 10. …• Oprire când η∑y < θÎn acest exemplu regula converge după 175 iteraţii la a=[-3.5 0.3 0.7]

Page 12: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Page 13: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Clasificator perceptron bazat pe două trăsături

• În sesiunea de laborator vom crea un clasificator perceptron care va discrimina intre două mulţimi de puncte. Punctele din clasa 1 sunt colorate rosu, iar cele din clasa 2 in albastru, ca in figura de mai jos.

Page 14: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

• Fiecare punct este descries prin culoare (ce indica clasa) si prin cele doua coordinate ale lui, care sunt trasaturile x1 si x2.

• Vectorul de ponderi are forma a = [w0, w1, w2].

• Vectorul y = [ 1 x1 x2 ].

Page 15: Clasificarea Masinilor in Imagini de Intensitate

Facultatea de Automatica si Calculatoare,sectia Calculatoare, grupa 30241, Studenti:Vascan Paul, Stoica Ioana

Bibliografie:

• http://users.utcluj.ro/~raluca/prs/lab_09r_perceptron.pdf