vendredi 26 mars 2010

Tanagra et autres logiciels gratuits

Un très sympathique et chaleureux séminaire au sein du Laboratoire de Mathématiques Appliquées de l'AgroCampus Ouest de Rennes (http://www.agrocampus-ouest.fr/math/) a été l'occasion de faire un bilan sur l'évolution de Tanagra ces dernières années. En termes quantitatifs, notre site, regroupant les supports de cours, les tutoriels et le logiciel, a connu 520 visites par jour sur l'année 2009, à comparer avec les 349 visites journalières de 2008. Les visiteurs sont pour moitié francophones, les accès se concentrent avant tout sur les pages consacrées à la documentation.

Mais, au-delà de la simple présentation de Tanagra, j'ai surtout tenté de positionner les principaux logiciels libres largement reconnus dans notre communauté : Orange, Knime, Rapid-Miner, Weka ; mais aussi le logiciel R, plutôt d'obédience statistique, mais qui fait une percée spectaculaire auprès des " Data Miner ". Des démonstrations sur des données réalistes ont permis de montrer le mode opératoire des différents outils.

Au final, on se rend compte qu'ils répondent peu ou prou à des cahiers des charges relativement similaires. Il est illusoire de penser que tel ou tel logiciel serait systématiquement meilleur que les autres quel que soit le domaine abordé. Le plus important pour l'utilisateur est de bien cerner les spécificités de son étude (objectifs, caractéristiques des données, etc.) pour choisir en pleine conscience l'outil le mieux adapté. C'est une des raisons pour lesquelles j'essaie, et j'essaierai toujours, de comparer objectivement les logiciels lorsque que je montre la mise en œuvre des techniques exploratoires dans mes tutoriels. Après, le choix des armes appartient à l'utilisateur lorsqu'il aura à affronter ses propres données. Et c'est très bien ainsi...

Résumé du séminaire : Résumé
Slides du séminaire : Présentation

mardi 23 mars 2010

Le classifieur Bayesien Naïf revisité

Le classifieur bayesien naïf est une méthode d'apprentissage supervisé qui repose sur une hypothèse simplificatrice forte : les descripteurs (Xj) sont deux à deux indépendants conditionnellement aux valeurs de la variable à prédire (Y) . Pourtant, malgré cela, il se révèle robuste et efficace. Ses performances sont comparables aux autres techniques d'apprentissage. Diverses raisons sont avancées dans la littérature. Dans ce document, nous mettrons en avant une explication basée sur le biais de représentation. Le modèle d'indépendance conditionnel est ni plus ni moins qu'un classifieur linéaire, au même titre que l'analyse discriminante linéaire ou la régression logistique. Seul diffère le mode d'estimation des coefficients de la fonction de classement.

Dans la première partie de ce tutoriel, nous présentons tout d'abord brièvement les aspects théoriques relatifs à la méthode. Puis, nous l'implémentons à l'aide du logiciel Tanagra 1.4.36. Nous comparerons les résultats obtenus (les coefficients de l'hyperplan séparateur) avec ceux de la régression logistique, de l'analyse discriminante et d'un SVM (support vector machine) linéaire. Nous constaterons qu'ils sont étonnamment cohérents, expliquant ainsi la bonne tenue du classifieur bayesien naïf dans la grande majorité des situations.

Dans la seconde partie, nous montrons la mise en œuvre de la technique dans les plusieurs logiciels libres tels que Weka 3.6.0, R 2.9.2, Knime 2.1.1, Orange 2.0b et RapidMiner 4.6.0. Nous nous attacherons avant tout à lire correctement les résultats. Un des aspects qui dessert souvent la méthode auprès des praticiens du Data Mining.

Mots clés : classifieur bayesien naïf, séparateur linéaire, analyse discriminante, régression logistique, support vector machine
Lien : fr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
Données : heart_for_naive_bayes.zip
Références :
Wikipedia, "Naive bayes classifier".
T. Mitchell, "Generative and Discriminative Classifiers: Naive Bayes and Logistic Regression", in Machine Learning, Chapter 1, 2005.

Tanagra - Version 1.4.36

ReliefF est un composant de sélection automatique de variables pour l'apprentissage supervisé. Il sait traiter les descripteurs continus ou discrets. On peut le placer devant n'importe quelle méthode supervisée.

Naive Bayes a été modifié. Il affiche maintenant un modèle de prédiction sous une forme explicite, facile à déployer. Un tutoriel accompagne cette mise à jour.