• Aucun résultat trouvé

6.5 Caractérisation des voxels

6.6.1 SVM linéaire

Les deux sous-parties suivantes traitant de la formulation théorique des SVM est tirée des livres [82,88]. Les machines à vecteurs de support (SVM) font partie des modèles de clas-sification supervisée binaire dont le but est de séparer deux jeux de données, appartenant à deux classes différentes, par un hyperplan séparateur. Ils reposent sur deux principes fondamentaux : la notion de marge maximale et celle de Kernel trick. pour la première notion, la marge est la distance entre l’hyperplan séparateur et les points les plus proches, appelés vecteurs support. En effet, l’hyperplan séparateur optimal est celui qui maximise la marge.

La deuxième notion de kernel trick vise à traiter les problèmes non linéairement sépa-rables en transformant l’espace de représentation des données d’entrée en un espace de plus grande dimension, voire infini, dans lequel il serait possible de séparer linéairement les données. Cette "astuce" est réalisée à l’aide de fonctions noyaux, dont l’avantage est qu’il n’est explicitement pas nécessaire de connaitre la transformation à appliquer pour changer d’espace. Ces fonctions transforment un produit scalaire impossible en une simple évaluation ponctuelle de fonction.

Figure 6.7 – Schéma de principe des SVM. Source [62]

CHAPITRE 6. CHOIX MÉTHODOLOGIQUES POUR LA RÉALISATION DU CADE

Formulation primale

Soit un jeu de données d’apprentissage (xi)i=1..n avec xi ∈ Rf, f étant le nombre de caractéristiques, et leur classe associée yi = {−1; +1}. On cherche les paramètres (w, b) d’un hyperplan séparateur h des données xi pouvant s’exprimer par h(xi) = w>x+ b = 0.

w est un vecteur normal à l’hyperplan et b

kwk le décalage à l’origine de l’hyperplan. La classe d’un exemple xi est alors donnée par le signe de h(xi), soit +1 si h(xi) ≥ 0 et 0 sinon. On remarque que la condition de séparabilité linéaire des données peut s’exprimer par : ∀i, on a yi(w>xi+ b) ≥ 0.

Afin de respecter la condition de séparabilité précédente, les SVM cherchent à maximiser la marge (cf figure), c’est-à-dire maximiser la plus petite distance entre un point xi de l’espace d’entrée et l’hyperplan séparateur. Cette marge se caractérise par une marge positive et négative, c’est-à-dire les distances aux points de classe +1 et −1 se trouvant les plus proches de l’hyperplan séparateur. Ces points sont appelés vecteurs supports et notés

x+sup et x

sup respectivement.

De manière générale, la distance d’un point xi à l’hyperplan séparateur est donnée par sa projection orthogonale sur l’hyperplan :

|w>xi+ b|

kwk (6.3)

pouvant aussi s’exprimer par :

yi(w>xi+ b)

kwk (6.4)

puisque l’hyperplan recherché sépare linéairement les données. Ce problème de maximisa-tion de la marge peut donc s’écrire sous la forme :

argmax

w,b{ 1

kwkmin

k [yi(wtx+ b)]} (6.5)

En normalisant les paramètres w, w0 de l’hyperplan de telle manière que les points se trouvant sur les marges positives et négatives satisfassent :

wtx+sup+ b = 1

wtx+sup− b= −1 (6.6)

on a yi(w>xi+ b) ≥ 1 et la marge totale peut désormais s’exprimer par 1

kwk. Le problème d’optimisation peut alors s’exprimer sous la forme :

6.6. CLASSIFICATION minimiser 1 2kwk2

sous contraintes yi(w>xi+ b) ≥ 1 (6.7)

Marge souple

Le problème précédent est beaucoup trop contraint pour être résolu directement. En effet on n’autorise aucun exemple d’apprentissage à résider dans la marge, de par une certaine non linéarité dans les données ou une mauvaise labelisation au moment de la constitution de la vérité terrain des données. On introduit alors la notion de "marge souple" dont l’idée est d’autoriser certains exemples à résider dans la marge à l’aide d’une variable ressort xii. La contrainte de bonne classification du système6.7 devient alors yi(w>xi+ b) ≥ 1 − ξi. On choisit ensuite de plus ou moins pénaliser les variables ressort élevées à l’aide de la constante C (avec C ≥ 1), appelée coût de mauvaise classification, qui permet de contrôler le compromis entre nombre d’erreurs et largeur de la marge. En effet, plus on pénalisera les erreurs ξi par une valeur de C élevée et moins la marge sera souple. L’idée est d’obtenir un classifieur ayant une bonne capacité de généralisation. Avec ces nouvelles contraintes le problème6.7peut se réécrire de la manière suivante :

minimiser 1 2kwk2+ C Pn i=1 ξi

sous contraintes yi(w>xi+ b) ≥ 1 − ξi, ∀i ∈1 . . . n,

ξi0, ∀i ∈1 . . . n

(6.8)

Formulation duale

Le problème primal précédent peut se mettre sous la forme d’un problème dual dans le cas où la fonction objectif 1

2kwk2+ C Pn

i=1

ξi ainsi que les contraintes yi(w>xi+ b) ≥ 1 − ξi et

ξi ≥0 sont strictement convexes (condtions de Kuhn-Tucker). Si on note L le lagrangien associé au problème d’optimisation, L est défini par la somme de la fonction objectif et d’une combinaison linéaire des contraintes dont les coefficients sont appelés multiplicateurs de Lagrange ou variables duales :

L(w, b, ξ, α, β) = 12kwk2+ C n X i=1 ξin X i=1 αi(yi(w> xi+ b) − (1 − ξi)) − n X i=1 βiξi (6.9) Le problème revient donc à minimiser le lagrangien précédent par rapport à w et w0 et maximisé par rapport à α et β (α ≥ 0, β ≥ 0) avec αi, βi,∀i ∈ 1 . . . n, les multiplicateurs de Lagrange. En annulant les dérivées partielles du lagrangien, selon les conditions de Kuhn-Tucker, par rapport à chaque variable primaire w, b et ξ, on obtient les conditions d’optimalité suivantes :

CHAPITRE 6. CHOIX MÉTHODOLOGIQUES POUR LA RÉALISATION DU CADE w = n X i=1 αiyixi n X i=1 αiyi = 0 Ce = α + β (6.10) avec e = [1 . . . 1 | {z } n fois ]>, le vecteur unité.

Sous ces condtions d’optimalité, le problème d’optimisation prend la forme :

max α12 n X i=1 n X j=1 αiαjyiyjxi>xj+Xn i=1 αi

sous contraintes 0 ≤ αi ≤ C i= 1, . . . , n et n X i=1 αiyi = 0 (6.11)

Avec les α optimaux, l’hyperplan séparateur peut s’écrire sous la forme :

h(x) = w>x+ b = n

X

i=1

αyi(xi>x) + b (6.12) Ces résultats traduisent une propriété fondamentale dans la théorie des SVM. La troisième condition d’optimalité impose que seuls les points xs qui sont sur les hyperplans frontière

M± tels que w>xs+ b = ±1 ou à l’intérieur de la marge (de par la marge souple)−1 <

w>xs+ b < 1 participent à la classification. Ces points sont les vecteurs supports et l’on peut donc aussi en déduire que le niveau de complexité des SVM ne dépend que du nombre de vecteurs supports dans la base d’apprentissage. L’ajout d’un point non vecteur support ne modifiera pas l’hyperplan optimal. De plus, on remarque que la solution ne dépend que du produit scalaire entre les points xi et les vecteurs supports xs, une propriété importe pour les SVM non linéaires expliqués dans la partie suivante.