• Aucun résultat trouvé

Classification par SVM

Dans le document en fr (Page 120-124)

5.3 Implémentation des méthodes supervisées

5.3.4 Classification par SVM

La classification par les machines à vecteurs de support (SVM) est une méthode de classification appartenant à la catégorie des classifieurs à large marge. Elle a été introduite par Vapnik [1995] et Cortes & Vapnik [1995]. Une excellente introduction aux SVM appliqués à la neuroimage- rie peut être trouvée dans Cuingnet [2011]. Nous n’introduirons ici que l’interprétation géométrique permettant la définition de la fonction de classification ainsi que la notion de noyau.

Considérons l’ensemble d’apprentissage {(xi, yi)}i∈[1,N] où N est le

nombre de voxels de l’ensemble d’apprentissage, xile vecteur de carac-

téristiques associé à un voxel i et yi est le label associé à ce voxel (+1

s’il appartient à une HSB, -1 sinon). La classification par SVM considère que les observations xi appartiennent à un espace de HilbertH. Nous

notons h, iH le produit scalaire dans H. Un hyperplan de H est alors

défini par {x|hw, xiH+b = 0}, où w est un vecteur normal à l’hyper-

plan. De même, il est possible de définir deux hyperplans parallèles par {x|hw, xiH+b =1}et{x|hw, xiH+b = −1}. La distance entre ces deux

hyperplans est alors appelé la marge m avec m= kw2k

H.

Le principe du SVM est de trouver l’hyperplan, paramétrisé par wopt et bopt, qui permet de maximiser la marge, c’est-à-dire de séparer au mieux les vecteurs avec un label -1 de ceux avec un label +1 (figure 5.4). Cela est obtenu par l’intermédiaire du problème d’optimisation sous contraintes suivant :

wopt, bopt, ξopt

= arg min w∈H,b∈R,ξRN 1 2kwk 2 H+C N

i=1 ξi avec :    yi[hw, xiiH+b] >1−ξi ξi>0

m étant inversement proportionnelle àkwkH, la maximisation de la

marge est obtenue par la minimisation de 12kwk2H, le paramètre C est un paramètre de régularisation permettant de pénaliser de manière plus ou

5 . CO M PA R A I S O N A U X A U T R E S M É T H O D E S D E L A L I T T É R A T U R E wopt marge : m= kwk2 H hw, xiH+b>0 hw, xiH+b<0 :hw, xiH+b=0 :hw, xiH+b= ±1

FI G U R E 5.4 – Schéma de principe de la classification par machines à

vecteurs de support (SVM) (Source : Cuingnet [2011]).

L’ensemble d’apprentissage est constitué de deux classes, l’une symbolisée par des losanges gris, l’autre par des cercles bleus. Le SVM construit l’hyperplan (dans cet exemple, nous sommes en dimension 2, un hyperplan est donc une droite) maximisant la marge, c’est-à-dire permettant de séparer au mieux les deux classes. La construction de cet hyperplan ne dépend au final que d’un petit nombre de vecteurs proches de l’hyperplan. Ces vecteurs sont appelés vecteurs supports et sont entourés en noir sur la figure.

moins importante les erreurs d’apprentissages et les variables ξi, appelées

variables ressort(slack variables), permettent d’introduire une tolérance par rapport aux vecteurs mal classés ou situés près de l’hyperplan. La résolution de ce problème d’optimisation utilise les multiplicateurs de Lagrange et permet de montrer que seuls les vecteurs situés sur la marge ou les vecteurs mal classés contribuent à la définition de l’hyperplan. Ces vecteurs sont appelés vecteurs support.

Le formalisme sur lequel s’appuie le SVM repose sur la structure d’un espace de Hilbert pour construire un classifieur linéaire (l’hyperplan). Il est également possible d’adapter le SVM au cas non-linéaire en utilisant l’astuce du noyau [Aronszajn, 1950 ; Aizerman et al., 1964]. L’idée sous- jacente est de tranformer, par l’intermédiaire d’une fonction φ, les données de l’espace de départ dans un espace de plus grande dimension, dans lequel il sera possible de déterminer un hyperplan séparant les données. En pratique, on considère une fonction K appartenant àRX ×X, oùX est l’ensemble des observations. Si K est une fonction noyau définie positive, il existe alors une fonction φ telle que K(x, y) = hφ(x), φ(y)i. Tous les

termes utilisés dans la fonctionnelle du SVM étant exprimés en fonction du produit scalaire des éléments, le calcul dans l’espace de grande dimension induit par φ peut s’exprimer uniquement en fonction de K.

5.3. Implémentation des méthodes supervisées Nous avons utilisé la version 3.1 de la bibliothèque libSVM disponible en ligne4pour la résolution du SVM [Chang & Lin, 2011].

5.3.4.1 Choix du noyau

Il existe différents types de noyaux classiques pour la classification par SVM : noyau linéaire, noyau polynomial, noyau gaussien... Le noyau linéaire est préféré dans le cas des données linéairement séparables. Ce n’est pas généralement pas le cas en faible dimension, comme pour les vecteurs VC1 et VC2. Ce n’est pas non plus le cas pour VC4, qui utilise des coordonnées spatiales. En effet, un classifieur linéaire sur les coordonnées spatiales reviendrait à séparer l’image par un plan.

Nous utilisons donc le noyau gaussien (ou RBF pour Radial Basis Func- tions), qui est un choix classique pour le SVM et nécessite un paramètre de moins que les noyaux polynomiaux. Le noyau gaussien est également celui utilisé par Klöppel et al. [2011] et Lao et al. [2008]. Il est défini par :

Kγ(u, v) = exp

γku−vk2

5.3.4.2 Optimisation des hyperparamètres

L’utilisation du SVM avec un noyau gaussien nécessite donc le réglage de deux hyperparamètres :

– le paramètre C, qui permet une régularisation de la fonction de classification ;

– le paramètre γ, qui intervient dans le noyau gaussien.

Les valeurs de ces hyperparamètres sont classiquement estimées par une recherche en grille sur l’ensemble d’apprentissage, de manière à fournir les meilleurs résultats de classification, estimés par validation croisée.

Nous avons procédé à une double recherche en grille (figure 5.5). Tout d’abord, une recherche grossière est effectuée, où C varie entre 2−5et 213 et γ entre 2−21 et 25 avec un pas de 22. (Cmax, γmax) indique le couple

obtenant la meilleure exactitude5 en validation croisée sur cette grille grossière. Une recherche en grille plus fine est ensuite conduite sur le sous- ensemble [2Cmax−2, 2Cmax+2] × [2γmax−2, 2γmax+2] avec un pas de 20.25. Les

4. http://www.csie.ntu.edu.tw/~cjlin/libsvm/

5. L’exactitude est définie comme la proportion des classifications correctes sur la totalité de l’ensemble (soit TP+FP+FN+TNTP+TN )

5 . CO M PA R A I S O N A U X A U T R E S M É T H O D E S D E L A L I T T É R A T U R E

hyperparamètres optimaux(Copt, γopt) sont ceux obtenant la meilleure exactitude en validation croisée sur ce sous-ensemble. Le classifieur final est enfin obtenu en relançant la minimisation avec les hyperparamètres (Copt, γopt)sur l’intégralité de l’ensemble d’apprentissage.

50 58 66 74 82 90% 90.5 91.2 91.9 92.6 93.3 94% −20 −15 −10 −5 0 5 −5 0 5 10 log2(γ) log 2 ( C ) −113 −12 −11 −10 −9 2 3 4 5 log2(γ)

FI G U R E 5.5 – Procédure de recherche des hyperparamètres du SVM.

Les deux hyperparamètres à optimiser pour le SVM sont le paramètre C de régulari- sation du SVM et le paramètre γ du noyau gaussien. La combinaison optimale de ces deux facteurs est déterminée par une double recherche en grille par validation croisée. L’ensemble d’apprentissage est divisé aléatoirement en deux parties. Pour chaque valeur de C et γ, on calcule l’hyperplan optimal sur la moitié de l’ensemble d’apprentissage et on classifie la moitié restante grâce à l’hyperplan obtenu. On inverse ensuite les deux parties de manière à obtenir une classification pour tous les éléments de l’ensemble d’apprentissage. On répète ensuite cette procédure pour différentes valeurs de C et γ. Les figures représentent les courbes de niveau de l’exactitude de la classification obtenue pour chaque couple (C ; γ). Gauche : Recherche en grille grossière sur un large domaine et avec un pas important (C varie entre 2−5et 213, γ varie entre 2−21et 25, avec un pas de 22dans les deux cas). L’exactitude maximale est de 93,7% obtenue pour le couple(Cmax, γmax) = (3; −11). Droite : Recherche en grille plus fine centrée

autour du couple(Cmax; γmax). Cette fois, C varie entre 21et 25, γ varie entre 2−13et

2−9, avec un pas de 20,25dans les deux cas. L’exactitude maximale obtenue est de 94,1% pour le couple(Copt; γopt) = (3, 5 ; −10).

5.3.4.3 Binarisation de la fonction de classification

Klöppel et al. [2011] suggèrent de plus d’analyser plusieurs seuils pour générer des courbes de sensibilité et de spécificité similaires à celles obtenues par le seuillage de la proportion de voisins HSB dans le cas du KNN. Nous avons donc également implémenté cette approche. Le seuil

5.4. Résultats optimal de la fonction de classification est défini comme étant celui qui permet d’obtenir le meilleur SI sur l’ensemble d’apprentissage.

5.4

Résultats

5.4.1

Comparaison avec les méthodes non supervisées

Dans le document en fr (Page 120-124)