M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Vorlesung 8
Supportvektor-Maschinen
Martin Giese
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Übersicht
! Einführung! Supportvektor-Klassifikation: Prinzip! Quadratische Programmierung! Supportvektor-Klassifikation: Erweiterungen! Supportvektor-Regression! Anwendungen
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
I. Einführung
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Strukturelle Risikominimierung! Typische Generalisierungsschranke: Mit
Wahrscheinlichkeit 1- η gilt:
! Parameter:
– Zahl der Lernbeispiele: l
– Kapazitätsmass für Hypothesenraum: h
(VC-Dimension, Vγ-Dimension, …)
],[)/4ln()/2ln(][][ gemp hfRl
helhfRfR =++≤ η
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Strukturelle Risikominimierung! Empirisches Risiko und h müssen gleichzeitig minimiert
werden
! Direkter Ansatz: optimiere Remp für jedes Element der
Struktur Sn
→ typischerweise komplexes nichtlineares
Optimierungsproblem
! Supportvektor-Maschinen implementieren Strukturelle
Risikominimierung in anderer Weise, die zu günstigem
Optimierungsproblemen führt (konvex, quadratisch)
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Supportvektor-Maschinen! Empirisches Risiko fixiert; Kapazität h des
Hypothesenraumes minimiert
→ kombinatorisches Optimierungsproblem vermieden
! Eingangsraum x abgebildet auf sehr hochdimensionalen
Merkmalsraum typ. mittels nichtlinearer Transformation
z = ΦΦΦΦ(x) → Oft werden Probleme linear trennbar.
xxx x
o
x
o oo
φ1(x)
φ2(x)ΦΦΦΦ(x)
linear separierbar
xxxx xo xo oonicht separierbar
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Supportvektor-Maschinen
! Durch Kapazitätskontrolle im hochdimensionalen Raum
trotzdem gute Generalisierung
! Klassifizierung oder Regression im z-Raum mittels
linearer Funktionen
! Optimieringsproblem: quadratische Programmierung
(konvex und effizient lösbar)
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Supportvektor-Maschinen
! Dualitätstheorie für konvexe Optimierungsprobleme
ausgenutzt: nur die Skalarprodukte von hoch-
dimensionalen Merkmalsvektoren treten auf
! Rechenaufwand ~ Zahl der Datenpunkte, nicht abhängig
von Dimensionalität des Merkmalsraumes
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
II. Supportvektor-Klassifikation:Prinzip
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Linearer Klassifikator! Linearer Klassifikator:
– Funktionenklasse: y = f(x) = wT x + b
– Datenpaare: zi = (xi, yi), 1 ≤ i ≤ l
– yi ∈ {-1, 1} x1
x2
Klasse 1
Klasse 2
f(x)
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Optimale Hyperebene! Separierende Hyperebene:
! Kompakt:
! Optimale / kanonische
Hyperebene: maximale Dis-
tanz von den beiden Klassen
x1
x2
Klasse 1
Klasse 2
2) (Klasse 1 falls 1
1) (Klasse 1 falls 1
−=−≤+
=+≥+
iiT
iiT
ybyb
xwxw
Hyperebene
1)( +≥+by iT
i xw
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Rand (margin)! Rand (margin) m: Abstand zwischen
Klassen und trennender Hyperebene
! Abstand zwischen Hyperebene
und Datenpunkt x0:x1
x2
Klasse 1
Klasse 2
Hyperebene
Rand
||)(
||))()(((
||)(
0000
00
wx
wxx
wxxw
fyffy
ydT
=−
=−=
wx0
x
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Für alle Datenpunkte zi = (xi, yi) gilt:
! Maximaler Rand (maximum margin): minimaler
Abstand zwischen Klassen und optimaler Hyperebene
limfy ii ≤≤≥ 1||
)(wx
x1
x2
Klasse 1
Klasse 2
Maximaler Rand
0)( =xf 1)( =xf
1)( −=xf
Maximaler Rand (maximum margin)
Optimale Hyperebene
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Für alle Datenpunkte zi = (xi, yi) gilt:
! Maximaler Rand (maximum margin): minimaler
Abstand zwischen Klassen und optimaler Hyperebene
! Mehrdeutigkeit:
! Eindeutig nach Norma-
lisierung:
limfy ii ≤≤≥ 1||
)(wx
x1
x2
Klasse 1
Klasse 2
Maximaler Rand
0)( =xf 1)( =xf
1)( −=xfm
ccbcyby i
Tii
Ti ≥+=+
||)(
||)(
wxw
wxw
Maximaler Rand (maximum margin)
1||!=wm
Optimale Hyperebene
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Normalisierung ⇒
! Maximaler Rand ≡
Minimum von |w|
! Optimale / kanonische
Hyperebene ⇔
maximaler Rand
x1
x2
Klasse 1
Klasse 2
Maximaler Rand
Kanonische Hyperebene (optimal separating hyperplane)
||/1 w=m
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Rand und Generalisierung! Intuition:
Maximaler Rand ≡ maximaler Abstand der Hyperebene
von den Klassen ≡ optimale Generalisierung
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Rand und Generalisierung! Intuition:
Maximaler Rand ≡ maximaler Abstand der Hyperebene
von den Klassen ≡ optimale Generalisierung
! Vapnik (1995):
Mit E{.} Erwartungswert über
alle möglichen Trainingsmengen
gilt:
x1
x2
Klasse 1
Klasse 2
Maximaler Rand
Supportvektor
lE
Etoren}Supportvek von#{
}Testfehler{ =
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Rand und Generalisierung! Vapnik & Chervonenkis (1974):
Falls die Daten x ∈ IRn in einer (Hyper)kugel mit Radius R
liegen, dann gilt für die VC-Dimension der Hyperebenen
mit Rand m:
! Unabhängig von der Dimensionalität n des
Merkmalsraumes (falls Rand genügend gross) !
1,min 2
2
+
≤ nmRh
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Rand und Generalisierung
lhelhfRfR )/4ln()/2ln(][][ emp
η++≤
! ≡ Minimierung des Konfidenz-Intervalles der
Abweichung zwischen empirischem und erwartetem
Risiko:
Maximierung des Randes ≡ Minimierung von |w|2
≡ Minimierung der VC-Dimension
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Minimierung von
unter der Nebenbedingung (NB) korrekter
Klassifizierung der Trainingsdaten, d.h.:
" Minimierung einer quadratischen Funktion
mit linearen Ungleichungen als Nebenbedingung
Bestimmung der kanonischen Hyperebene
2||21)( w=wE
liby iT
i ≤≤+≥+ 1 1)( :NB xw
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
III. Quadratische Programmierung
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Def: Die Menge X ist konvex, falls
! Def: Die Funktion f ist konvex,falls
! “stark konvex” falls man
“≤” durch “<“ ersetzt
Konvexe Mengen / Funktionen Konvex
Nicht konvex
Konvex Nicht konvex
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Def: Das Optimierungsproblem:
minimiere f(x)
für x ∈ X
heisst konvex falls X und f konvex sind.
! Satz: Konvexe Optimierungsprobleme haben eindeutige
Lösung (lokale = globale Optima).
Konvexe Optimierungsprobleme
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Minimiere:
unter den NB:
! Kompakter:
unter der NB:
Primäre Form (primal form)
2||21)( ww =E
liby iT
i ≤≤+≥+ 1 1)( xw
2||21)( ww =E
0cAw ≥+" Quadratische Programmierung
Konvex !
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Lagrange-Funktion:
! Optimierungstheorie ⇒
Minimiere L(w,b, αααα) über w und b; maximiere L(w,b, αααα)
über α α α α mit der Einschränkung α i ≥0.
Lagrange Methode für Ungleichungs-NB
∑=
−+−=l
ii
Tii bybL
1
2 )1)((||21),,( xwwαw α
Lagrange-Multiplikator
Fehler Nebenbedingung
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Differenzieren:
⇓
!
" Optimale Gewichte gegeben durch Linearkombination
der Datenpunkte !
!
" Gleichungs-NB für die Lagrangemultiplikatoren
Karush-Kuhn-Tucker (KTT) Bedingungen
0),,(0),,( !!=
∂∂=
∂∂
bbLbL αw
wαw
0mit *1
* ≥=∑=
i
l
iiii y αα xw
li1 0 1
* ≤≤=∑=
l
iii yα
Optimalwert
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Zusatzbedingung für Ungleichungsnebenbedingungen
(Theorem von Karush-Kuhn-Tucker):
" d.h. entweder ist die NB erfüllt (“inaktiv”) oder der
zughörige Lagrange-Multiplikator ist Null.
(KTT-Komplementaritätsbedingung)
Karush-Kuhn-Tucker (KTT) Bedingungen
liby iT
ii ≤≤=−+ 1 0)1*)*((* xwα
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Konsequenz: Terme in der Entwicklung
verschwinden !!! (“Spärlichkeit”, sparseness)
! Die Terme xi, die nicht verschwinden heissen
Supportvektoren
! Die Supportvektorien “komprimieren” die Information
über die optimale Hyerebene
! Für die Supportvektoren xs gilt:
Supportvektoren
∑=
=l
iiii y
1
** xw α
∑=
−=⇒=+l
is
Tiiiss
Ts yybby
1
** 1*)*( xxxw α
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Idee: Lagrangefunktion ausdrücken alleine als Funktion
der Lagrange-Multiplikatoren α i
! Vorteil: Oft wird Optimierungsproblem einfacher
! Man kann beweisen, dass unter geeigneten
Bedingungen (starke Dualität) die Lösungen des
primären und des dualen Optimierungsproblems
identisch sind.
Duales Optimierungsproblem
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Einsetzen:
! Resultierende Lagrange-Funktion:
! Maximierung unter den NB:
Duales Optimierungsproblem
∑=
−=l
is
Tiiis yyb
1
** xxα∑=
=l
iiii y
1
** xw α
α1Kααxxα TTl
ii
l
jij
Tijiji yyL +−=+−= ∑∑
== 21
21)(
11,
ααα
0
li1 0
*1
*
≥
≤≤=∑=
i
l
iii y
α
α
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Vorteile
! Viel weniger freie Parameter
! Abhängigkeit nur von den Skalarprodukten der Daten xi
⇒ x kann sehr hoch- oder sogar unendlichdimensional
sein !
Duales Optimierungsproblem
α1Kααxxα TTl
ii
l
jij
Tijiji yyL +−=+−= ∑∑
== 21
21)(
11,
ααα
Skalarprodukt
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
IV. Supportvektor-Klassifikation:Erweiterungen
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Falls Trainingsdatensatz Punkte enthält, die nicht
separierbar sind oder in den Bereich des Randes fallen,
hat vorgestelltes Optimierungsproblem keine Lösung
⇒ Algorithmus nicht robust gegen Outlier
! Abhilfe: NB “weicher” machen
durch Einführen von Schlupf-
variablen (slack variable):
Nichtseparable Trainingsdaten (soft margin)
0mit - 1)( ii ≥≥+ ξξby iT
i xw
x1
x2
Klasse 1
Klasse 2
ξ i
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Modifizierte Fehlerfunktion (C > 1):
! Analoge Behandlung liefert folgenden duales
Optimierungsproblem (“Box-NB” !):
Nichtseparable Trainingsdaten (soft margin)
∑=
+=l
iiCE
1
2||21)( ξww
∑∑==
+−=l
ii
l
jij
Tijiji yyL
11,21)( ααα xxα
C
y
i
l
iii
≤≤
≤≤=∑=
*1
*
0
li1 0
α
α
Maximiere:
unter der NB:
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Duales Problem hängt nur von den Skalarprodukten
xiT xj = (xi, xj ) ab.
! Idee: Ersetzen der Vektor-Skalarprodukte durch
Skalarprodukt im RKHS:
Nichtlineare Klassifikatoren
),()()())(),((,
1
max
jijqiq
q
qqji k xxxxxΦxΦ == ∑
∞
=
φφλ
Kernfunktion
Eigenfunktionen des Integraloperators
tttxx dfkfTX
k )(),()( ∫=o
(Satz von Mercer, Vorlesung 7)
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Duales Problem bleibt unverändert:
! Zugehörige Funktion f(x):
Nichtlineare Klassifikatoren
∑∑==
+−=l
ii
l
jijijiji kyyL
11,
),(21)( ααα xxα
C
y
i
l
iii
≤≤
≤≤=∑=
*1
*
0
li1 0
α
α
Maximiere:
unter der NB:
∑
∑
=
∞
=
=
+=+=
l
iiii
q
qqq
T
ky
bwbf
1
,
1
),(
)()()(max
xx
xxΦwx
α
φ
Merkmalsraum kann unendlich-dimensional sein !
Lineare Superposition von ≤ l Kernfunktionen
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
V. Supportvektor-Regression
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Übertragung des entwickelten Supportvektor-Algorithmus
für Klassifikation auf Regression
! Minimierung eines Kapazitätsmasses (z.B. Vγ-Dimension)
bei konstanter Approximation der Trainingsdaten
! Kapazitätskontrolle für Funktionenklasse H
durch Beschränkung |w|2 < M2
! Falls z.B. f(x) Lipschitz bestimmt die Skalierung von w
die Lipschitzkonstante L und somit die Vγ-Dimension(Vorlesung 7)
Idee
bwbfq
qqq
T +=+= ∑∞
=
,
1
max
)()()( xxΦwx φ
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Kontrolle der Approximationsgüte mittels
ε-unempfindlicher Fehlerfunktion:
! Approxiumationsfehler im Interval
[-ε, ε] werden nicht bestraft
! Messung der signifikanten Approxi-
mationsfehler durch Schlupf-
variablen ξ i
ε-unempfindliche Fehlerfunktion
V(y,f(x))
y-f(x)
εεεε-unempfindliche FF
-ε ε( )0|,)(|max))(,( xx fyfyV −=
y
xKlasse 2
ξ i
f(x)
2ε
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Minimiere die Fehlerfunktion (C > 0):
unter der NB:
Primäres Optimierungsproblem
0', ')(
1 )(
≥+≤++−
≤≤+≤+−
ii
iiT
i
iiT
i
byliby
ξξξε
ξεxwxw
∑=
++=l
iiiCE
1
2 )'(||21)',,( ξξwξξw
Kapazität Approximationsfehler
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Duales Optimierungsproblem
)'()'(
),)(')('(21)',(
11
1,
ii
l
iiii
l
ii
l
jijijjii
yy
L
ααεαα
αααα
+−−+
−−−=
∑∑
∑
==
=
xxαα
li1 ,0 '**1
'*
1
*
≤≤≤≤
=∑∑==
Cii
l
ii
l
ii
αα
αα
Maximiere:
unter der NB:
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Nichtlineare Regression
)'()'(
),()')('(21)',(
11
1,
ii
l
iiii
l
ii
l
jijijjii
yy
kL
ααεαα
αααα
+−−+
−−−=
∑∑
∑
==
=
xxαα
li1 ,0 '**1
'*
1
*
≤≤≤≤
=∑∑==
Cii
l
ii
l
ii
αα
αα
Maximiere:
unter der NB:
∑∑=
∞
=
=+=+=l
iiii
q
qqq
T kybwbf1
,
1
),()()()(max
xxxxΦwx αφ
! Funktionenklasse H :
! Duales Optimierungsproblem:
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
VI. Anwendungen
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Detektion von Personen in Strassenszenen
! Projekt mit Daimler-Chrysler
! Integration über die Zeit
Fussgängerdetektion Papageorgiou & Poggio, 1999)
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Bilder 64 x 128 Pixel (RGB)
! Haar-Wavelets als “Merkmalslexikon”
! 1326 Filterantworten als Merkmalsvektor
! Skalenhierarchie (16 x 16, 32 x 32 Pixel)
! Scannen mit Fenster
! Supportvektor-Klassifikation
! Verschiedene Kerne (Polynome)
Papageorgiou & Poggio, 1999)
Fussgängerdetektion
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Trainingssequenzen: 5 Frames je Person
! Merkmalsvektoren über Zeit aneinander-
gereiht (⇒ 6630 Merkmale)
! Training mit 1379 positiven und 3822
negativen Beispielen
Papageorgiou & Poggio, 1999)
Fussgängerdetektion
Trainingsdaten
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Ca. 1000 Supportvektoren
! Dynamische (Multiframe-)version
besser als Klassifikator basiert auf
Einzelframes
! Erhebliche Verbesserung durch
Verwendung von RGB-Merkmalen
Papageorgiou & Poggio, 1999)
ROCFussgängerdetektion
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Geschwindikeitsoptimierung
! Echtzeitfähigkeit für Autoanwendung
! Auswahl der besten Merkmale (29 statt 1326)
! Arbeiten auf Grauwertbildern
! Modellierung der Entscheidungsfunktion mit
weniger Supportvektoren
! System läuft mit > 10 Hz; 15 ms / Fussgänger
Papageorgiou & Poggio, 1999)Fussgängerdetektion
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
1 7 13 19 25 31 37 43 49 55 61 67 73 79 85
0
2
4
6
8
10
12
! Analyse von Gesichtsausdrücken, z.B. zur
Extraktion von Mundöffnung, aus Videobildern
! Anwendung: Video-Sprache-Fusionierung,
Verbesserung der Spracherkennung
Kumar& Poggio, 2001)
Analyse von Gesichtsausdrücken
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Kumar& Poggio, 2001)
Analyse von Gesichtsausdrücken
Systemarchitektur
Face Detection Localization of Facial Features
Localization of Facial Features
Analysis of Facial partsAnalysis of Facial parts
1 7 13 19 25 31 37 43 49 55 61 67 73 79 85
0
2
4
6
8
10
12
SV-Regression
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Merkmale: Ausgewählte Haarwavelets (max. Varianz)
! Supportvektor-Regression
! Schätzung von generativem Modell (Morphable Model) v
! Klassifizierungung von Visemen (analog Phonem in
Sprache)
Kumar& Poggio, 2001)
Analyse von Gesichtsausdrücken
Textur:
Optischer Fluss:
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Schätzung von morphable-Model-Koeffizienten
! Vergleich mit direktem Fit basierend aus direkter Optimierung mit
stochastischem Gradientenverfahren
Kumar& Poggio, 2001)
Analyse von GesichtsausdrückenTextur Optischer Fluss
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
! Rekonstruktion der Bilder mittels des
Morphable Models
! Gausskerne besser als Polynomkerne
! Erkennung von 15 Visemen
! Erkennung am besten für Wavelet-Merkmale
Kumar& Poggio, 2001)
Analyse von Gesichtsausdrücken
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Wichtige Punkte
! Supportvektor-Klassifikation! Rand! Duales Optimierungsproblem! Soft margin! Nichtlineare Erweiterung mit Kernen! Supportvektor-Regression! Anwendungsbeispiele
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
Cherkassky, V., Mulier, F. (1998). Learning From Data. John-Wiley & Sons Inc, New York.
Christianini, N., Shawe-Taylor, J. (2000). Support vector Machines. Cambridge University Press, UK.
Evgeniou, T., Pontil, M., Poggio, T. (2000). Regularization networks and Support Vector Machines. Advances in Computational Mathematics, 13, 1-50.
Kumar, V., Poggio, T. (2002). A pattern classification approach to dynamic object detection. Thesis, Massachusetts institute of Technology.
Papageorgiou, C., Poggio, T. (1999). A pattern classification approach to dynamic object detection. International Conference on Computer Vision, Corfu, Greece, 1999.
Vapnik, V.N. (1998). Statistical Learning Theory. John Wiley & Sons, New York.
Literatur
M. Giese: Lernmethoden in Computervision und Computer Grafik4 December 2002
http://fpn.mit.edu/9.520Spring2002/ MIT Course 9.520: Statistical Learning Theory and Applications. (T. Poggio, S. Mukherjee, R.Rifkin)
http://www.ai.mit.edu/courses/6.867/ MIT Course 6.867: Machine learning. (T. Jaakkola)
Web-Seiten