introduction a l’apprentissage automatique` classification
TRANSCRIPT
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Introduction a l’apprentissage automatiqueClassification par modeles lineaires
Cecile Capponi, equipe Qarma
Laboratoire d’Informatique et des SystemesUniversite d’Aix-Marseille
15 fevrier 2019
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Plan de la seance
1 IntroductionDiscriminants lineaires : generalites
2 Le perceptron
3 Les separateurs a vaste marge
4 Vers des methodes non lineaires : teasing
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Plan
1 IntroductionDiscriminants lineaires : generalites
2 Le perceptron
3 Les separateurs a vaste marge
4 Vers des methodes non lineaires : teasing
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Notations
Du cas 1 dimension au cas d dimensions : chez les informaticiens
x un scalaire, x = 5.07824
x un vecteur, x =
x1
x2
· · ·xd
, transpose : xT = (x1, x2, · · · , xd)
M une matrice, M =
x1,1 x1,2 · · · x1,d
x2,1 x2,2 · · · x2,d
· · · · · · · · · · · ·xn,1 xn,2 · · · xn,d
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Rappels : espaces vectoriels
u, v,w, c sont des vecteurs
w = u− v (vecteurs rouges)
c = 12 (u + v) (en bleu)
Ici, 0 < λ < 1
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Rappels : produit scalaire
Soit deux vecteurs u et v de l’espace X = Rd .
〈u, v〉 = u.v =d∑
i=1
uivi
Proprietes inherentes produit scalaire
Peut etre vu comme une similarite
Munit l’espace X d’une structure !
Definit une norme ||.|| sur X : ||u|| =√〈u,u〉
Proprietes algebriques du produit scalaire
Symmetrique : 〈u, v〉 = 〈v,u〉Bilineaire :〈α1u1 + α2u2, v〉 = α1〈u1, v〉+ α2〈u2, v〉Positif : 〈u,u〉 ≥ 0
Defini : 〈u,u〉 = 0⇒ u = 0
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Rappels : produit scalaire (suite)
Produit scalaire et orientation de vecteurs
〈u− v, e〉 > 0 : u− v et e vont dans le meme sens
〈u− v, f〉 = 0 : u− v et f sont orthogonaux
〈u− v,g〉 < 0 : u− v et g vont dans des sens opposes
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Un simple classifieur lineaire
Centres de gravite des classes
c+ = 1n+∑
i:yi=+1 xi
c− = 1n−∑
i:yi=−1 xi
c = 12 (c
+ + c−)w = c+ − c−
Fonction de decision
Elle classe chaque x dans la classe qui a le centre le plus proche
Pour x ∈ X , il suffit de prendre le signe du produit scalaire entre w etx− cSi h(x) = 〈w, x− c〉, on a le classifieur f (x) = sign(h(x))Hyper-plan en pointilles (H), de vecteur normal w, est la surface dedecision
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Classifieurs (discriminants) lineaires
Definition
Un classifieur lineaire s’appuie sur une surface de decision g qui opere uneseparation des donnees selon le cote de cette surface ou se situent les points
Fonde sur une combinaison lineaire des entrees
Combinaison definie par w un vecteur, w =
w1
w2
· · ·wd
Surface de decision g(x) = wT x + w0 = 〈w, x〉+ w0
Simplification de notation matricielle : ajout d’une composante constante1 comme premiere composante de x (pour absorber le biais w0 dans w)
simplifie l’ecriture g(x) = wT x avec x←
x0 = 1
x1
x2
· · ·xd
et w←
w0
w1
· · ·wd
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Interpretation geometrique
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Proprietes
Proprietes autour de l’hyperplan g(x) = wT x + w0 = 0
w est le vecteur normal de l’hyperplan, et definit sa direction
w0 definit la distance de l’hyperplan a l’origine des axes. On observe :D = −w0
||w|| est la distance signee de l’hyperplan a l’origine des axes−D est la distance signee de l’origine des axes a l’hyperplan
Pour tout point xα, on a :g(xα) = wT
||w||xα est la projection de xα sur l’hyperplan selon la directionindiquee par le vecteur normal wd(xα) = g(xα)
||w|| est la distance signee du point x a l’hyperplanseparateur : concept lie a la notion de marge.
L’ecart de l’hyperplan a l’origine, indique par w0, est parfois appele lebiais, et indique par la variable b.
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Apprentissage d’un discriminant (classifieur) lineaire
Comment apprendre l’equation de l’hyperplan separateur a partir d’unechantillon de donnees S iid?
Quelques approches repandues
Estimateurs bayesiens bases sur des a priori sur distributions
Discriminant de Fisher
Regression logistique
Perceptron
Separateurs Vaste Marge (SVM)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Plan
1 IntroductionDiscriminants lineaires : generalites
2 Le perceptron
3 Les separateurs a vaste marge
4 Vers des methodes non lineaires : teasing
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Initialement, imitation du fonctionnement d’un neurone
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Apparition du perceptron et ensuite
Rapide historique du connexionisme
Rosenblatt (1958) : perceptron et apprentissage ; Widrow & Hoff
Minski & Papert (1969) : critique forte des perceptrons
Cartes de Kohonen (1984)
Rumelhart & McClelland & LeCun & Hinton & Parker (1986) :retro-propagation du gradient : perceptrons multi-couches
Machine de Bolzman (1985)
Avenement du deep learning (2012)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Perceptron = un algorithme d’apprentissage de discriminant lineaire,cas binaire
Hypothese : les donnees sont lineairement separables
Limites d’expressivite
Classifieurs lineaires a priori tres peu expressifs : pourquoi des donneesnaturelles se repartiraient-elles de part et d’autres d’un hyperplan?
Intuition pas forcement verifiee en tres grande dimension. Cf. TP1.
Plonger les donnees dans un espace de grande dimension (section 4)
A complex pattern-classification problem, cast in a high-dimensionalspace nonlinearly, is more likely to be linearly separable than in a low-dimensional space, provided that the space is not densely populated.(T.M. Cover, 1965)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Cas extreme de donnees non lineairement separables : le XOR
Le XOR, releve dans le papier de Minsky
S = {((0, 0),−1), ((1, 0), 1), ((0, 1), 1), ((1, 1),−1)} n’est pas lineairementseparable (XOR).
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Donnees lineairement separables : resultat
Lemme
Si des donnees S = SP ∪ SN sont lineairement separables, on peut trouverun hyperplan separateur tel qu’aucune donnee ne soit sur la frontiere dedecision.
Preuve
Soit (w, b) tel que
∀x ∈ SP , 〈w, x〉+ b ≥ 0 et
∀x ∈ SN , 〈w, x〉+ b < 0
et soit ε = min{−(〈w, x〉+ b)|x ∈ SN}. Alors :
〈w, x〉+ b +ε
2
≥ ε
2> 0 ∀ x ∈ SP
≤ − ε2< 0 ∀ x ∈ SN
Ainsi le classifieur lineaire (w, b + ε2 ) satisfait le lemme.
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Remarques importantes
Au dela de l’apprentissage
Les isometries et les homotheties preservent la separabilite.
En rajoutant une dimension, on peut supposer que les hyperplansseparateurs passent par l’origine : ajouter une coordonnee x0 = 1 a tousles exemples et poser w0 = b. On parlera d’echantillon complete.
Separer des donnees lineairement separables peut etre resolu en tempspolynomial par un algorithme de programmation lineaire : chaqueexemple (xi , yi) fournit une contrainte lineaire yi(〈w, xi〉+ b) > 0.
Il existe une infinite d’hyperplans separant un echantillon separable : ilsne sont pas equivalents du point de vue de l’apprentissage.
Illustration classique
Entre ces deux solutions, laquelle est la meilleure ?
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Algorithme d’apprentissage du Perceptron (Rosenblatt, 1958)
Entree
S = SP ∪ SN ⊂ Rd+1 × {−1, 1} un echantillon complete lineairementseparable.
Principe de l’algorithme
Mise a jour iterative des coefficients w de l’equation de l’hyperplanseparateur (w=classifieur lineaire)
Si (x, y) ∈ SP est mal classe, 〈w, x〉 < 0 et il faudrait augmenter 〈w, x〉,si (x, y) ∈ SN est mal classe, 〈w, x〉 ≥ 0 et il faudrait diminuer 〈w, x〉,
Idee : prendre wnew = w + xy , et ainsi :
dans le premier cas, on a 〈wnew , x〉 = 〈w, x〉+ ||x||2
dans le second cas, on a 〈wnew , x〉 = 〈w, x〉 − ||x||2
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Algorithme d’apprentissage du Perceptron
Algorithme original d’apprentissage du Perceptron
ENTREE : S = {(x1, y1), . . . , (xn, yn)}, un echantillon complete supposelineairement separable de Rd+1 × {−1, 1}w0 = 0 ∈ Rd+1, k = 0REPETER
POUR i = 1A nSI yi〈wk , xi〉 ≤ 0 (mal classe) ALORS
wk+1 = wk + yixi
k = k + 1FINPOUR
JUSQU’A ce qu’il n’y ait plus d’erreursSORTIE : wk+1
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Exercice
Utilisez l’algorithme du perceptron pour separer l’echantillon{((0, 0),−1), ((0, 1), 1), ((1, 0), 1), ((1, 1), 1)}. Dessinez l’hyperplan obtenu.
k wk xk mal classe yk
0 0 0 0 0 0 1 -11 0 0 -1 . . . . . .
. . . . . . . . . . . .
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Proprietes de cet algorithme
Vocabulaire et proprietes
L’algorithme du Perceptron est une procedure on-line, par correctiond’erreurs (error-driven).
L’algorithme est correct et complet : lorsqu’il converge, l’hyperplanretourne separe les donnees fournies en entree ; si S est lineairementseparable, l’algorithme converge.
Dans le pire des cas, le nombre d’iterations est egal a(n + 1)22(n+1) log(n+1). Complexite exponentielle !
Tres mauvaise tolerance au bruit
La notion de marge
distance entre chaque pointxα et son projete selon w surla surface de decision
notion de distance minimaleautorisee : la marge
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
La notion de marge
Proprietes de la marge
Astuce : On peut multiplier l’equation 〈w, x〉+ b = 0 d’un hyperplan par unreel non nul sans modifier l’hyperplan qu’elle definit.
On peut donc supposer que w verifie ||w|| = 1.
Dans ce cas, la distance d’un exemple (x, y) a un hyperplan separateurw est egale a
y(〈w, x〉+ b)
d(M,H) = yM〈w, xM − xH〉= yM(〈w, xM〉+ b)
puisque 〈w, xH〉+ b = 0.
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Complexite de l’algorithme et marge
Theoreme (de Novikoff)
Soit S = {(x1, y1), . . . , (xn, yn)} un echantillon d’apprentissage non trivial (i.e.si y ∈ {−1,+1}, ∃i , j tq yiyj = −1). Supposons que :
∀i , ||xi || ≤ 1 et
∃w, b, γ > 0 tels que ∀i , yi(〈w, xi〉+ b) ≥ γAlors le nombre d’erreurs (yi(〈wk , xi〉+ bk ) ≤ 0) commises pendantl’execution de l’algorithme est au plus egal a (2/γ)2.
Remarques
γ est une borne inferieure de la marge du probleme
Quelles que soient les donnees, on peut toujours se ramener au moyend’une homothetie-translation au cas ou Max ||xi || = 1 (on se ramenedans une sphere de rayon 1)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Complexite de l’algorithme et marge (suite)
Exemple
Soit S = {((0, 0),−1), ((0, 1), 1), ((1, 0), 1), ((1, 1), 1)}.Au moyen d’une translation de vecteur (−1/2,−1/2) suivie d’unehomothetie de rapport
√2, on obtient l’echantillon equivalent
S = {((−√
22 ,−
√2
2 ),−1), ((−√
22 ,√
22 ), 1), ((
√2
2 ,−√
22 ), 1), ((
√2
2 ,√
22 ), 1)}.
On a bien Max ||xi || = 1. On verifie que la marge du probleme est egalea 1/2.
Ici, le theoreme predit que le nombre de corrections de l’algorithme estinferieur ou egal a 8.
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Remarque
L’hypothese finale est une combinaison lineaire des exemplesd’apprentissage.
w =n∑
i=1
αiyixi
Les nombres αi sont positifs et egaux au nombre de fois ou une mauvaiseclassification de xi a entraıne une mise a jour du perceptron. Ils peuvent etrevus comme une representation duale de la solution :
f (x) = sgn(〈w, x〉+ b) = sgn
(n∑
i=1
αiyi〈xi , x〉+ b
).
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Forme duale de l’algorithme du perceptron
Forme duale de l’algorithme du perceptron
ENTREE : S = {(x1, y1), . . . , (xn, yn)}, un echantillon completelineairement separableα = 0 ∈ Rn
REPETERPOUR i = 1A n
SI yi(∑n
j=1 αjyj〈xj , xi〉) ≤ 0 ALORS
αi = αi + 1FINSI
FINPOURJUSQU’A ce qu’il n’y ait plus d’erreursSORTIE : α
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Exercice
Utilisez cette forme duale de l’algorithme du perceptron pour separerl’echantillon {((0, 0),−1), ((0, 1), 1), ((1, 0), 1), ((1, 1), 1)}. Dessinezl’hyperplan obtenu.
k αk xk mal classe yk
0 0 0 0 0 0 0 1 -11 1 0 0 0 . . . . . .
. . . . . . . . . . . .
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Proprietes de l’algorithme dual
dans la representation duale, le nombre de parametres de la solution nedepend pas de la dimension de l’espace dans lequel les xi sont plonges,
les exemples d’apprentissage ne sont pris en compte par l’algorithmeque par l’intermediaire de leurs produits scalaires.
On appelle Matrice de Gram la matrice G = (〈xi , xj〉)1≤i,j≤l : elle suffit atrouver une solution.
Focus sur la similarite (proximite ?) entre exemples, capacite arepresenter la matrice de Gram
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Perceptron en classification binaire : resume
(x1, . . . , xn) 7−→ y = sign(w0 + 〈w, x〉)
Les perceptrons ne sont pas capables de resoudre des tachescomplexes :
Deux algorithmes (forme primale et forme duale)
Convergence seulement en cas de separabilite lineaire de l’echantillon
Associer plusieurs perceptrons : perceptron multi-couches ou reseauxde neurones
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Plan
1 IntroductionDiscriminants lineaires : generalites
2 Le perceptron
3 Les separateurs a vaste marge
4 Vers des methodes non lineaires : teasing
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Separateurs Vaste Marge [Boser et al., 1992]
Une revolution !
Classification a base de vecteurs supports, maximisation de la marge
Marge dure et marge douce
Optimisation convexe, programmation quadratique
Theorie statistique de l’apprentissage
Capacite augmentee grace aux fonctions noyaux
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
SVM a marge dure (hard margin linear SVM)
Cadre de la classification lineaire
Espace d’entrees X muni du produit scalaire (par exemple X = Rd )
Espace des cibles Y = {−1,+1}Un echantillon S = {(xi , yi)}n
i=1 suppose lineairement separable
Objectif : trouver l’hyper-plan optimal au sens de la marge (parmi une infinite)
On cherche a maximiser la marge : que la distance au plus proche des pointsde S soit maximale
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Cela se ramene a un probleme d’optimisation convexe
Definition : hyperplan canonique selon S
Un hyperplan w.x + b = 0 est dit canonique selon S si le plus prochedes points de S est a la distance unitaire de cet hyperplan
minxi∈S |w.xi + b| = 1
On se souvient que la marge d’un hyperplan separateur canonique estegale a 2
||w||
Formulation du probleme primal d’optimisation
Maximiser la marge = minimiser la norme de w
argminw,b
12||w||2
en respectant les contraintes lineaires suivantes :
w.xi + b ≥ +1 si yi = +1
w.xi + b ≤ −1 si yi = −1
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Cela se ramene a un probleme d’optimisation convexe
Definition : hyperplan canonique selon S
Un hyperplan w.x + b = 0 est dit canonique selon S si le plus prochedes points de S est a la distance unitaire de cet hyperplan
minxi∈S |w.xi + b| = 1
On se souvient que la marge d’un hyperplan separateur canonique estegale a 2
||w||
Formulation du probleme primal d’optimisation
Maximiser la marge = minimiser la norme de w
argminw,b
12||w||2
en respectant les contraintes lineaires suivantes :
w.xi + b ≥ +1 si yi = +1
w.xi + b ≤ −1 si yi = −1
Equivalentes a, pour tout i :
yi(w.xi + b) ≥ +1
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Resolution du probleme primal des SVM marges dures
Probleme d’optimisation quadratique convexe avec contraintes lineaires
Pas de solution analytique
Plusieurs methodes de resolution (gradient conjugue, point interieur,etc.)
Non operationnel si d >> n grand
Valable seulement si les donnees sont lineairement separables
Solution dans Rn (convexe) : forme duale
Integrer les contraintes lineaires dans la fonctionnelle. Si w ∈ Rd ,α ∈ Rn+,
Le lagrangien L(w,α) = φ(w) +αψ(w) ou la fonction ψ(.) representeles n contraintes
Methode eprouvee, conditions de Kursh-Kuck-Tucker (KKT)
Obtention d’un probleme d’optimisation a n variables
Resoudre la forme duale permet de resoudre la forme primale
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Probleme dual des SVM marges dures
Les multiplicateurs de Lagrange
La solution w, b peut etre obtenue en resolvant le probleme suivant :
minw,b
maxα≥0
L(w, b,α)
avec
L(w, b,α) :=12‖w‖2 −
n∑i=1
αi [yi (w · xi + b)− 1]
Les αi ’s (≥ 0) sont les multiplicateurs de Lagrange, un par contrainte
Autre formulation du probleme d’optimisation contrainte
si une contrainte est violee, i.e., yi (w · xi + b)− 1 < 0 pour un i , alors lavaleur de la fonction objectif maxα≥0 L(w, b,α) is +∞ (pour αi → +∞)Le w et le b optimaux verifient necessairement yi (w · xi + b)− 1 ≥ 0
de plus, si yi (w · xi + b)− 1 > 0 pour un exemple i , alors αi = 0 : unefois encore, regardons la fonction maxα≥0 L(w, b,α)→ au point solutionαi [yi (w · xi + b)− 1] = 0 (KKT conditions)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Resolution du probleme des SVM marges dures
Permutons le min et le max
On peut montrer que L est convexe selon w et b, et concave selon α, ce quirend possible :
minw,b
maxα≥0
L(w, b,α) = maxα≥0
minw,b
L(w, b,α)
avec les memes points optimaux
Fonction convexe a minimiser : illustration
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Resolution du probleme des SVM marges dures
Permutons le min et le max
On peut montrer que L est convexe selon w et b, et concave selon α, ce quirend possible :
minw,b
maxα≥0
L(w, b,α) = maxα≥0
minw,b
L(w, b,α)
avec les memes points optimaux
Annuler le gradient
minw,b
L(w, b,α) = minw,b
12‖w‖2 −
n∑i=1
αi [yi (w · xi + b)− 1]
est un probleme d’optimisation strictement convexe. Il suffit de trouver lesbons w et b qui menent le gradient de la fonctionnelle a 0 pour obtenir lasolution.
∇wL(w, b,α) = w−∑
i αiyixi = 0 ⇒ w =∑
i αiyixi
∇bL(w, b,α) =∑
i yiαi = 0 ⇒∑
i yiαi = 0
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Resolution du probleme des SVM marges dures
Permutons le min et le max
On peut montrer que L est convexe selon w et b, et concave selon α, ce quirend possible :
minw,b
maxα≥0
L(w, b,α) = maxα≥0
minw,b
L(w, b,α)
avec les memes points optimaux
Un programme quadratique dual
En injectant la valeur optimale de w et la contrainte comme solution du min,on obtient le probleme suivant :
maxα
n∑i=1
αi −12
n∑i,j=1
yiyjαiαjxi · xj
s.t.n∑
i=1
αiyi = 0 and α ≥ 0
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
A propos de la formulation duale et des vecteurs supports
Programme quadratique convexe
maxα
n∑i=1
αi −12
n∑i,j=1
yiyjαiαjxi · xj
s.t.n∑
i=1
αiyi = 0 and α ≥ 0
Remarque
Autant de variables d’optimisation que d’exemples d’apprentissage !
Seuls des produits scalaires apparaissent !
b∗ est trouve via les conditions KKT
w∗ =∑n
i=1 α∗i yixi , f (x) =
∑ni=1 α
∗i yixi · x + b∗
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
A propos de la formulation duale et des vecteurs supports
Remarque
Autant de variables d’optimisation que d’exemples d’apprentissage !
Seuls des produits scalaires apparaissent !
b∗ est trouve via les conditions KKT
w∗ =∑n
i=1 α∗i yixi , f (x) =
∑ni=1 α
∗i yixi · x + b∗
Vecteurs supports
support vectors
margin = 2 / ||w||
w.x + b = 0
Les vecteurs supports sont ces points (exemples) pour lesquels α∗i > 0
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
A propos de la formulation duale et des vecteurs supports
Remarque
Autant de variables d’optimisation que d’exemples d’apprentissage !
Seuls des produits scalaires apparaissent !
b∗ est trouve via les conditions KKT
w∗ =∑n
i=1 α∗i yixi , f (x) =
∑ni=1 α
∗i yixi · x + b∗
Solution a base de vecteurs supports : remarques essentielles
La solution (le classifieur !) ne repose que sur les vecteurs (exemples) ipour lesquels αi 6= 0
Ce sont les exemples de S les plus difficiles a classer
C’est une solution parcimonieuse
Ajouter ou supprimer des exemples faciles dans S ne change pas lasolution !
Bonne resistance au bruit (marges douces...)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Les SVM a marge douce
Pallier elegamment la presence d’outliers
support vectors
margin = 2 / ||w||
w.x + b = 0
outliers
Variables de relachement (slack variables) ; norme 1
minw,b,ξ≥0
12‖w‖2 + C
n∑i=1
ξi
tq yi [w · xi + b] ≥ 1− ξi
avec C > 0
maxα
n∑i=1
αi −12
n∑i,j=1
yiyjαiαjxi · xj
s.t.n∑
i=1
αiyi = 0 et 0 ≤ α ≤ C
(memes principes que precedemment)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Les SVM a marge douce
Pallier elegamment la presence d’outliers
support vectors
margin = 2 / ||w||
w.x + b = 0
outliers
Variables de relachement (slack variables) ; norme 2
minw,b,ξ
12‖w‖2 + C
n∑i=1
ξ2i
s.t. yi [w · xi + b] ≥ 1− ξi
avec C > 0
maxα
n∑i=1
αi −12
n∑i,j=1
yiyjαiαj
(xi · xj +
δij
C
)
s.t.n∑
i=1
αiyi = 0 and α ≥ 0
(memes principes que precedemment)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Les SVM a marge douce
Pallier elegamment la presence d’outliers
support vectors
margin = 2 / ||w||
w.x + b = 0
outliers
(P. Mahe)Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Les SVM a marge douce
Pallier elegamment la presence d’outliers
support vectors
margin = 2 / ||w||
w.x + b = 0
outliers
Forme primale sans contraintes, norme 1
minw,b
12‖w‖2 + C
n∑i=1
|1− yi (w · xi + b)|+ , avec |θ|+ = max(θ, 0)
convexe, non-differentiable
Forme primale sans contraintes, norme 2
minw,b
12‖w‖2 + C
n∑i=1
|1− yi (w · xi + b)|2+
convexe, differentiable
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Methodes de resolution de la forme duale norme 2
Un probleme d’optimisation convexe sans contrainte
O(n3) (independant de d !) quand C est grand, plutot O(n2) quand C est petithttps://www.cs.utah.edu/˜piyush/teaching/svm-solvers.pdf
Stockage et/ou calcul de la matrice de Gram (n2 a n3)
SMO (analytique, Hessienne, convergence sans garantie en temps)
LASVM (solution sous-optimale, OK en memoire),
SimpleSVM (limitation memoire)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Plan
1 IntroductionDiscriminants lineaires : generalites
2 Le perceptron
3 Les separateurs a vaste marge
4 Vers des methodes non lineaires : teasing
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Que faire lorsque les donnees ne sont pas lineairement separables?
Principe : plongement des donnees dans un autre espace
Puis utilisation des algorithmes de classification lineaire
Regression lineaire generalisee : ajout ad-hoc de variables
Plus generalement (et encadre theoriquement) : astuce du noyau :plongement des donnees dans un autre espace dans lequel le produitscalaire existe !
Combinaison (parfois) lineaire de classifieurs
On apprend plusieurs classifieurs et on les combine dans l’objectif deminimiser l’erreur (empirique ou en generalisation)
Reseaux de neurones
Methodes ensemblistes
Deriver des algorithmes & theories depuis les resultats en separation lineaire
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Plongements et methodes ensemblistes : illustrations
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
L’astuce du noyau (kernel trick)
Soit un ensemble de donnees non lineairement separableS = {(x1, y1), . . . , (xn, yn)}
Comment apprendre un classifieur non-lineaire
Choisir une transformation non-lineaire φ : X → H
x 7→ φ(x)
ou H est un espace muni de l’operation produit-scalaire (〈·, ·〉H), appeleespace des caracteristiques
trouver un classifieur lineaire dans H pour classer
{(φ(x1), y1), . . . , (φ(xn), yn)}
pour classer un point test x de X , considerer φ(x)feature spa e Hinput spa e X �Cecile Capponi, equipe Qarma
Introduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
L’astuce du noyau (kernel trick)
Classification lineaire dans l’espace des caracteristiquesfeature spa e Hinput spa e X �Implementer un algorithme lineaire connu (perceptron, SVM) dans H :
h(x) =∑
i=1,...,n
αi〈φ(xi), φ(x)〉H + b
Comment trouver cette transformation φ?
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
L’astuce du noyau (kernel trick)
Les noyaux de Mercer !
L’astuce du noyau peut etre appliquee s’il existe une fonction k : X × X → Rtelle que : k(u, v) = 〈φ(u), φ(v)〉HSi elle existe, alors il suffit de remplacer syntaxiquement toutes lesoccurrences de 〈φ(xi), φ(x)〉H par k(xi , x)
Finalement, on se concentre plus sur k que sur φ !
La fonction noyau k doit verifier la propriete de Mercer pour etre valides
∃ un espace H et une transformation φ : X → H t.q.k(u, v) = 〈φ(u), φ(v)〉H
l’experience a montre que cela peut fonctionner meme sans cette garantieactuellement, la recherche progresse vers l’utilisation de noyaux semi-definis
La fonction noyau k peut etre consideree comme une mesure desimilarite
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
L’astuce du noyau (kernel trick)
separating surfaceone possible separating hyperplaneno separating hyperplane
input spa e X input spa e Xfeature spa e H�La recette de l’astuce du noyau
Choisir un algorithme de classification lineaire (exprime en termes de〈·, ·〉)Remplacer chaque occurence de 〈·, ·〉 par un noyau k(·, ·)
Classifieur obtenu :
f (x) = sign
∑i=1,...,n
αik(xi , x) + b
Cecile Capponi, equipe Qarma
Introduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Rappelons nous du simple classifieur lineaire, et “kernelisons le”
class -1class +1
X (= R 2) �x +w (H) c+ = 1n+
∑{i:yi=+1}
xi
c− = 1n−
∑{i:yi=−1}
xi
c = 12 (c
+ + c−)
w = c+ − c−
On avait h(x) = 〈w, x− c〉 = 〈w, x〉 − 〈w, c〉
h(x) = 〈c+, x〉 − 〈c−, x〉 − 〈c+, c〉+ 〈c−, c〉
=1
n+
∑i:yi=+1
〈xi , x〉 −1
n−∑
i:yi=−1
〈xi , x〉 − 〈c+, c〉+ 〈c−, c〉
=∑
i=1,...,n
αi〈xi , x〉+ b,
with αi = yi/nyi and b = −〈c+, c〉+ 〈c−, c〉 = 12 (‖c
−‖2 − ‖c+‖2)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Rappelons nous du simple classifieur lineaire, et “kernelisons le”
class -1class +1
X (= R 2) �x +w (H) c+ = 1n+
∑{i:yi=+1}
xi
c− = 1n−
∑{i:yi=−1}
xi
c = 12 (c
+ + c−)
w = c+ − c−
On a, maintenant :
f (x) = sign
∑i=1,...,n
αik(xi , x) + b
,
with
αi = yi/nyi , and
b = 12 (‖c
−‖2 − ‖c+‖2) =12
[1
(n−)2
∑ij:yi ,yj=−1 k(xi , xj)− 1
(n+)2
∑ij:yi ,yj=+1 k(xi , xj)
]Cecile Capponi, equipe Qarma
Introduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Les noyaux communs
Les noyaux gaussiens/RBF
k(u, v) = exp(− ‖u−v‖2
2σ2
), σ2 > 0
l’espace des caracteristiques H est de dimension infinie
Les noyaux polynomiaux
k(u, v) = (〈u, v〉+ c)d , c ∈ R, d ∈ Nune transformation associee φ peut etre construite analytiquement
Les noyaux tangents (ne sont pas des noyaux de Mercer)
k(u, v) = tanh(a〈u, v〉+ c), a, c ∈ R
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Les noyaux communs
Noyau polynomial et son φ analytique
Soit le noyau polynomial avec c = 0 et d = 2, defini par R2 × R2
k = 〈u, v〉2R2
Soit la transformation :
φ : R2 → R3
x = [x1, x2]> 7→ φ(x) =
[x2
1 ,√
2x1x2, x22
]>Pour u, v ∈ R2, on a :
〈φ(u), φ(v)〉R3 = 〈[u21 ,√
2u1u2, u22 ]>, [v2
1 ,√
2v1v2, v22 ]>〉
= (u1v1 + u2v2)2
= 〈u, v〉2R2
= k(u, v)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Illustration sur le classifieur kernelise, cas du noyau gaussien
Noyau RBF (gaussien)
k(u, v) = exp(− ‖u−v‖2
2σ2
), σ2 > 0
Rappel
f (x) = sign
( ∑i=1,...,n
αik(xi , x) + b
),
with
αi = yi/nyi , et,
b = 12
[1
(n−)2
∑ij:yi ,yj=−1 k(xi , xj)− 1
(n+)2
∑ij:yi ,yj=+1 k(xi , xj)
]
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Illustration sur le classifieur kernelise, cas du noyau gaussien
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Illustration sur le classifieur kernelise, cas du noyau gaussien
σ = 0.05, 0.1, 0.2
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Matrice de Gram, cas des noyaux
Definition
Soit un noyau k : X × X → R. Pour un ensemble d’exemplesS = {x1, . . . , xn}
KS =
k(x1, x1) k(x1, x2) · · · k(x1, xn)k(x1, x2) k(x2, x2) · · · k(x2, xn)
· · · · · ·k(x1, xn) k(x2, xn) · · · k(xn, xn)
est la matrice de Gram de k selon S
Propriete de Mercer
Soit k : X × X → R une fonction symetrique. k est un noyau de Mercer⇔∀S = {x1, . . . , xn}, xi ∈ X , vKSv ≥ 0, ∀v ∈ Rn
(du coup, il existe φ telle que k(u, v) = 〈φ(u), φ(v)〉)
Remarque
Cela signifie notamment que pour n’importe quelle fonction noyau de Mercerk et pour tout echantillon S, la matrice de Gram KS a des valeurs propresnon-negatives Cecile Capponi, equipe Qarma
Introduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Matrice de Gram, cas des noyaux
Definition
Soit un noyau k : X × X → R. Pour un ensemble d’exemplesS = {x1, . . . , xn}
KS =
k(x1, x1) k(x1, x2) · · · k(x1, xn)k(x1, x2) k(x2, x2) · · · k(x2, xn)
· · · · · ·k(x1, xn) k(x2, xn) · · · k(xn, xn)
est la matrice de Gram de k selon S
Proprietes structurelles
Soient k1 et k2 des noyaux de Mercer. Le resultat de chaque operationsuivante est un noyau de Mercer :
kp1 , p ∈ Nλk1 + γk2, λ, γ > 0
k1k2
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Grandes idees derriere les methodes dites a noyaux
A retenir pour plus tard (M2)
Les donnees sont projetees dans un espace vectoriel
La recherche de regularites se fait dans ce nouvel espace descaracteristiques H et non plus dans l’espace d’entre X : on y recherchedes regularites (patterns) lineaires
Les algos d’apprentissage n’ont pas besoin de connaıtre lescoordonnees des points dans H : seul le produit scalaire entre deuxpoints dans cet espace doit etre defini et calculable via le noyau k
Consequences
Remise au gout du jour des methodes lineaires !
Perceptron et SVM, ACP, k -ppv, regression, etc.
Importance de la matrice de Gram (une en apprentissage, une en test)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Illustrations https://www.lri.fr/˜antoine/Courses/Master-ISI/chap-14-svm.pdf
Chaıne de traitement (Cornuejols, 2018)
Que represente la matrice de Gram / la fonction noyau ? (Cornuejols, 2018)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires
Introduction Le perceptron Les separateurs a vaste marge Vers des methodes non lineaires : teasing
Conclusion partielle
L’astuce du noyau
Choisissez votre classifieur lineaire prefere, et kernelisez le : vousobtenez un classifieur non-lineaire
Gardez en tete les conditions de Mercer sur les noyaux valides (noyauxdefinis positifs)
Il existe des noyaux bien connus (RBF, polynomial, etc.)
En cas de donnees structurees (non-vectorielles), des noyaux adaptesexistent
Questions ouvertes avec reponses partielles
Comment choisir le bon noyau (et ses parametres)
Peut-on combiner les noyaux ?
L’art de construire des noyaux pour des donnees structurees (ex. lessequences, les arbres, les graphes)
Le passage a l’echelle ?
Quels sont les algorithmes kernelisables? (il y en a tant !)
Cecile Capponi, equipe QarmaIntroduction a l’apprentissage automatique Classification par modeles lineaires