(SVM) linéaire - Alexis Lechervy

Download Report

Transcript (SVM) linéaire - Alexis Lechervy

Fouille de données et apprentissage Cours 5: Les Support Vectors Machine (SVM) linéaire

Alexis Lechervy 3 février 2014 Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 1 / 26

Sommaire

1

Les SVM

Introduction

SVM dans le primal

SVM dans le dual

SVM à marge souple

Les SVM

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 1 / 26

Les SVM Introduction

La classification linéaire à deux classes

Objectif L’objectif est de trouver un hyperplan qui sépare au mieux nos deux classes. Le classifieur sera alors la fonction :  h ( x ) =       o x si x est au dessus de l’hyperplan si x est en dessous de l’hyperplan Formalisation mathématique Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 2 / 26 h ( x ) = 1 si h w − 1 sinon , x i + b > 0

Les SVM Introduction

La classification linéaire à deux classes

Objectif L’objectif est de trouver un hyperplan qui sépare au mieux nos deux classes. Le classifieur sera alors la fonction :  h ( x ) =       o x si x est au dessus de l’hyperplan si x est en dessous de l’hyperplan Formalisation mathématique h ( x ) = 1 si h w − 1 sinon , x i + b > 0 Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 2 / 26

Les SVM SVM dans le primal

Le choix d’un hyperplan, un problème dont la solution n’est pas unique.

Alexis Lechervy (UNICAEN) = ⇒ Lequel choisir ?

Fouille de données et apprentissage

3 février 2014 3 / 26

Les SVM SVM dans le primal

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 4 / 26

Les SVM SVM dans le primal

Le meilleur séparateur linéaire

Une idée Si l’ensemble d’apprentissage est linéairement séparable, il existe une infinité d’hyperplan qui séparent les données. Le meilleur hyperplan séparateur est celui le plus écartée des deux ensembles de points.

= ⇒ On choisi l’hyperplan qui maximise la marge (la distance entre le point le plus proche de l’hyperplan et l’hyperplan).

Formulation mathématique = arg max w , b min i { distance du point x i à l’hyperplan ( w , b ) } arg max w , b min i w > x i k w + k b (1) (2) (3) Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 5 / 26

Les SVM SVM dans le primal

L’hyperplan maximisant la marge

La fonction de décision h est invariante par changement d’échelle, on peut donc choisir notre hyperplan tel : Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 6 / 26

Les SVM SVM dans le primal

Changement d’échelle

Supposons que la valeur minimale de notre fonction de décision soit γ : min i y i ( h x i , w i + b ) = γ > 0 .

Dans ce cas, on peut multiplier w et b par 1 γ sans changer la fonction de décision.

On a donc dans ce cas : min i y i ( h x i , w 0 i + b 0 ) = 1 .

Dans ce cas la marge est égale : min i y i ( h x i , w 0 i + b 0 ) k w 0 k = 1 k w 0 k .

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 7 / 26

Maximisation de la marge

Les SVM SVM dans le primal

Maximisation de la marge En conséquence la marge de l’hyperplan est de 1 k w k .

On a donc : max w , b min i w > x i k w + k b = = 1 max w , b k w k min w , b k w k 2 2 (4) (5) (6) Formulation d’un SVM dans le primal Alexis Lechervy (UNICAEN) arg min w , b sous contraintes 1 2 k w k 2 ∀ i , y i ( w > x i + b ) ≥ 1

Fouille de données et apprentissage

3 février 2014 (7) (8) 8 / 26

Les SVM SVM dans le primal

Résolution du problème primal

Le problème primal est un problème quadratique que l’on sais résoudre numériquement. Néanmoins si le nombre d’image est important, la solution sera difficilement calculable en un temps raisonnable.

= ⇒ il faut reformuler le problème différemment pour pouvoir le résoudre numériquement Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 9 / 26

Les SVM SVM dans le dual

Fonctions convexes et ensemble convexes

Dans ce cours nous nous intéressons à des optimisations de fonctions convexes sur des ensembles convexes.

Un ensemble et α ∈ [ 0 , 1 ] Ω est dit convexe si et seulement si pour tout , on a αω 1 + ( 1 − α ) ω 2 ∈ Ω .

ω 1 ∈ Ω , ω 2 ∈ Ω Une fonction α ∈ [ 0 , 1 ] f , on a : Ω f ( 7−→ αω 1 R est convexe si et seulement si + ( 1 − α ) ω 2 ) ≤ α f ( ω 1 ) + ( 1 − α ) ∀ f ω ( 1 ω ∈ 2 ) .

Ω , ∀ ω 2 Exemples de fonctions convexes : x , x 2 , Exemples de fonctions non-convexes : e x ...

√ x , ln x ,sin x , x 3 ...

∈ Ω et Théorème L’ensemble des solutions d’un problème d’optimisation convexe est convexe.

Si f est strictement convexe, le problème d’optimisation convexe a au plus une solution.

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 10 / 26

Les SVM SVM dans le dual

Problème d’optimisation convexe générique

Le problème d’optimisation Soit une fonction f strictement convexe à minimiser sur un ensemble convexe avec contraintes d’inégalité : Ω min s.t.

f ( ω ) ω ∈ g i ( ω ) ≤ 0 Ω ∀ i (9) (10) Hypothèses On suppose f et ∀ i g i différentiable.

On suppose l’existence d’un g i ( ω ) ≤ 0.

ω ?

minimisant f en respectant les contraintes Deux types de contraintes Les contraintes saturés g i ( ω ?

) = 0 ∀ i Les contraintes non saturés g i ( ω ?

) < 0 ∈ ∀ E i ∈ I Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 11 / 26

Les SVM SVM dans le dual

Le gradient de

f

à l’optimal

Le gradient Le gradient de f correspond à la dérivée de f dans chaque direction de la base : ∂ ∂ω f = ( ∂ ∂ω 1 f , · · · Le gradient de f ∂ , f ) .

∂ω d est un vecteur pointant dans la direction de plus forte pente croissante.

Supposons que nous sommes arrivé à l’optimum permettent de continuer à minimiser la fonction f ω ?

, les seuls directions qui viole une des contraintes saturés. En effet si il était possible de faire varié la fonction en suivant les contraintes g i ( ω ) = 0 ∀ i ∈ E alors on aurait un ω = ω ?

tel que f ( ω ) < f ( ω ?

) .

Par conséquence le gradient de ∂ ∂ω g i ( ω ) ∀ i ∈ E .

f à l’optimum est une combinaison linéaire de ∂ ∂ω f ( ω ?

) = − X i ∈ E α i ∂ g i ( ω ∂ω ?

) Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 12 / 26

Les SVM SVM dans le dual

Le gradient de

f

à l’optimal (suite)

On peut réécrire l’équation suivante ∂ ∂ω f ( ω ?

) = − X α i ∂ g i ( ω ?

) ∂ω i ∈ E par : avec α i quand g i ( ω ) < 0 .

∂ ∂ω f ( ω ?

) + X i ∈ E ∪ I α i ∂ g i ( ω ?

) ∂ω = 0 Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 13 / 26

Les SVM SVM dans le dual

Les conditions de Karush-Kuhn-Tucker (KKT)

Les conditions de Karush-Kuhn-Tucker Soit un problème d’optimisation convexe : arg min s.t.

X f ( X ) g ( X ) ≤ 0 (11) (12) les solutions de ce problèmes vérifie les conditions de KKT : 1 2 3 On défini le lagrangien comme étant la fonction L ( X , α ) = f ( X ) + P i α i g i ( X ) où α i ≥ 0 sont les multiplicateurs de Lagrange.

Conditions du 1er ordre : maximiser dérivées selon X : ∂ f ( X ) ∂ X + P i α i ∂ g L ∂ i ( X sans contrainte, reviens à annuler les X ) = 0 .

Conditions supplémentaires : min ( α i , g i ( X )) = 0 .

Si la contrainte n’est pas saturé, le multiplicateur de Lagrange doit être nul.

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 14 / 26

Les SVM SVM dans le dual

Le lagrangien

Le lagrangien On peut réécrire le problème précédent à l’aide d’un Lagrangien.

Le lagrangien est la somme de la fonction objectif et d’une combinaison linéaire des contraintes : L ( w , b , α ) = 1 2 k w k 2 − X α i i y i ( w > x i + b ) − 1 Les coefficients duales.

α i ≥ 0 sont appelées multiplicateurs de Lagrange ou variables Lien avec le problème primal Les solution du problème primal correspondent à un point-selle du lagrangien (il faut le minimiser par rapport aux variables primales w et b et le maximiser par rapport aux variables duales α i ).

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 15 / 26

Les SVM SVM dans le dual

Expression d’un SVM dans le dual

Un point selle est un point où la dérivée s’annule. On a donc : ∂ ∂ w L ( w , b , α ) = 0 et ∂ ∂ b L ( w , b , α ) = 0 Par conséquence on trouve : w X α i y i i = = X α i y i x i et i 0 (13) (14) Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 16 / 26

Les SVM SVM dans le dual

Expression d’un SVM dans le dual

En substituant les deux équations du slide précédent dans la formule du primal au obtient une version sans les variables primales : Formulation dual d’un SVM arg max α s.t

X α i − 1 2 X α i α j y i y j h x i , x j i i i , j α i ≥ 0 ∀ i X α i y i = 0 i (15) (16) (17) Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 17 / 26

Les SVM SVM dans le dual

Remarques sur l’expression dans le dual

Remarques générales En pratique, seuls les points qui sont sur les hyperplans frontière h x i , w i + b = ± 1 jouent un rôle, car les multiplicateurs de Lagrange sont non nuls pour ces seuls points.

On appel ces points des vecteurs de supports ou des exemples critiques.

w s’exprime uniquement à l’aide des vecteurs de supports. Ce qui est confirmé par notre intuition.

Résolution du problème dual Résolution numérique possible de ce problème quadratique : SVM-Light de Joachim SMO de Platt libSVM LaSVM quadprog de Matlab...

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 18 / 26

Les SVM SVM dans le dual

Classifieur final dans le dual

Le classifieur h ( x ) = h w , x i + b = X α i y i h x i , x i + b i et on obtient b en utilisant n’importe quel point critique : y i ( h x i , w i + b ) = 1 = ⇒ b = 1 y i − X α j y j x j > x i j Remarque sur la solution L’hyperplan solution ne requiert que le calcul des produits scalaires entre des vecteurs de l’espace d’entrée.

h x , x i i La solution ne dépend plus de la dimension d nombre de vecteur support.

de l’espace d’entée, mais du Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 19 / 26

Les SVM SVM à marge souple

Comment faire dans un cas non-linéairement séparable ?

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 20 / 26

Les SVM SVM à marge souple

Relâcher la contrainte, utiliser des variables ressorts

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 21 / 26

SVM à marge souple

Les SVM SVM à marge souple

Principe Dans le cas non linéairement séparable et à condition de rechercher une séparation linéaire, on introduit des variables d’écart : y i ( h w , x i i + b ) ≥ 1 − ξ i Les anciens contraintes sont violés si ( x i , y i ) est dans la bande de séparation de l’hyperplan mais est du bon côté ( x i , y i ) est du mauvais côté de l’hyperplan = ⇒ le but est de minimiser les erreurs de classification P i étant non continue et non différentiable, on l’approxime par 1 ξ> 0 . Cette fonction P i ξ i .

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 22 / 26

SVM à marge souple

Les SVM SVM à marge souple

Problème d’optimisation d’un SVM à marge souple dans le primal arg min w , b s.t.

1 2 k w k 2 + C X ξ i i y i ( h w , x i i + b ) ≥ 1 − ξ i ξ i ≥ 0 ∀ i ∀ i où C ≥ 0 est un compromis entre la marge possible entre les exemples et le nombre d’erreurs admissibles.

(18) (19) (20) Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 23 / 26

Les SVM SVM à marge souple

Lagrangien d’un SVM à marge souple

Problème d’optimisation d’un SVM à marge souple dans le primal arg min w , b s.t.

1 2 k w k 2 + C X ξ i i y i ( h w , x i i + b ) ≥ 1 − ξ i ξ i ≥ 0 ∀ i ∀ i où C ≥ 0 est un compromis entre la marge possible entre les exemples et le nombre d’erreurs admissibles.

(21) (22) (23) Lagrangien L ( w , b , ξ, α, β ) = 1 2 k w k 2 + C X ξ i i − X α i ( y i ( h w , x i i + b ) + ξ i − 1 ) − X β i ξ i i i avec ∀ i α i ≥ 0 et β i ≥ 0 les multiplicateurs de Lagrange.

Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 24 / 26

Les SVM SVM à marge souple

A l’optimum

Les dérivés des variables primal s’annulent à l’optimum : ∂ ∂ w L ( w , b , ξ, α, β ) ∂ ∂ b L ( w , b , ξ, α, β ) ∂ ∂ξ L ( w , b , ξ, α, β ) = = = w − X α i y i α i x i = 0 i − X α i y i = 0 i C − α i − β i = 0 (24) (25) (26) = ⇒ Malgré l’introduction des multiplicateurs de Lagrange équations similaires au SVM à marge rigide.

β i , on retrouve des Cependant, nous avons des contraintes additionnelles. En effet, il faut avoir car ce sont des multiplicateurs de Lagrange. On a donc C − α i = β i ≥ β i ≥ 0 ce qui nous impose alors d’avoir 0 ≤ α i ≤ C .

0 Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 25 / 26

Les SVM SVM à marge souple

SVM à marge souple dans le dual

Formulation dual d’un SVM à marge souple arg max α s.t

X α i − 1 2 X α i α j y i y j h x i , x j i i i , j C ≥ α i ≥ 0 X α i y i = 0 ∀ i i (27) (28) (29) Alexis Lechervy (UNICAEN)

Fouille de données et apprentissage

3 février 2014 26 / 26