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