Perceptron, Kern-Trick und Support Vector Machine · PD Dr. Martin Stetter, Siemens AG 1...

Post on 25-Oct-2019

3 views 0 download

Transcript of Perceptron, Kern-Trick und Support Vector Machine · PD Dr. Martin Stetter, Siemens AG 1...

PD Dr. Martin Stetter, Siemens AG 1

Perceptron, Kern-Trick und Support Vector Machine

• Das Perceptron (Wiederholung)

• Kernel-Klassifikation

• Large-Margin Klassifikatoren

• Support Vector Machine

Klassifikation: Perceptron

PD Dr. Martin Stetter, Siemens AG 2

Wiederholung: Der Kernel-Trick

Klassifikation: Kernel-Trick

Kernel-Klassifikation: Ein illustrierendes Beispiel

• Projektion des X-OR Problems in einen 3-D

Eigenschafts-Raum („feature space“).

Def: )2,,(),,(),(: 2122

2132121 xxxxzzzxx ==→φφ x

• Erfolgreiche lineare Klassifikation im

transformierten Raum: z.B.

mit

)( by T +Θ= zv21),2,1,1( −=−= bv

• Beob. 1: Separierende Hyperebene in 3-D

entspricht nichtlinearer Klassifikation (hier:

separierender Ellipse) in 2-D. Denn:

Vxxxxzv TTT

vv

vvxxvxvxv =⎟⎟⎠

⎞⎜⎜⎝

⎛=++=

23

31213

222

211

2

22

orthogonale Eigenvektoren⇒= VVT 2,1, == iiii uVu λ

∑∑∑ ===⇒=i iij

Tiji ji

T

i ii const 2

,αλααα VuuVxxux

1x

2x

11 λ 21 λ

1u2u

Ellipsengleichung mit Hauptachsen.2 consti ii =∑ αλ 21, uu

X-OR Problem in 3-D

1z

3z

2z

2

PD Dr. Martin Stetter, Siemens AG 3Klassifikation: Kernel-Trick

• Beob. 3: Die Klassifikation läßt sich allein durch Berechnung des Kernels durchführen

)),(( xwky Θ=

Kernel Trick:

Aus jedem Algorithmus, der durch Skalarprodukte formuliert ist, läßt sich das SP durch einen

positiv definiten Kernel ersetzen und so ein alternativer Algorithmus formulieren.

Kernel-Klassifikation:

• Definiere einen Kernel

• Formuliere das Klassifikationsproblem unter Verwendung des Kernels:

),( xx ′k

))((,21),1,1(),(: 2 byb T +Θ=−=−== xwwwv φ

Bem:

-- Hohe VC-Dim (Modellmächtigkeit) durch hohe Dimension von

-- Trotzdem effiziente Berechnung durch Kernel

-- Für das X-OR Problem (s.o.):

)(xφ),()()( xxxx ′=′ kTφφ

• Beob 2: Skalarprodukt im Feature-Raum läßt sich einfach im Originalraum (2-D)

berechnen. Betrachte dazu die Abb: )(),( xzwv φφ ==

heißt Kernel (Kern). heißt Kernel-Abbildung),( xx ′k )(xφ),()()(2)()( 22

2211221122

22

21

21 xwxwxwzv kxwxwxwxwxwxw TTT ≡=+=++==⇒ φφ

Im Fall des obigen Beispiels :

PD Dr. Martin Stetter, Siemens AG 4

„Large-Margin“-Klassifikatoren

Klassifikation: Large Margin

Betrachte wieder linear separable Probleme

ObdA: Gehe über zu }1,1{}1,0{ −∈→∈ yy

1w

2w

Separierende „Hyperebene“

1x

w

)(mx

1)( −=my

1ˆ +=y

0=+⋅ bxw

1ˆ −=yw

• Beobachtung: Es existieren viele Lösungen (w,b) mit

Mmby mTm ...,1,0)( )()( =∀>+⋅xw

),sgn( )()( by mTm +⋅= xw also

• Idee: Wähle diejenige Lösung mit maximalem

Abstand zu den Datenpunkten: „Large Margin“

Warum?: Eindeutige Lösung, robusteste Lösung, kleinste VC Dimension (Generalisierung)

effizient lösbar (quadratisches Programm), führt zu Support Vector Machine

• Kanonische Form des Klassifikators

bb ′=′=µµ1

:,1

: wwalso mit

Linear separables Problem: Lösg (w‘,b‘) Mmby mTm ...,1,0,0)( )()( =∀>⇒≥>′+⋅′ µxw∃

Mmby mTm ...,11)( )()( =∀≥+⋅⇒ xw„=1“

=> Margin

PD Dr. Martin Stetter, Siemens AG 5

• Margin eines Hyperebenen-Klassifikators:

}0||{||minmin)(mg )( =+−= bTm

mxwxxw

x

wwxw

wxw

wxwxw

w

1)(min

minmin)(mg

)()(

)()(

=+=

=+=−=

by

b

mTm

m

mT

m

TmT

m

In der kanonischen Form gilt:

• Large Margin:

-- Minimiere ||w||2

-- aber behalte kanonische Form bei: Also2

, 2

1minarg www b

LM = unter den Randbedingungen

Mmby mTm ...,1,0)1)(( )()( =∀≤−+⋅−⇒ xw

=> Optimierungsproblem mit

Rdbed: Lagrange-Fkt

Def. Margin:

1x

w

w

)2(d

)(min )(m

md

)(ˆ )1()1( xxw −= Td

x

)1(x

Intuition: Large-Margin Ebene durch die

nächstliegenden Datenpunkte bestimmt

Klassifikation: Large Margin

=−+⋅−= ∑=

)1)(2

1),,( )()(

1

)(2bybL mTm

M

m

m xwwáw α Sattelpunkt 0)( ≥mα

PD Dr. Martin Stetter, Siemens AG 6

• Lösung des Optimierungsproblems bedingt:

-- KKT Bedingung: Mmby mTmm ,...,1,0)1)(( )()()( ==−+xwα=> Entweder liegt am margin: 0,1)( )()()( >⇒=+ mmTm by αxw)(mx erlaubt

=> Oder 0)( =mα => Datenpunkt trägt nichts zum Parametervektor w bei

= Support-Vektor)(mx

Support-Vektor-Machine

Support-Vektoren

1x

w

)()(

1

)(0),,( mmM

m

m ybL xwáww ∑

=

=⇒=∂∂ α => w = Linearkomb. der Trainingsdaten--

-- 00),,( )(

1

)( =⇒=∂∂ ∑

=

mM

m

m ybLb

αáw

-- Support-Vektoren liegen auf beiden Seiten der Ebene

Klassifikation: Large Margin

-- Gesuchter Parametervektor ist eine

Linearkombination von Supportvektoren!

ist vollständig durch die Support-Vektoren bestimmt

PD Dr. Martin Stetter, Siemens AG 7

• Duales Problem:

-- Eliminiere w und b durch Gleichungen für α )()(

1

)( mmM

m

m y xw ∑=

= α 0)(

1

)( =∑=

mM

m

m yα

∑=

=M

nm

nTmnmnm yy1,

)(),()()()()(2

2

1

2

1xxw αα

∑∑∑∑====

+−−=−+−M

m

mM

m

mmM

m

mTmmmTmM

m

m ybyby1

)(

1

)()(

1

)()()()()(

1

)( )1)(( αααα

xwxw

∑=

−=M

nm

nTmnmnm yy1,

)(),()()()()( xxαα 0=

Duales Problemmin

2

1)(

,

)()()()()()()( =−=⇒ ∑∑ nm

nTmnmnm

m

m yyW xxá ααα

Mit RB: 0,,...,1,0 )()()( ==≥ ∑ m

m

mm yMm αα

-- Löse „duales“ Optimierungsproblem bezüglich α : Quadratisches Programm

-- Die Entscheidungsfunktion wird zu

)sgn()(ˆ)sgn()(ˆ1

)()()( byxybyM

m

TmmmT +=→+⋅= ∑ =xxxwx α

Klassifikation: Large Margin

PD Dr. Martin Stetter, Siemens AG 8

• Support-Vector-Machine und Kernel-Trick :

-- Beobachtung: Das duale Problem läßt sich rein durch Skalarprodukte formulieren

-- Kerneltrick anwendbar!!

• Behandlung verrauschter Probleme: Soft-Margin Klassifikatoren

1x

w

-- Erlaube gelegentliche Verletzung des Margin

-- Lerne „Lockerungsvariablen“ mit0)( ≥mξmin,1)(

1

)()()()( =−≥+ ∑ =

M

m

mmmTm by ξξ aberxw

Klassifikation: Support-Vector Machine

-- Die Entscheidungsfunktion wird zu

Duales Problemmin),(

2

1)(

,

)()()()()()()( =−= ∑∑ nm

nmnmnm

m

m kyyW xxá ααα

Mit RB: 0,,...,1,0 )()()( ==≥ ∑ m

m

mm yMm αα

)),(sgn()(ˆ1

)()()( bkyxyM

m

mmm += ∑ =xxα

-- Bei nicht-separablen Problemen, löse:

PD Dr. Martin Stetter, Siemens AG 9

Time

Tim

e

single voxeltime series

single voxeltime series

Intensity BOLD signal

Beispiel: Klassifikation von Denkzuständen aus fMRI Bildern

Slice

Voxel

PD Dr. Martin Stetter, Siemens AG 10

Each fMRI volume is considered a feature vector:

• extremely high dimensional (196994 voxels after the mask),

• noise and sparse data

( ) { }nttxt vii ,...,1),(, ==X i=1,2 (class label: task or control)v=1,…, number of voxels

fMRI Brain volumes and feature vectors

PD Dr. Martin Stetter, Siemens AG 11

Experiment Design I: Face Matching

Number of Scans(volumes):

Instruction for Control: Press button when image appears (images are abstract)Instruction for Face task : Press button when faces are identical No button press required when faces are different

Task: Face matchingControl

2 7 2 2 2 2 27 7 7 7 7 92

time

Number of Scans(volumes):

2 7 2 2 2 2 27 7 7 7 7 92

time

Instruction

Instruction for Control: Press button when image appears (images are abstract)Instruction for Location task: Press button when location of abstract images is same No button press required for different location

Task: Location matchingControlInstruction

Experiment Design I I: Location Matching

PD Dr. Martin Stetter, Siemens AG 12

Machine Learning Algorithm

.

.

.fMRI volumes

from condition1

fMRI volumesfrom condition2

fMRI vectors (volumes)from a new subject

Machine Learning Algorithm

condition 1 or condition 2

Training

Volume withthe most

discriminativebrain regions

Training classifiers to predict the subject’s cognitive state, given their fMRI activity at a single timeinstant.

f: single fMRI volume -> Cognitive State (condition 1 vs. condition 2)

.

.

.

Test

Objective

PD Dr. Martin Stetter, Siemens AG 13

A brain with only two voxels

( )11 tX ( )31 tX( )22 tX ( )42 tX

voxel 1

voxel 2

( )11 tX

( )31 tX( )22 tX

( )42 tX

Support vectors

classification threshold

margin

classification vector w

PD Dr. Martin Stetter, Siemens AG 14

A brain with only two voxels: Projection onto classification vector

( )11 tX ( )31 tX( )22 tX ( )42 tX

w

voxel 2

voxel 1

Projection onto classification vector:

thr

PD Dr. Martin Stetter, Siemens AG 15

Results: Healthy Subjects

S1

S2

S3

S4

S5

Face task x Control task

PD Dr. Martin Stetter, Siemens AG 16

Leave-one-out test: Healthy SubjectsFace task x Control task

leave the first subject out

leave the second subject out

leave the third subject out

leave the fourth subject out

leave the fifth subject out

PD Dr. Martin Stetter, Siemens AG 17

Difference Vector

Face task x Control task

GFi: inferior frontal gyrus BA 47

FG: fusiform gyrus GTs: superior temporal gyrus BA 22

Lpi: Inferior parietal lobule BA 40

GFi: inferior frontal gyrus BA 46

GFM: Middle frontal gyrus BA 9

PD Dr. Martin Stetter, Siemens AG 18

Vector W

Face task x Control taskfusiform gyrus

GTm: middle temporal gyrus BA 22

Cuneus - BA 18

GFi: inferior frontal gyrus BA 47

GFM: Middle frontal gyrus BA 9

PD Dr. Martin Stetter, Siemens AG 19

Error rate

0,300,32Face task X Location task

0,230,27Location task X Control task

0,180,16Face task X Control task

PCA & SVMPCA & FLD

Test

Results: Leave one-out-test