a.djeffal (umkb)
Post on 11-Jan-2016
31 Views
Preview:
DESCRIPTION
TRANSCRIPT
A.Djeffal (UMKB) Data mining - SVM 2012/2013 1/18
SVMSupport Vactor Machine (Machine à Vecteurs Supports)
Supports à Vaste Marge
Introduite par Vladimir Vapnik en 1995
Solide base théorique
Utilisée notamment dans :La reconnaissance des visages humains, La reconnaissance des caractères manuscrits
La bioinformatique, La médecine, ….
A.Djeffal (UMKB) Data mining - SVM 2012/2013 2/18
SVM - Principe
Entrée: Un ensemble d’exemple de n dimensions avec leur classification binaire ensemble (Xi,Yi) i:1..N Xi=(xi1,..,xim) Yi= 1
m=2
y=+1
y=-1Sortie: Une droite w.x + b = 0 qui sépare les deux classes
On cherche w et b
x1
x2
w.x+b=0
w.x+b>0
w.x+b<0
Si m >2 : On cherche un hyperplan w un vecteur de dimension m b un réel
Ainsi la fonction de classification sera f(x) = Signe (w.x+b)
A.Djeffal (UMKB) Data mining - SVM 2012/2013 3/18
SVM - Principe
m=2
y=+1
y=-1
x1
x2
Problème: +ieurs Hyperplans
Quel est celui qui sépare le mieux les deux classes ?
A.Djeffal (UMKB) Data mining - SVM 2012/2013 4/18
SVM - Principe
m=2
y=+1
y=-1
x1
x2
C’est celui qui maximise la marge
mar
geL‘hyperplan H doit donc:1. Maximiser la marge ( 2 / ||w||2)
2. Bien classer les Xi
Yi (w.Xi + b) 1
H-
H+
H
w.x+b=0
w.x+b=1
w.x+b=-1
Problème d’optimisation quadratique avec contraintes
A.Djeffal (UMKB) Data mining - SVM 2012/2013 5/18
SVM - Principe
Max ( 2 / ||w||2)
Yi (w.Xi + b) 1
Min (||w||2 / 2 )
Yi (w.Xi + b) 1
Lagrange: Calculer Lp
N
iii
N
iiip bxwywL
11
2,
2
1
Où les i constituent les multiplicateurs de Lagrange ( 0)
Lp doit être minimisé par rapport à w et b, et il faut que ses dérivées par rapports à w et b soient nulles
N
iii
p
N
iiii
p
yb
L
xyww
L
1
1
00
0
A.Djeffal (UMKB) Data mining - SVM 2012/2013 6/18
SVM - Principe
jij
N
i
N
iiji
N
iid xxyyL ,
2
1
1 11
D’où on tire Ld
Ld doit être maximisé par rapport aux i
Si on arrive à déterminer les i , on pourra calculer w et b
2
),(max),(max 11
1
iyiy
N
iiii
xwxwb
xyw
ii
Tout ça c’est le cas où les données son linéairement séparables !!!
A.Djeffal (UMKB) Data mining - SVM 2012/2013 7/18
SVM - PrincipeDans le cas où les données sont linéairement inséparables
On effectue une transformation d’espace pour amener les données dans un espace où elles sont linéairement séparables, et on revient au cas précédent.
)( ii xx
SVM - Principe
A.Djeffal (UMKB) Data mining - SVM 2012/2013 9/18
SVM - Principe
)(),(2
1
1 11jij
N
i
N
iiji
N
iid xxyyL
On obtient alors:
Pour éviter le calcul de et du produit scalaire, on utilise une fonction K appeléeFonction noyau (Kernel):
)(),(),( jiji xxxxK
Et Ld devient:
),(2
1
1 11jij
N
i
N
iiji
N
iid xxKyyL
A.Djeffal (UMKB) Data mining - SVM 2012/2013 10/18
SVM - PrincipeEt le problème devient: trouver les i tout en respectant:
La décision pour un nouvel exemple x peut être calculé comme suit:Où SV est l'ensemble de vecteurs supports.
Une fois les i calculés W et b peuvent être déterminés:
A.Djeffal (UMKB) Data mining - SVM 2012/2013 11/18
SVM - Principe
A.Djeffal (UMKB) Data mining - SVM 2012/2013 12/18
SVM - PrincipePour déterminer les i on utilise une méthode d’optimisation:
Initialiser un vecteur des i à 0;L’améliorer progressivement par une heuristique jusqu’à atteindre une solution acceptable
Algorithme plus utilisé SMO (Sequential Minimal Optimization): Améliorer à chaque itération deux i
1: Choisir deux points i et j initiaux2: Calculer leur coefficients i et j
3: Tant que la solution courante n’est pas optimale faire Sélectionner deux nouveaux points Calculer les coefficients associés Fin tant que
A.Djeffal (UMKB) Data mining - SVM 2012/2013 13/18
SVM - Principe
Plusieurs noyaux sont utilisées: Exemple
jiji xxxxK ,),( Linéaire:
mjiji cxxxxK ),(),( Polynomial:
2
2
2),( ji xx
ji exxK
Gaussien:
….
Face à un problème donnée quel noyau choisir ?On ne sait pas encore !!!
A.Djeffal (UMKB) Data mining - SVM 2012/2013 14/18
SVM – Cas multi-classes
Si les données appartiennent à plusieurs classes:
On doit trouver une fonction pour chaque classe (appartient ou non)
A la phase de d’utilisation on utilise généralement l’une des méthodes Une contre reste 1vsR Une contre une 1vs1 Listes de vote Graphes de décision Code correcteursArbres de décision
A.Djeffal (UMKB) Data mining - SVM 2012/2013 15/18
SVM – Cas multi-classes1VsR 1Vs1
DAGAD
A.Djeffal (UMKB)
SVM – Cas mono-classe
A.Djeffal (UMKB) Data mining - SVM 2012/2013 17/18
SVM – Autres utilisation
x1
x2
En plus de son utilisation pour la classification, tel que vu précédemment,Les SVMs peuvent être utilisés pour la régression:
wi
i
Minimiser W et les i,
On utilise le Lagrangien et on se retrouve avec un problème pareil au précédent
A.Djeffal (UMKB) Data mining - SVM 2012/2013 18/18
SVM - Autres utilisation
x1
x2
En plus de son utilisation pour la classification, tel que vu précédemment,Les SVMs peuvent être utilisés pour la régression:
wi
i
Minimiser W et les i,
On utilise le Lagrangien et on se retrouve avec un problème pareil au précédent
A.Djeffal (UMKB) Data mining - SVM 2012/2013 19/18
SVM - Autres utilisation
Réduction des dimensions des données (ACP)
Apprentissage semi – supervisé
Apprentissage non supervisé (Clustering)
top related