• Aucun résultat trouvé

Machines à support vectoriel ("Support Vector Machine" SVM)

Établissement des électrofaciès aux puits à partir des diagraphies

1. Méthodes de reconnaissance et classification des formes

1.2. Machines à support vectoriel ("Support Vector Machine" SVM)

Finalement, pour que le réseau puisse répondre adéquatement aux stimuli du milieu, i.e. reconnaître une catégorie, il est entraîné, ce qui permet d’ajuster les poids synaptiques wi. Ainsi, à partir d’échantillons de contrôle pour lesquels on connaît à la fois les valeurs de xi et yi, les poids sont ajustés pour minimiser l’erreur entre la réponse correcte et le résultat du réseau. C’est un problème d’optimisation qui peut être résolu au moyen de plusieurs méthodes connues : erreur minimum quadratique, rétropropagation de l’erreur (back propagation error), méthodes de Gauss-Newton, recuit simulé (simulated annealing), Monte-Carlo, etc. (Van der Baan et Jutten, 2000).

Une fois que le neurone est entraîné, le réseau peut servir à discriminer de nouveaux individus.

Les réseaux de neurones peuvent donc traiter des systèmes très complexes sans faire d'hypothèses a priori sur les données d’entrée et leurs relations avec la réponse. Mais il y a plusieurs inconvénients dans la mise en œuvre d’un réseau de neurones. Il faut d’abord fournir l’aspect du réseau de neurone (nombre de couches de neurones etc.). Et puis le problème d’optimisation (minimisation de la différence entre l’entrée et la sortie) peut converger vers un minimum local.

1.2. Machines à support vectoriel ("Support Vector Machine" SVM)

La méthode SVM est une méthode de discrimination binaire par apprentissage, introduite par Vapnik en 1995. Le but de la SVM est de trouver l'hyperplan qui sépare au mieux deux classes (d'où l'appellation binaire) connaissant N échantillons d'apprentissage x (ou observations) décrits dans un espace de dimension s et pour lesquels la classe est connue.

Figure 1.1 : a) Réseau de neurone humain, b) réseau de neurone artificiel, c) modèle

mathématique, d) exemples de fonction d’activation (Modifié de Van der Baan et Jutten, 2000).

1.2.1. Cas de l'hyperplan linéaire

Figure 1.2 : Séparation de deux classes par une droite H en dimension 2.

La Figure 1.2 présente le problème dans un espace 2D, la classe 1 correspondant aux ronds noirs, la classe 2 aux ronds blancs. L'hyperplan séparateur H (en 2D une droite) a pour équation h(x)=wTx+w0, telle que les points de la classe 1 (de label ) satisfont h(x)!1 et que les points de la classe 2 (de label ) satisfont h(x)"-1.

Dans l'approche SVM, cet hyperplan optimal H est unique et maximise la distance entre les échantillons d’apprentissage et l'hyperplan séparateur. Cette distance, appelée « marge », est la distance entre l'hyperplan et les échantillons les plus proches, échantillons appelés supports vectoriels (Figure 1.3). La « marge » est donc la plus petite distance entre les échantillons d'apprentissage et l'hyperplan séparateur qui satisfasse la condition de séparabilité . Alors, pour que la marge soit maximale, H doit satisfaire :

(1.1)

Figure 1.3 : Définitions de la marge maximale et des supports vectoriels.

Pour cet hyperplan, la marge vaut 1/||w||, et donc la recherche de l'hyperplan optimal revient à minimiser ||w||, soit à rechercher les paramètres w et w0 qui résolvent le problème suivant :

(1.2)

En utilisant la méthode du Lagrangien, ce problème revient à minimiser L avec :

(1.3)

(1.4)

En substituant ces valeurs dans l’équation (1.3), on obtient la formulation :

(1.5)

ce qui donne les multiplicateurs de Lagrange optimaux (i=1, …, N). On en déduit ensuite les valeurs de w et w0, d'où l’équation de l’hyperplan h(x) suivante :

(1.6)

1.2.2. Cas de l'hyperplan non linéaire

Le cas d’un hyperplan non linéaire (Figure 1.4a) est résolu en appliquant une transformation non linéaire "(x) à l'espace de dimension s, d'où un nouvel espace de dimension supérieure éventuellement infinie t (t>s), dans lequel il existe probablement un hyperplan séparateur linéaire entre les deux classes (Figure 1.4b).

Ce nouvel espace est appelé espace de redescription dans lequel l’hyperplan optimal a pour équation h(x)=wT"(x)+w0. En utilisant le Lagrangien, on aboutit au problème d'optimisation suivant :

(1.7)

où <.,.> dénote le produit scalaire.

Sa résolution fournit l'équation de l'hyperplan séparateur dans l'espace de redescription :

(1.8)

Figure 1.4 : Transformation du (a) séparateur non linéaire dans l'espace de dimension 1 en (b) un hyperplan linéaire dans l'espace de dimension 2.

L’évaluation du produit scalaire est très coûteuse quand la dimension de l'espace de redescription est grande. De plus on ne connaît pas la transformation non linéaire "(x). Ces inconvénients sont contournés grâce à l’utilisation de fonctions noyau qui vérifient . Ces fonctions noyau doivent être bilinéaires symétriques semi-définies positives.

Il existe plusieurs fonctions de noyau, les plus utilisées étant :

• Fonction de noyau polynomiale :

• Fonction de noyau gaussien :

En général, il n'est pas non plus possible de trouver un séparateur linéaire dans l'espace de redescription. Il se peut aussi que des échantillons soient mal labellisés (mauvaise classe d'appartenance). Cortes et Vapnik (1995) proposent donc une technique dite de marge souple, qui tolère les mauvaises labellisations. La technique cherche un hyperplan séparateur qui minimise le nombre d'erreurs grâce à l'introduction de variables ressort !i qui permettent de relâcher les contraintes sur les supports vectoriels :

(1.9)

Du coup, le problème d'optimisation comporte un terme de pénalité qui pénalise les variables ressort élevées, et devient :

(1.10)

où C est une constante qui permet de contrôler le compromis à faire entre le nombre d'erreurs de classement et la largeur de la marge. Elle est choisie par l'utilisateur, par exemple par validation croisée sur l'ensemble d'apprentissage.

1.2.3. Cas de plus de 2 classes

Plusieurs méthodes ont été proposées pour étendre les SVM au cas à plus de deux classes, valides pour toute discrimination binaire (Bishop, 2006). Les deux plus connues sont appelées one versus all et one versus one. Considérons maintenant m classes {C1,C2,...,Cm}.

La méthode one-versus-all (ou one-versus-the-rest) consiste à construire m séparateurs binaires en attribuant successivement le label 1 aux échantillons de l'une des classes et le label -1 à toutes les autres. En phase décisionnelle (attribution d'un échantillon pour lequel on ne connaît pas la classe), le séparateur binaire avec la plus grande marge fournit la classe de l'échantillon.

La méthode one-versus-one consiste à construire m(m!1)/2 séparateurs binaires confrontant chacune des m classes. En phase décisionnelle, l'échantillon à classer est analysé par chaque séparateur binaire et un vote majoritaire permet de déterminer sa classe.

1.2.4. Conclusion

L'intérêt des SVM est qu'ils permettent de travailler dans des espaces de grande dimension et que le nombre de paramètres à déterminer est assez faible. En termes de performance, ils équivalent les réseaux neuronaux. Par contre, un des inconvénients des SVM est que le temps de calcul dépend du nombre d’échantillons N et de supports vectoriels p, de telle sorte que la complexité du problème est bornée par : pN2"complexité" pN3. En conséquence le temps de calcul explose si les valeurs de N et p sont élevées.