Sunteți pe pagina 1din 3

Linear Discriminant Analysis (LDA)

Obiectiv: Metoda LDA propune un sistem de proiectie in care centrele claselor sa fie cat mai
departate iar dispersia din interiorul claselor sa fie cat mai mica, minimizand astfel suprapunerea
claselor (exemplu in Figura1).

Figura1. Dreapta de proiectie folosind LDA


Algoritm LDA
Fie C clase cu cate Ni (i = 1..C) vectori n-dimensionali in fiecare clasa.

• SB este matricea de covariatie intre clase si va fi egala cu:


C (1)
S B = ∑ P(ω i )( µ i − µ )( µ i − µ ) T
i =1

unde:
- P (ωi ) =probabilitati apriori
- µ este media celor C clase
- µi este media fiecarei clase

• Sw este matricea de covariatie din interiorul claselor si va fi egala cu:


C
1 Ni (2)
S w = ∑ P(ω i ) ∑ (x i
j − µ i )( x ij − µ i ) T
i =1 Ni j =1
−1
Se determina valorile proprii ale matricei S w S B si apoi se ordoneaza descrescator valorile
proprii obtinute.
S w−1 S B − λ⋅ I n = 0 (3)
Se determina vectorii proprii corespunzatori valorilor proprii:
S w−1 S B Φi = λi ⋅ Φi (4)
Matricea L de transformare LDA va fi formata din vectorii proprii determinati anteriori:
L = [ Φ1 , Φ2 ,..., Φn ] T (5)
Fiecare vector de intrare X se va proiecta in spatiul LDA, astfel:
Y = L⋅ X (6)
Se vor reţine numai m < n componente ale lui Y, restul de n - m componente fiind înlocuite cu
~
valori de zero. Se va obtine astfel vectorul Y .

Pentru a vizualiza vectorul Yˆ in spatiul original, se va inmulti cu transpusa matricei L si se va


obtine:
Xˆ = LT ⋅ Yˆ (7)

Modelul LDA pentru 2 clase constituite din vectori bidimensionali


(Metoda Fisher)
Considerand cazul a C = 2 clase in care sunt N1 puncte in clasa C1, N2 puncte in clasa C2 si
P (ω1 ) = P (ω2 ) , mediile celor 2 clase vor fi:

1 1 (8)
µ1 = ∑x ,
N1 xi ∈ C1 i
µ2 =
N2
∑x i
xi ∈ C 2

1 1 (9)
SB = ( µ1 − µ )( µ1 − µ ) T + ( µ 2 − µ )( µ2 − µ ) T
2 2

1 N1
1 N2
1 1 (10)
Sw =
2 N1
∑ ( x1j − µ1 )( x1j − µ i ) T +
j =1 2N 2
∑ (x
j =1
2
j − µ 2 )( x 2j − µ 2 ) T =
2
Σ1 + Σ 2
2

In acest caz, dreapta de proiectie este cea data de orientarea vectorului propriu corespunzator
valorii proprii maxime.

Problema
Fie setul de vectori 2-dimensionali, impartiti in 2 clase, astfel:
2  1 2 3
In clasa C1: A =  , B =  , C =  , D =  
0  1 2 1
4   4  3 5 
In clasa C2: E =  , F =  , G =  , H =  
0  − 2 −1 −1

Cerinte:
- sa se calculeze matricele SB si SW
−1
- sa se calculeze valorile proprii si vectorii proprii corespunzatori matricei S w S B
- sa se calculeze matricea trasformarii LDA
- sa se determine dreapta de proiectie
- sa se proiecteze vectorii din cele 2 clase pe dreapta de proiectie