Introduction aux machines à vecteurs de support
Introduction aux machines à vecteurs de support
IFT603
Méthode à Noyau
Au chapitre précédent, nous avons vu les méthodes à noyau
Entraînement
1
a K I N t
Prédiction Matrice de Gram
N
y x k x , xn a n Noyau
n 1
Comparaison entre x et toutes les données d’entraînement xn n
1
Machine à vecteur de Support
(support vector machine, SVM en anglais)
x1
w
Un problème est linéairement séparable
si on peut séparer les éléments de chaque
classe avec un hyperplan.
2
Au cœur des machines à vecteurs de support
figure la notion de marge.
Marge
x2
yw ( x ) wT x w0
y w ( x ) 0
w
y w ( x ) 0
x'
yw x '
w w
0
|| w ||
x1
yw ( x ) 0 6
3
Marge
x2
yw ( x ) wT x w0
y w ( x ) 0
w
y w ( x ) 0
x'
yw x ' Distance signée
w w
0
|| w ||
x1
Preuve au tableau yw ( x ) 0 7
Marge
x2
yw ( x ) wT x w0
y w ( x ) 0
w
y w ( x ) 0
x'
yw x '
t1
w
w
0
|| w ||
x1
yw ( x ) 0 8
4
Pour être général, on va considérer (x )
T
x2 y x w x w0
w
y w ( x ) 0
w
y w ( x ) 0
x'
yw x '
t1
w
w
0
|| w ||
x1
yw x 0 9
y w xn
marge min n t n
w >0
<0
Vecteur de support
Marge
10
5
Classifieur à marge maximale
Un SVM cherche les paramètres wT et w0 de l’hyperplan qui
maximisent la marge
arg max
margew , w0
w , w0
arg max
min n t n
y w xn
w, w0
w
T
w
xn w0
arg max
min t
n n
w, w0
w
1
arg max
w, w0 w
min t
n n
T
w xn w0
11
11
Problème!
La marge est la même si on multiplie wT et w0 par une constante non nulle (a)
T T
w xn w0 aw xn aw0
tn t n
w aw
12
12
6
Solution!
T
t n y w xn t n w xn w0 1
13
13
Sans contrainte
T
t n w xn w0 0
>0
<0
Vecteur de support
Marge
14
14
7
Avec contrainte
T
t n w xn w0 1
=1
= -1
Vecteur de support
Marge
15
15
Vecteurs de
support
16
16
8
En supposant que l’ensemble d’entraînement est linéairement
séparable, on a :
1
arg max
w, w0 w
min t
n n
T
w xn w0
Approche primale
Approche duale
17
17
18
18
9
Approche primale
1
arg max
T
min n t n w xn w0
w, w0 w
=1
19
19
Approche primale
1
arg max
w, w0 w
min t
n n w
T
xn w0
=1
1 2
arg min
w
w , w0 2
Équivalent à
T
t.q. t n w xn w0 1 n
20
10
Approche duale:
inclure les noyaux dans SVM
21
21
Approche duale
1 2
arg min
w
w , w0 2
t.q. t n wT xn w0 1 n
On peut enlever les contraintes en introduisant les multiplicateurs de Lagrange
(voir Bishop, Annexe E)
1 2 N
Lw, w0 , a w an t n wT xn w0 1
2
t.q an 0
n 1
22
11
Approche duale
1 2
arg min
w
w , w0 2
T
t.q. t n w xn w0 1 n
On peut enlever les contraintes en introduisant les multiplicateurs de Lagrange
(voir Bishop, Annexe E)
1 2 N
Lw, w0 , a w an t n wT xn w0 1
2
t.q an 0
n 1
23
1 2 N
Lw, w0 , a w an t n wT xn w0 1
2
t.q an 0
n 1
Lw, w0 , a Lw, w0 , a
En annulant les dérivées 0 0
w w0
N N
w an t n xn a t n n 0
n 1 n 1
24
12
1 2 N
Lw, w0 , a w an t n wT xn w0 1
2
t.q an 0
n 1
Lw, w0 , a Lw, w0 , a
En annulant les dérivées 0 0
w w0
N N
w an t n xn a t n n 0
n 1 n 1
on peut exprimer w comme une
combinaison linéaire des entrées
25
On peut alors réécrire Lw, w0 , a comme suit
xn xm
T
N
1 N N
L a an an amtn tm k xn , xm
n 1 2 n 1 m 1
N
où on a toujours an 0 et a t
n 1
n n 0
26
26
13
On peut alors réécrire Lw, w0 , a comme suit
xn xm
T
N
1 N N
L a an an amtn tm k xn , xm
n 1 2 n 1 m 1
N
où on a toujours an 0 et a t
n 1
n n 0
27
xn xm
T
N
1 N N
L a an an amtn tm k xn , xm
n 1 2 n1 m 1
On peut démontrer que la solution à L a satisfait
an 0
tn y xn 1 et an 0
tn y xn 1 0
Implique ou
an tn y xn 1 0
tn y xn 1 et an 0
28
14
xn xm
T
N
1 N N
L a an an amtntm k xn , xm
n 1 2 n1 m 1
On peut démontrer que la solution à L a satisfait
an 0 Vecteurs de support
tn y xn 1 et an 0
tn y xn 1 0
Implique ou
an tn y xn 1 0
tn y xn 1 et an 0
29
tn y xn 1 et an 0 Vecteurs de
Exemple
support
30
30
15
tn y xn 1 et an 0 Vecteurs de
Exemple
support
tn y xn 1 et an 0
31
31
tn y xn 1 et an 0 Vecteurs de
Exemple
support
tn y xn 1 et an 0
32
32
16
tn y xn 1 et an 0 Vecteurs de
Exemple
support
tn y xn 1 et an 0
33
33
34
17
Exemple avec noyau gaussien
Marge
Marge
Marge
Surface de décision
35
Marge
Marge
Marge
Surface de décision
36
18
Exemple avec noyau gaussien
Vecteurs de support
Marge
Marge
Marge
Surface de décision
37
yw x wT x w0
N T
ant n xn x w0
n 1
T
N
ant n xn x w0
n 1
N
ant n k xn , x w0
n 1
38
19
Prédiction avec la représentation duale
yw x wT x w0
N T
ant n xn x w0
n 1
T
N
ant n xn x w0
n 1
N
ant n k xn , x w0
n 1
39
40
40
20
Données non séparables
41
41
1
arg max
w, w0 w
min t
n n
T
w xn w0
=1
1 2
arg min
w
w, w0 2
Équivalent à
T
t.q. t n w xn w0 1 n
42
21
SVM : Approche primale
RAPPEL
1
arg max
w, w0 w
min t
n n w
T
xn w0
=1
Que faire s’il y a :
43
−2
−2 0 2
44
22
Variables de ressort (slack variables)
Permettre que certains exemples ne respectent pas la
contrainte de marge
1 2 N
arg min
1 2
w
arg min
w , w0 , 2
w
C
n 1
n
w, w0 2
Devient
t.q. t n yw xn 1 n
t.q. t n y w xn 1 n
n, n 0
45
1 2 N
arg min
1 2
w
arg min
w , w0 , 2
w
C
n 1
n
w, w0 2
Devient
t.q. t n yw xn 1 n
t.q. t n y w xn 1 n
n, n 0
46
23
Variables de ressort (slack variables)
Permettre que certains exemples ne respectent pas la
contrainte de marge
1 2 N
arg min
1 2 arg min
w C n
w, w0 2
w w , w0 , 2
n 1
Devient
t.q. t n yw xn 1 n
t.q. t n y w xn 1 n
n, n 0
47
1 2 N
arg min
1 2 arg min
w C n
w, w0 2
w w , w0 , 2
n 1
Devient
t.q. t n yw xn 1 n
t.q. t n y w xn 1 n
n, n 0
48
24
Exemple (variables de ressort)
vecteurs de support
49
49
50
50
25
Variables de ressort – représentation primale
1 22 N N
arg min 1 w C C n
arg
w, w0min
, 2 W
W , w , 2 nn 1
0 n 1
t n ytwn yW xxnn11 n nn
t.q. t.q.
n 0 n, n 0
51
51
1 22 N N
arg min 1 w C C n
arg
w, w0min
, 2 W
W , w, 2 nn 1
0 n 1
t.q. n n 1W tnn yw nxnn
t.q. t y
x 1
n 0 n, n 0
52
52
26
Variables de ressort – représentation primale
1 22 NN
arg min
W
w CC max00,1
max ,1 t ntnyywWxxnn
w,,w 0 2
W
nn11
53
53
Constante
N
2
arg min
max
w, w0
0,1 t y
n w
x w
n
n 1
1 2C
54
27
Résumé (SVM sans noyau - primal)
T
• Modèle: y w xn w xn w0
N
• Problème : 1 2
arg min
w C n
w , w0 , 2
n 1
t.q. n 1 tn y w xn
n, n 0
• Hyper-paramètres: C
55
N
• Problème : 1 2
arg min
w C n
w , w0 , 2
n 1
t.q. n 1 tn y w xn
n, n 0
• Hyper-paramètres: C
56
28
Résumé (SVM avec noyau - dual)
T
• Modèle: y w xn w xn w0
N
1 N N
• Problème : arg min
a
n 1
an an amtn tm k xn , xm
2 n 1 m1
N
t.q. C an 0 et antn 0 Plusieurs des an seront à 0
n 1
• Hyper-paramètres: C
57
y(x) y+ ϵ
ξ >0 y
y− ϵ
ξ> 0
58
58
29