INTERPRÉTATION DES RÉSULTATS DE SVM Thanh-Nghi Do & François Poulet {dothanh poulet}@esiea-ouest.fr ESIEA Recherche 38, rue des Docteurs Calmette et Guérin Parc Universitaire de Laval-Changé 53000-Laval Résumé : Nous présentons une méthode d'interprétation graphique des résultats de SVM. Un prétraitement permet de ner un sous-ensemble de dimensions en utilisant un SVM norme-1 avec un noyau linéaire. Cette réduction du nombre de dimensions se fait sans perte de précision pour la classification. Ensuite on utilise des techniques graphiques de visualisation de données multidimensionnelles pour pouvoir interpréter les résultats de la classification par SVM. Nous montrons l'efficacité de notre approche sur des ensembles de données bio-médicale ayant un très grand nombre (jusqu'à plusieurs dizaines de milliers) de dimensions. Mots-clés : Séparateur à Vaste Marge, interprétation de résultats, visualisation d information, grand nombre de dimensions, de dimensions, réduction de dimensions. Abstract : We present a graphical method to graphically interpret the SVM results. A preprocessing step is used to select a subset of the original dimensions of the data set with a linear kernel 1-norm SVM algorithm. This feature selection method does not reduce the classification accuracy. Then we use visualisation methods to interpret the SVM results. We illustrate our approach efficiency on biomedical datasets having very large (up to several ten thousands) number of dimensions. Index Terms : Support Vector Machine, result interpretation, information visualization, high dimensional datasets, feature selection, dimensionality reduction. 1. Introduction Les SVM (Support Vector Machine ou Séparateurs à Vaste Marge) (Vapnik, 1995) sont une méthode récente de classification supervisée. Ils ont pour objectif de rechercher le meilleur hyperplan (w,b) de séparation des données en deux classes. Le plan est représenté par le vecteur de l ensemble de ses coefficients w et le scalaire b. La classification d un nouvel individu x est donnée par sa position par rapport à l'hyperplan, c'est-à-dire le signe de w.x b. On peut utiliser différents types de fonctions de noyau (d autres formes de frontières) comme une fonction polynômiale de degré d, sigmoïdale ou RBF (Radial Basis Function). Les SVM ont montré leur efficacité dans de nombreux domaines d applications comme la reconnaissance de chiffres manuscrits, la classification de textes ou la bioinformatique (Guyon, 1999) et ce même sur des ensembles de données de très grandes dimensions (Poulet et Do, 2003). Mais leurs résultats ne sont pas facilement interprétables, les seules informations fournies sont en général soit les vecteurs support sans aucune autre indication soit les coefficients de l'hyperplan de séparation (et éventuellement le taux de bonne classification). L utilisateur sait qu il peut classifier de manière efficace ses données grâce à l'hyperplan de séparation mais il est par exemple très difficile d expliquer ce qui fait qu'un individu est dans la classe +1 plutôt que dans la classe 1. Des méthodes permettant l'interprétation des résultats de SVM sont donc indispensables. Une première méthode de visualisation des résultats de SVM a été proposée par (Caragea et al, 2001). Elle effectue la projection en 2D des vecteurs support à l'aide d'un algorithme de Grand Tour. Une seconde méthode a été proposée par (Poulet, 2002) utilisant une série de projections 2D
"scatter-plot matices" montrant à la fois les individus et les intersections du plan de séparation avec les matrices 2D. Une évolution fut ensuite de ne plus représenter que les individus à l' aide toujours d' une série de projections 2D mais avec un histogramme des individus classés en fonction de leur distance à l' hyperplan de séparation (Poulet, 2003). Cette dernière évolution est une visualisation relativement pertinente des résultats mais ne peut pas être utilisée lorsque l' ensemble de données possède un grand nombre de dimensions (colonnes de la base de données). Nous proposons ici un outil permettant à l utilisateur de visualiser la marge de séparation du SVM dans le cas d' ensembles de données ayant un grand nombre de dimensions (jusqu' à plusieurs dizaines de milliers). L approche utilise en prétraitement un algorithme de SVM norme-1 pour ner un sous-ensemble de dimensions (sans altérer le taux de bonne classification), puis des techniques graphiques interactives de visualisation sont utilisées pour visualiser les résultats du SVM. Nous évaluons ce travail sur des ensembles de données bio-médicales ayant un très grand nombre de dimensions. Le paragraphe 2 décrit la de dimensions en utilisant un algorithme de SVM norme-1 et les résultats expérimentaux obtenus sur des ensembles de données ayant un grand nombre de dimensions. Le paragraphe 3 présente notre outil de visualisation des résultats des SVM avant la conclusion et les extensions futures de ce travail. 2. Sélection d'un sous ensemble de dimensions Le but de cette étape de prétaitement des données est de réduire le nombre de dimensions (colonnes de la base de données) d' un ensemble de données sans pour autant perdre trop d' information. On cherche donc à éliminer les dimensions qui n' apportent que peu (ou pas) d' information pour la classification. Pour ce faire, nous utilisons un algorithme particulier de SVM, le SVM norme-1 avec un noyau linéaire (Fung et Mangasarian, 2002). En résumé, cet algorithme cherche le meilleur hyperplan de séparation en maximisant la marge et minimisant les erreurs. Pour cela, il cherche à minimiser la norme-1 de l' hyperplan (au lieu de la norme-2 de l' hyperplan dans le cas des SVM standards). C' est un algorithme très efficace pour ner un sous-ensemble de dimensions. Les résultats obtenus par le SVM norme-1 sont comparables avec ceux obtenus par les SVM standards, la particularité de cet algorithme de SVM norme-1 est qu' il donne un hyperplan de séparation avec la plupart des coefficients nuls. Les dimensions correspondant aux coefficients nuls sont supprimées. L ensemble du programme est écrit en C/C++ sous IRIX (station SGI-O2) et Linux (PC). Pour évaluer ce travail, nous présentons les résultats obtenus sur des ensembles de données bio-médicales ayant un très grand nombre de dimensions provenant du Kent Ridge Bio-medical Dat Set Repository (Jinyan & Huiqing, 2002). Nous avons utilisé le programme SVMLight (Joachims, 2002) avec un noyau linéaire pour classifier les données dans le cas où toutes les dimensions sont traitées. Les ensembles de données utilisés sont décrits dans le tableau 1. classes nb. individus nb. dimensions protocole de test AML-ALL Leukemia 2 72 7129 38 trn 34 tst Breast 2 97 24481 78 trn 19 tst Colon Tumor 2 62 2000 Leave-1-out Lung 2 181 12533 32 trn 149 tst Ovarian 2 253 15154 Leave-1-out Tableau 1 Description des ensembles de données
AML-ALL Leukemia Breast Colon Tumor Lung Ovarian précision classe +1 précision classe -1 précision 100% 95% 85,71% 92,86% 94,12% 94,12% 91,67% 83,33% 57,14% 57,14% 78,95% 73,68% 95,45% 86,36% 97,5% 92,5% 96,77% 90,32% 100% 100% 96,27% 98,51% 96,64% 98,66% 100% 100% 100% 100% 100% 100% (13 dim) (13 dim) Tableau 2 Performance en terme de taux de précision Les résultats obtenus après avoir né les dimensions sont comparés avec ceux obtenus une classification sur l ensemble des dimensions. Les résultats concernant le taux de précision sont donnés dans le tableau 2 (les meilleurs résultats sont en caractères gras). On remarque que pour tous les ensembles de données traités sauf un, les résultats sont meilleurs lorsque l' on utilise un sousensemble de dimensions plutôt que l' ensemble complet de dimensions. Il est intéressant aussi de constater que le nombre de dimensions utilisées est réduit de manière très significative : par exemple sur Breast on passe de 24481 dimensions à 10 dimensions sans perte de précision (c' est même l' inverse qui se produit puisque le taux de précision est amélioré de 5%) et sur AML- ALL Leukemia, on passe de 7129 à 5 dimensions (soit une diminution d' un facteur 1400) en conservant exactement le même taux de précision. Figure 1 Visualisation des indivus mal classifiés les plus proches de la marge
3. Visualisation des résultats de SVM Sur l' exemple de la figure 1, la partie gauche représente la distribution des points en fonction de leur distance à l' hyperplan de séparation, avec en positif, les points bien classés et en négatif les points mal classés, la couleur représentant la classe. La partie droite représente les projections 2D des points sur toutes les paires possibles d' attributs, l' une de ces matrices étant reproduite à une échelle plus grande dans la partie inférieure droite de l' outil (sur la figure 1 c' est la dernière matrice de la première colonne). Lorsque l' on ne les barres de l' histogramme dans la partie gauche (ici on a choisit les points mal classés les plus proches de l' hyperplan de séparation), ces points sont alors automatiquement nés dans les projections 2D. Comme on le voit dans la matrice 2D (coin inférieur droit de la figure 1), ces points forment presque une droite. Cela signifie que l' hyperplan de séparation des deux classes est presque perpendiculaire à la matrice 2D. Donc seulement deux attributs interviennent dans la position de l' hyperplan. Ces deux attributs sont ceux selon lesquels la projection est effectuée. On est alors capable d' interpréter le résultat du SVM : ce sont les attributs i et j qui font qu' un individu appartient à la classe +1 ou 1. Sur l' exemple de la figure 1, on peut même être encore plus précis : on remarque que les points nées (les mal classés les plus proches de l' hyperplan) forment une droite verticale, cela signifie que seul l' attribut représenté sur l' axe des x joue un rôle dans l' appartenance à la classe. Par contre, on ne peut pas tirer de conclusion aussi immédiate lorsque les points correspondant aux individus les plus proches de l' hyperplan sont répartis dans la matrice 2D. En effet dans ce cas, il se peut très bien que les 2 attributs n' influent pas sur la classe, comme il est possible qu' ils influent sur la classe (mais avec la combinaison d' autre(s) attribut(s)). plan dim-3-1 +1 dist. plan dim-4 dim-2 Distribution des données Vue 3D Figure 2 - Visualisation du résultats de SVM sur l ensemble de données Lung 4. Conclusion-perspectives Nous avons présenté un algorithme permettant de visualiser les résultats de la classification effectuée par un SVM dans le cas d' ensembles de données ayant un nombre élevé de dimensions. Il utilise un algorithme de SVM norme-1 en prétraitement pour réduire de manière significative le nombre de dimensions à prendre en compte dans les phases suivantes. Cette réduction du nombre de
dimensions se fait sans perte d' information pertinente pour la classification comme l' ont montré les résultats présentés sur les ensembles de données bio-médicales. Une fois la classification eefectuée, les résultats sont visualisés sous forme graphique pour mettre en évidence les attributs importants pour l' appartenance à telle ou telle classe. Les extensions de ces travaux sont nombreuses. Tout d' abord la visualisation de la distribution des individus par rapport à l' hyperplan peut se généraliser à d' autres types de frontières (comme par exemple une coupe dans un arbre de décision). Ensuite d' autres types de représentations graphiques (par exemples des coordonnées parallèles ou des matrices 3D) peuvent être liés à l' histogramme représentant la distribution des individus à la place ou en plus des matrices 2D. Bibliographie [1] Caragea D., Cook D., Honavar V., Gaining Insights into Support Vector Machine Pattern Classifiers Using Projection-Based Tour Method, in proc. of KDD' 2001 Workshop on Visual Data Mining. [2] Fung, G., and Mangasarian, O. (2002) A Feature Selection Method for Support Vector Machine Classification, Data Mining Institute Technical Report 02-03, Computer Sciences Department, University of Wisconsin, Madison, USA. [3] Guyon, I. (1999) Web Page on SVM Applications, http://www.clopinet.com/isabelle/projects/- SVM/applist.html. [4] Jinyan, L., Huiqing, L. (2002) Kent Ridge Bio-medical Dat Set Repository, http://sdmc.lit.org.- sg/gedatasets. [5] Joachims, T. (2002) SVM-Light : Support Vector Machine, http://www.cs.cornell.edu/people/tj- /svm_light/. [6] Poulet F. (2002) Cooperation between automatic algorithms, interactive algorithms and visualization tools for Visual Data Mining, in proc. of VDM@ECML/PKDD' 02, the 2 nd International Workshop on Visual Data Mining, Helsinki, Finland. [7] Poulet, F. (2003) Visualisation des résultats de SVM, Actes de SFC 03, X e Rencontres de la Société Francophone de Classification, Neuchâtel, Suisse, pp. 169-172. [8] Poulet, F., Do, T-N. (2003) Mining Very Large Datasets with SVM Algorithms, in O. Camp, J. Filipe, S. Hammoudi, M. Piattini Eds., Enterprise Information Systems V, Kluwer, 2003. [9] Vapnik, V. (1995) The Nature of Statistical Learning Theory, Springer-Verlag, New York.