vendredi 3 octobre 2008

SVM - Comparaison de logiciels

Les machines à vecteurs de support (ou séparateur à vaste marge) sont des techniques d’apprentissage supervisé qui s’appuient sur deux idées fortes : (1) le principe de la maximisation de la marge ; (2) lorsque les données ne sont pas linéairement séparables, il est possible, par le principe des noyaux, de se projeter dans un espace de plus grande dimension pour trouver la solution adéquate, sans avoir à former explicitement ce nouvel espace de représentation.

Nous nous plaçons dans un cadre particulièrement favorable aux SVM dans ce didacticiel. Nous souhaitons prédire la famille d’appartenance de séquences de protéines à partir de la présence - absence de suites de 4 acides aminées (4-grams). Nous traitons un problème à 2 classes, nous disposons de 135 observations et 31809 descripteurs. Notre objectif est de comparer le comportement de quelques implémentations libres des SVM. Ce document vient en complément d’autres comparaisons que nous avons réalisés dans des contextes différents.

Ce comparatif est intéressant à plus d’un titre. Tout d’abord, nous aurons la possibilité d’évaluer les différentes implémentations des SVM, tant en temps de calcul qu’en qualité de prédiction. L’optimisation reposant sur des heuristiques, il est normal que les temps de calcul soient différents, mais il se peut également que les performances en classement qui en résultent ne soient pas identiques. Pouvoir les situer est une démarche importante. Dans les publications utilisant les SVM, on devrait non seulement dire « nous avons utilisé les SVM, avec tel noyau », mais aussi préciser « quelle implémentation des SVM », tant parfois les résultats peuvent diverger d’un logiciel à l’autre.

Autre point important. A y regarder de plus près, nous sommes également confrontés à un problème de volumétrie ici. Même si le nombre d’observations est faible, le nombre de variables, lui, est élevé. Or, les logiciels évalués chargent la totalité des données en mémoire vive. De nouveau la mémoire disponible devient un goulot d’étranglement.

Les logiciels évalués dans ce didacticiel sont : ORANGE, RAPIDMINER, TANAGRA et WEKA.

Mots clés : svm, support vector machine, séparateur à vaste marge, machine à vecteurs de support
Composants : C-SVC, SVM, SUPERVISED LEARNING, CROSS-VALIDATION
Lien : fr_Tanagra_Perfs_Comp_SVM.pdf
Données : wide_protein_classification.zipRéférences :
Ricco Rakotomalala, "Support Vector Machine - Diapos", mai 2016.
Wikipédia (en), « Support vector machine »