12. SVM - część II

Download Report

Transcript 12. SVM - część II

SVM cz.2

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Plan wykładu

Przypomnienie i demonstracja Klasyfikacja wieloklasowa Zastosowania w rozpoznawaniu twarzy Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

SVM jako klasyfikator

Cel: możliwość przyporządkowania elementu do jednej z klas Dwa etapy:   nauka klasyfikacja próbek Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

SVM – charakterystyka

Rozwiązywanie problemów separowalnych liniowo Zwiększenie liczby wymiarów danych wejściowych Znajdowanie optymalnej hiperpłaszczyzny  maksymalizacja marginesu rozdzielającego próbki Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Dodanie wymiarów

Funkcja:  :

R n

R M

Konieczna zamiana x  (x) Wykorzystywany iloczyn skalarny Iloczyn skalarny = jądro przekształcenia

K

(

u

,

v

)   (

u

)   (

v

) Zbędna znajomość funkcji  Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Jądra przekształceń

Liniowe

K

(

u

,

v

) 

u

v

Wielomianowe

K

(

u

,

v

)  (

u

v

RBF (radial basis functions)  1 )

d K

(

u

,

v

) 

e

 |

u

v

| 2  2 Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Hiperpłaszczyzna

Optymalna hiperpłaszczyzna:  w 0 • x + b 0 = 0 dla przykładu 2D jest to prosta Optymalna szerokość marginesu:

ρ(w

0

,b

0

)

 2 |

w

0 |  2

w

0 

w

0 Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Wektory wspierające

Margines:

y i

(

w

x i

b

)  1 Optymalna hiperpłaszczyzna:

w

0 

i l

  1

y i

i

0   y i  i – identyfikator klasy – mnożniki Lagrange’a Problem: znaleźć  i

x i

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Rezultat optymalizacji

Współczynniki  :   niezerowe dla wektorów wspierających równe zeru dla reszty wektorów Próbka treningowa po nauce:    wektory wspierające współczynniki  dla każdego wektora liczba wektorów zdecydowanie mniejsza Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Nauka

 1 ...

 n Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Klasyfikacja SVM

Obliczenie y dla dowolnego wektora:

f

(

x

) 

i l

  1

y i

i K

(

x

,

x i

) 

b b

  1 2

i l

  1 

i y i

[

K

(

x i

,

x r

) 

K

(

x i

,

x s

)] x r , x s – wektory wspierające z obydwu klas Wybór klasy i moc przynależności Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Miękki margines

Nauka z błędem:

y i

(

w

x i

b

)  1  

i

Minimalizacja liczby błędów Modyfikacja optymalizowanej funkcji Parametr C: 1/C – tolerancja błędu Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Bez miękkiego marginesu

Maksymalizacja funkcji: 

W

(  )  0  

T

1  

T Y

 1 2 0 

T D

Y T

 (

y

1 ,...,

y l

) 

T D ij

 (  1 ,..., 

l

) 

y i y j K

(

x i

,

x j

) Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Z miękkim marginesem

0

Maksymalizacja funkcji:  

W

 (  , 

1

 )   

T

 1  0 1 2 ( 

T

T D

Y

   0

C

2 )

Y T

 (

y

1 ,...,

y l

) 

T D ij

 (  1 ,..., 

l

) 

y i y j K

(

x i

,

x j

) Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Prezentacja...

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Klasyfikacja wieloklasowa

Przedstawienie problemu Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Klasyfikacja wieloklasowa

Punkt wyjścia – klasyfikacja dwuklasowa Próbka treningowa – N klas Możliwe podejścia:    wykorzystanie klasy bazowej porównywanie 1 – N porównywanie 1 – 1 Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Metoda klasy bazowej

Jedna z klas traktowana jako klasa bazowa Klasyfikacja każdej z klas z wybraną klasą bazową Wygrywa najmocniejsza odpowiedź Klasyfikacja wieloklasowa:  N – 1 klasyfikacji dwuklasowych Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Przykład...

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Przykład...

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Przykład...

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Przykład...

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Przykład...

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Cechy metody

Zalety:   duża szybkość skuteczna dla łatwo separowalnych klas niebazowych Wady:  słabe możliwości separowania klas niebazowych Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Porównywanie 1 – N

Każda klasa porównywana z resztą Decyduje najsilniejsza odpowiedź Porównanie z metodą klasy bazowej:   Bardziej uniwersalne podejście Porównywalna szybkość Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Przykład...

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Porównywanie 1 – 1

Każda klasa porównywana z każdą Największa dokładność N(N – 1)/2 klasyfikacji dwuklasowych Niektóre porównania są nadmiarowe Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Zastosowania SVM

Detekcja i weryfikacja Porównywanie wektorów cech Łączenie wyników Inne zastosowania związane z klasyfikacją wektorów Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Detekcja twarzy

Wykrywanie elips   uogólniona Transformata Hougha zbiór kandydatów na twarze Wstępna normalizacja kandydatów Weryfikacja   porównywanie obrazu ze średnim zastosowanie klasyfikatora (SVM) Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Porównywanie wektorów

Cel: określenie podobieństwa wektorów cech Odległość dwóch wektorów:  Euklidesowa  Mahalanobisa SVM określa podobieństwo:  dwóch wektorów  wektora będącego różnicą porównywanych wektorów K1 1 K1 2 ...

K1 n K2 1 K2 2 ...

K2 n Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

K1 1 K1 2 ...

K1 n K2 1 K2 2 ...

K2 n SVM Ta sama klasa Różne klasy

K1 1 - K2 1 K1 2 - K2 2 ...

K1 n - K2 n SVM Ta sama klasa Różne klasy

Łączenie metod

Wiele metod ekstrakcji cech Dwa obrazy

K 1 K 2

...

K n K 1 K 2

...

K n

Wektory cech S 1 S 2 ...

S n Podobieństwa S Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

SVM i łączenie metod

Klasyfikacja wektora podobieństw    jądro liniowe jądro wielomianowe długi czas wykonania Wykorzystanie treningu z jądrem liniowym   wagi dla poszczególnych elementów obliczanie średniej ważonej Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Inne zastosowania SVM

Detekcja kąta obrotu głowy Wyznaczanie kierunku padania światła Określanie pewności rozpoznania  klasyfikacja wektora posortowanych podobieństw do elementów bazy Ocena jakości obrazu twarzy  zastosowanie przy sekwencjach video Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Wyniki

Znaczna poprawa dla metody opartej o Gabor Wavelets Brak zadowalających rezultatów dla Eigenfaces  prawdopodobna przyczyna: niereprezentatywna próbka Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Ograniczenia SVM

Stała, stosunkowo mała liczba klas Zbiór treningowy:   potrzebna duża ilość danych próbki muszą być reprezentatywne!

Ciężko dobrać optymalne parametry Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

SVM i sieci neuronowe

SVM:     bardziej przejrzysty mechanizm większa kontrola niż w przypadku ANN implementuje podstawowe rodzaje ANN przydatny do przetwarzania obrazów ANN:  więcej zastosowań  możliwa realizacja sprzętowa Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Podsumowanie

Klasyfikacja wieloklasowa:   kilka możliwości różna złożoność czasowa SVM – bardzo uniwersalny mechanizm Szerokie zastosowanie Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006

Dziękuję za uwagę!

Rozpoznawanie Twarzy i Systemy Biometryczne, 2005/2006