SVM Support Vactor Machine Machine Vecteurs Supports Supports

  • Slides: 19
Download presentation
SVM Support Vactor Machine (Machine à Vecteurs Supports) Supports à Vaste Marge Introduite par

SVM Support 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 1/18

SVM - Principe Entrée: Un ensemble d’exemple de n dimensions avec leur classification binaire

SVM - Principe Entrée: Un ensemble d’exemple de n dimensions avec leur classification binaire ensemble (Xi, Yi) i: 1. . N Xi=(xi 1, . . , xim) Yi= 1 m=2 x 2 y=+1 Sortie: Une droite w. x + b = 0 qui sépare les deux classes y=-1 On cherche w et b >0 +b. x w Ainsi la fonction de classification sera f(x) = Signe (w. x+b) =0 +b. x w A. Djeffal (UMKB) <0 +b. x w Si m >2 : On cherche un hyperplan w un vecteur de dimension m b un réel x 1 Data mining - SVM 2012/2013 2/18

SVM - Principe Problème: +ieurs Hyperplans m=2 x 2 y=+1 y=-1 Quel est celui

SVM - Principe Problème: +ieurs Hyperplans m=2 x 2 y=+1 y=-1 Quel est celui qui sépare le mieux les deux classes ? x 1 A. Djeffal (UMKB) Data mining - SVM 2012/2013 3/18

SVM - Principe C’est celui qui maximise la marge m=2 x 2 y=+1 L‘hyperplan

SVM - Principe C’est celui qui maximise la marge m=2 x 2 y=+1 L‘hyperplan H doit donc: 1. Maximiser la marge ( 2 / ||w||2) ma rg e y=-1 w. x+ b= 1 2. Bien classer les Xi Yi (w. Xi + b) 1 w. w. x+ x+ b= b= 0 -1 H- H+ H x 1 Problème d’optimisation quadratique avec contraintes A. Djeffal (UMKB) Data mining - SVM 2012/2013 4/18

SVM - Principe Max ( 2 / ||w||2) Min (||w||2 / 2 ) Yi

SVM - Principe Max ( 2 / ||w||2) Min (||w||2 / 2 ) Yi (w. Xi + b) 1 Lagrange: Calculer Lp 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 A. Djeffal (UMKB) Data mining - SVM 2012/2013 5/18

SVM - Principe D’où on tire Ld Ld doit être maximisé par rapport aux

SVM - Principe 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 Tout ça c’est le cas où les données son linéairement séparables !!! A. Djeffal (UMKB) Data mining - SVM 2012/2013 6/18

SVM - Principe Dans le cas où les données sont linéairement inséparables On effectue

SVM - Principe Dans 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. A. Djeffal (UMKB) Data mining - SVM 2012/2013 7/18

SVM - Principe

SVM - Principe

SVM - Principe On obtient alors: Pour éviter le calcul de et du produit

SVM - Principe On obtient alors: Pour éviter le calcul de et du produit scalaire, on utilise une fonction K appelée Fonction noyau (Kernel): Et Ld devient: A. Djeffal (UMKB) Data mining - SVM 2012/2013 9/18

SVM - Principe Et le problème devient: trouver les i tout en respectant: Une

SVM - Principe Et le problème devient: trouver les i tout en respectant: Une fois les i calculés W et b peuvent être déterminés: Où SV est l'ensemble de vecteurs supports. La décision pour un nouvel exemple x peut être calculé comme suit: A. Djeffal (UMKB) Data mining - SVM 2012/2013 10/18

SVM - Principe A. Djeffal (UMKB) Data mining - SVM 2012/2013 11/18

SVM - Principe A. Djeffal (UMKB) Data mining - SVM 2012/2013 11/18

SVM - Principe Pour déterminer les i on utilise une méthode d’optimisation: Initialiser un

SVM - Principe Pour 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 initiaux 2: 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 12/18

SVM - Principe Plusieurs noyaux sont utilisées: Exemple Linéaire: Polynomial: Gaussien: …. Face à

SVM - Principe Plusieurs noyaux sont utilisées: Exemple Linéaire: Polynomial: Gaussien: …. Face à un problème donnée quel noyau choisir ? On ne sait pas encore !!! A. Djeffal (UMKB) Data mining - SVM 2012/2013 13/18

SVM – Cas multi-classes Si les données appartiennent à plusieurs classes: On doit trouver

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 1 vs. R Une contre une 1 vs 1 Listes de vote Graphes de décision Code correcteurs Arbres de décision A. Djeffal (UMKB) Data mining - SVM 2012/2013 14/18

SVM – Cas multi-classes 1 Vs. R 1 Vs 1 DAG AD A. Djeffal

SVM – Cas multi-classes 1 Vs. R 1 Vs 1 DAG AD A. Djeffal (UMKB) Data mining - SVM 2012/2013 15/18

SVM – Cas mono-classe A. Djeffal (UMKB)

SVM – Cas mono-classe A. Djeffal (UMKB)

SVM – Autres utilisation En plus de son utilisation pour la classification, tel que

SVM – Autres utilisation En plus de son utilisation pour la classification, tel que vu précédemment, Les SVMs peuvent être utilisés pour la régression: x 2 i w i x 1 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 17/18

SVM - Autres utilisation En plus de son utilisation pour la classification, tel que

SVM - Autres utilisation En plus de son utilisation pour la classification, tel que vu précédemment, Les SVMs peuvent être utilisés pour la régression: x 2 i w i x 1 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 Réduction des dimensions des données (ACP) Apprentissage semi – supervisé

SVM - Autres utilisation Réduction des dimensions des données (ACP) Apprentissage semi – supervisé Apprentissage non supervisé (Clustering) A. Djeffal (UMKB) Data mining - SVM 2012/2013 19/18