dimanche 22 novembre 2009

Induction de Règles Prédictives

L’induction de règles tient une place privilégiée dans le Data Mining. En effet, elle fournit un modèle prédictif facilement interprétable, on sait lire sans connaissances statistiques préalables un modèle de prédiction de type « Si condition Alors Conclusion » (ex. Si Compte Client à découvert Alors Client défaillant pour remboursement des crédits ») ; les règles peuvent être facilement implémentées dans les systèmes d’information (ex. traduction d’une règle en requête SQL).

Nous nous plaçons dans le cadre de l’apprentissage supervisé dans ce didacticiel. Parmi les méthodes d’induction des règles prédictives, les approches « separate-and-conquer » ont monopolisé les conférences d’apprentissage automatique dans les années 90. Curieusement, le souffle semble un peu retombé aujourd’hui. Plus ennuyeux encore, elles sont peu implémentées, voire inexistantes, dans les logiciels commerciaux. Il faut se tourner vers les logiciels libres issues de l’apprentissage automatique (la communauté « machine learning ») pour les trouver. Pourtant, elles présentent plusieurs atouts par rapport aux autres techniques.

Dans ce didacticiel, une fois n’est pas coutume, nous décrivons dans un premier temps les techniques « separate-and-conquer » pour l’induction de règles. Je trouve en effet que ces méthodes sont peu connues des praticiens du Data Mining et, de ce fait, peu utilisées. Pourtant elles sont souvent performantes. Elles constituent une alternative tout à fait valable aux arbres de décision. Nous mettrons l’accent sur les approches par spécialisation, par opposition aux approches par généralisation, plus lentes et quasi-introuvables dans les logiciels.

Dans un second temps, nous montrons la mise en œuvre des différentes variantes implémentées dans les logiciels de Data Mining. Nous utiliserons Tanagra 1.4.34, Sipina Recherche 3.3, Weka 3.6.0, R 2.9.2 avec le package RWeka, RapidMiner 4.6, et Orange 2.0b.

Mots clés : induction de règles, règles prédictives, listes de décision, base de connaissances, CN2, arbres de décision
Composants : SAMPLING, DECISION LIST, RULE INDUCTION, TEST
Lien : fr_Tanagra_Rule_Induction.pdf
Données : life_insurance.zip
Références :
J. Furnkranz, "Separate-and-conquer Rule Learning", Artificial Intelligence Review, Volume 13, Issue 1, pages 3-54, 1999.
P. Clark, T. Niblett, "The CN2 Rule Induction Algorithm", Machine Learning, 3(4):261-283, 1989.
P. Clark, R. Boswell, "Rule Induction with CN2: Some recent improvements", Machine Learning - EWSL-91, pages 151-163, Springer Verlag, 1991.

Tanagra - Version 1.4.34

Un composant d'induction de règles prédictives (RULE INDUCTION) a été ajouté dans la section " Apprentissage Supervisé ". Son utilisation est décrite dans un didacticiel accessible en ligne.

Le composant DECISION LIST a été amélioré, nous avons modifié le test réalisé lors de la procédure de pré-élagage. La formule est décrite dans le même didacticiel que ci-dessus.

Les composants SAMPLING et STRATIFIED SAMPLING (onglet Instance Selection) ont été légèrement modifiés. Il est maintenant possible de contrôler le générateur de nombres pseudo aléatoires en fixant nous même la valeur de départ de la " graine ".

Suite à une indication de Anne Viallefont, le calcul des degrés de liberté dans les tests sur tableaux de contingence est maintenant plus générique. En effet, le calcul était erroné lorsque la base était préalablement filtrée et que certaines marges (ligne ou colonne) contenaient un effectif égal à zéro. Merci Anne pour ces indications. De manière plus générale, merci à tous ceux qui m'envoient des commentaires. Programmer a toujours été pour moi une sorte de loisir. Le vrai boulot commence lorsqu'il faut contrôler les résultats, les confronter avec les références disponibles, les croiser avec les autres logiciels de Data Mining, libres ou non, comprendre les éventuelles différences, etc. A ce stade, votre aide m'est très précieuse.

mercredi 21 octobre 2009

Sipina – Traitement des très grands fichiers

Triturer les très grands fichiers est le fantasme ultime du data miner. On veut pouvoir traiter de très grandes bases dans l’espoir d’y déceler des informations cachées. Malheureusement, rares sont les logiciels libres qui peuvent les appréhender. Tout simplement parce que la quasi-totalité d’entre eux chargent les données en mémoire. Knime semble faire exception. Il sait swapper une partie des données sur le disque. Mais j’avoue ne pas savoir comment exploiter pleinement cet atout (paramétrer ou contrôler l’encombrement mémoire en fonction des données et des algorithmes utilisés par exemple).

Cette rareté n’est guère étonnante. En effet, l’affaire est compliquée. Il ne s’agit pas seulement de copier des informations sur le disque, il faut pouvoir y accéder efficacement compte tenu de la méthode d’apprentissage mise en œuvre. Deux aspects s’entremêlent : (1) comment organiser les données sur le disque ; (2) est-il possible de proposer un système de cache afin d’éviter d’avoir à accéder au disque à chaque fois qu’il faut traiter un individu ou lire la valeur d’une variable.

Dans ce didacticiel, nous montrons comment exploiter une solution que j’ai naguère implémentée dans Sipina. Elle n’a jamais été valorisée ni documentée. J’avoue l’avoir totalement oubliée jusqu’à ce que je la redécouvre par hasard en préparant le tutoriel sur l’échantillonnage dans les arbres. Nous montrons qu’il est possible de traiter, en disposant de toutes les fonctionnalités interactives, un fichier comportant 41 variables et (surtout) 9.634.198 observations lorsque nous activons cette option.

Pour apprécier pleinement la solution proposée par Sipina, nous ferons le parallèle avec le comportement des logiciels Tanagra 1.4.33 et Knime 2.0.3 face à un tel fichier.

Mots clés : gros volumes, très grands fichiers, grandes bases de données, arbre de décision, échantillonnage, sipina, knime
Composants : ID3
Lien : fr_Sipina_Large_Dataset.pdf
Données : twice-kdd-cup-discretized-descriptors.zip
Références :
Tutoriel Tanagra, « Traitement de gros volumes – Comparaison de logiciels ».
Tutoriel Tanagra, « Sipina – Echantillonnage dans les arbres »

dimanche 18 octobre 2009

Sipina - Echantillonnage dans les arbres

Lors de l’induction d’un arbre de décision, l’algorithme doit détecter la meilleure variable de segmentation pour chaque nœud que l’on souhaite partitionner. L’opération peut prendre du temps si le nombre d’observations est très élevé. Ceci d’autant plus que les variables candidates sont continues, il faut trouver la borne de discrétisation optimale.

Le logiciel Sipina introduit une option d’échantillonnage local dans tous les algorithmes d’induction d’arbres qu’il propose. L’idée est la suivante : sur chaque sommet, plutôt que de travailler sur la totalité des observations présentes pour choisir la variable de segmentation, il réalise les opérations sur un échantillon. Bien entendu, lorsque le nombre d’observations disponibles sur le sommet est plus faible que la taille d’échantillon demandée, il n’y a plus lieu de procéder à un échantillonnage, Sipina utilise toutes les observations. Cela arrive dans les parties bases de l’arbre lorsqu’il est particulièrement profond. Nous avions évoqué cette idée dans un de nos anciens posts (Echantillonnage dans les arbres de décision), nous la mettons en œuvre dans ce didacticiel.

Nous manipulons un fichier comportant 21 descripteurs et 2.000.000 d’observations, dont une moitié est utilisée pour construire l’arbre, l’autre pour son évaluation. Nous constaterons que, dans certaines circonstances, travailler sur un échantillon dans les nœuds permet de réduire le temps de calculs (divisé par 30 !) tout en préservant les performances en classement.

Nous comparerons les temps de calcul avec ceux de Tanagra où une autre stratégie a été mise en place pour accélérer les traitements.

Mots clés : arbre de décision, échantillonnage, sipina, apprentissage, test, traitement des grandes bases de données, gros fichier
Composants : SAMPLING, ID3, TEST
Lien : fr_Sipina_Sampling.pdf
Données : wave2M.zip
Références :
J.H. Chauchat, R. Rakotomalala, « A new sampling strategy for building decision trees from large databases », Proc. of IFCS-2000, pp. 199-204, 2000.

mercredi 14 octobre 2009

Sipina - Traitement des données manquantes

L’appréhension des données manquantes est un problème difficile. La gestion informatique en elle-même ne pose pas de problème, il suffit de signaler la valeur manquante par un code spécifique. En revanche, son traitement avant ou durant l’analyse des données est très compliqué.

Il faut prendre en considération deux aspects : (1) la nature de la valeur manquante (complètement aléatoire, partiellement aléatoire, non aléatoire) ; (2) la technique statistique que nous mettons en œuvre par la suite, en effet, certaines méthodes de traitement des données manquantes sont plus ou moins adaptées selon les techniques statistiques que nous utilisons.

L’objectif de ce tutoriel est de montrer la mise en œuvre des techniques implémentées dans le logiciel SIPINA et d’observer les conséquences des choix sur l’induction des arbres de décision avec la méthode C4.5 (Quinlan, 1993).

Mots clés : valeur manquante, donnée manquante, missing data, sipina, C4.5
Lien : fr_Sipina_Missing_Data.pdf
Données : ronflement_missing_data.zip
Références :
P.D. Allison, « Missing Data », in Quantitative Applications in the Social Sciences Series n°136, Sage University Paper, 2002.
J. Bernier, D. Haziza, K. Nobrega, P. Whitridge, « Handling Missing Data – Case Study », Statistical Society of Canada.

mercredi 7 octobre 2009

Evaluation des classifieurs - Quelques courbes

L’évaluation des classifieurs est une étape incontournable de l’apprentissage supervisé. Nous avons construit un modèle de prédiction, nous devons en mesurer les. D’un côté, nous avons la matrice de confusion et les indicateurs afférents, très populaire dans la recherche en apprentissage automatique (ah… les fameux grands tableaux avec des moyennes de taux d’erreur sur des bases de données qui n’ont rien à voir entre elles…) ; de l’autre, dans les applications, on privilégie les courbes qui semblent mystérieuses si l’on n’est pas du domaine (courbe ROC en épidémiologie, entre autres ; courbe de gain en marketing ; courbe rappel – précision en recherche d’information).

Dans ce didacticiel, nous montrons dans un premier temps comment construire ces courbes en détaillant les calculs dans un tableur. Puis, dans un deuxième temps, nous utilisons les logiciels Tanagra 1.4.33 et R 2.9.2 pour les obtenir. Nous comparerons les performances de la régression logistique et des SVM (support vector machine, noyau RBF) sur notre fichier de données.

Mots-clés : courbe ROC, courbe de gain, courbe lift, courbe rappel précision, échantillon d'apprentissage, échantillon test, régression logistique, svm, noyau RBF, librairie libsvm, logiciel R, glm, package e1071
Composants : DISCRETE SELECT EXAMPLES, BINARY LOGISTIC REGRESSION, SCORING, C-SVC, ROC CURVE, LIFT CURVE, PRECISION-RECALL CURVE
Lien : fr_Tanagra_Spv_Learning_Curves.pdf
Données : heart_disease_for_curves.zip

samedi 3 octobre 2009

Diagnostic de la régression logistique

Ce tutoriel décrit la mise en œuvre des outils d’évaluation et de diagnostic de la régression logistique binaire, disponibles depuis la version 1.4.33 de Tanagra. Les techniques et les formules afférentes sont présentées dans le fascicule de cours que nous avons mis en ligne récemment (voir références). Il serait intéressant de le charger également afin de pouvoir s’y référer lorsque nous décrivons les résultats.

Nous traitons un problème de crédit scoring. Nous cherchons à déterminer à l’aide de la régression logistique les facteurs explicatifs de l’accord ou du refus d’une demande de crédit de clients auprès d’un établissement bancaire.

Nous utiliserons Tanagra 1.4.33 dans un premier temps. Dans un deuxième temps, nous essaierons de reproduire les mêmes calculs à l’aide du Logiciel R 2.9.1 [procédure glm()].

Mots-clés : régréssion logistique, analyse des résidus, détection des points atypiques et points influents, résidus de pearson, résidus déviance, levier, distance de cook, dfbeta, dfbetas, test de Hosmer - Lemeshow, diagramme de fiabilité, reliability diagram, calibration plot, logiciel R, glm()
Composants : BINARY LOGISTIC REGRESSION, HOSMER LEMESHOW TEST, RELIABILITY DIAGRAM, LOGISTIC REGRESSION RESIDUALS
Lien : fr_Tanagra_Logistic_Regression_Diagnostics.pdf
Données : logistic_regression_diagnostics.zip
Références :
R. Rakotomalala, "Pratique de la régression logistique - Régression logistique binaire et polytomique".
D. Hosmer, S. Lemeshow, « Applied Logistic Regression », John Wiley &Sons, Inc, Second Edition, 2000.

Tanagra - Version 1.4.33

Cette version accompagne la sortie du fascicule du cours consacré à la régression logistique (" Pratique de la Régression Logistique - Régression logistique binaire et polytomique " - Septembre 2009). Plusieurs techniques d'évaluation et de diagnostic de la régression logistique ont été développées, l'une d'entre elles (reliability diagram) peut s'appliquer à toute méthode supervisée :

1. La matrice de variance covariance des coefficients.
2. Test de Hosmer et Lemeshow
3. Diagramme de fiabilité (reliability diagram ou calibration plot en anglais)
4. Analyse des résidus, détection des points atypiques et/ou influents (résidus de pearson, résidus déviance, dfichisq, difdev, levier, distance de Cook, dfbeta, dfbetas)

Un tutoriel décrivant la mise en œuvre de ces outils sera mis en ligne très prochainement.

mercredi 30 septembre 2009

Etude des dépendances - Variables qualitatives

Ce document décrit quelques mesures statistiques destinées à quantifier et tester la liaison entre 2 variables qualitatives. Elles exploitent le tableau de contingence formé à partir des variables. Le domaine étant très vaste et les mesures innombrables, nous ne pourrons certainement pas prétendre à l'exhaustivité. Nous mettrons l'accent sur l'interprétation, les formules associées et la lecture pratique des résultats.

Nous nous concentrons essentiellement sur la dépendance entre variables nominales. Le traitement des variables ordinales fera l'objet d'une partie distincte (Partie IV).

Mots-clés : tableau de contingence, khi-2, mesures PRE (proportional reduction in error), odds et odds-ratio, coefficient de concordance, mesures d'association, associations ordinales
Techniques décrites : statistique du khi-2, test d'indépendance du khi-2, contributions au khi-2, t de Tschuprow, v de Cramer, lambda de Goodman et Kruskal, tau de Goodman et Kruskal, U de Theil, coefficient phi, correction de continuité, Q de Yule, kappa de Cohen, kappa de Fleiss, gamma de Goodman et Kruskal, tau-b de Kendall, tau-c de Kendall, d de Sommers
Ouvrage : Etude des dépendances - Variables qualitatives - Tableau de contingence et mesures d'association

samedi 26 septembre 2009

Analyse de corrélation

Ce document décrit les méthodes statistiques destinées à quantifier et tester la liaison entre 2 variables quantitatives : on parle d’analyse de corrélation.

Il est subdivisé en 2 grandes parties. La première est consacrée à la corrélation brute : principalement le coefficient de corrélation de Pearson, mais aussi les coefficients non paramétriques de Spearman et Kendall. La seconde aborde la question des corrélations partielles et semi-partielles.

Pour chaque indicateur étudié, nous présentons la mise en place du test de significativité, et éventuellement le calcul des intervalles de confiance.

Mots-clés : corrélation brute, corrélation partielle, corrélation semi-partielle
Techniques décrites : r de Pearson, rho de Spearman, tau de Kendall, corrélation partielle d’ordre 1, corrélation partielle d’ordre p, rho de Spearman partiel, corrélation semi-partielle d’ordre 1 et d’odre p
Ouvrage : Analyse de corrélation – Etude des dépendances, Variables quantitatives

dimanche 20 septembre 2009

Probabilités et Statistique - Note de cours

Ce document est un support de cours pour les enseignements des probabilités et de la statistique. Il couvre l'analyse combinatoire, le calcul des probabilités, les lois de probabilités d'usage courant et les tests d'adéquation à une loi.

Il correspond approximativement aux enseignements en L2 de la filière Sciences Économiques et Gestion, Administration Économique et Sociale (AES).

Chapitres : Eléments d’analyse combinatoire, définition de la probabilité, axiome du calcul des probabilités, les schémas de tirages probabilistes, probabilité de bayes, les variables aléatoires, caractéristiques d’une variable aléatoire, les lois discrètes, les lois continues, test d’adéquation à une loi
Ouvrage : Probabilités et Statistique – Note de cours

Tests de conformité à la loi normale

Un test d'adéquation permet de statuer sur la compatibilité d'une distribution observée avec une distribution théorique associée à une loi de probabilité. Il s'agit de modélisation. Nous résumons une information brute, une série d'observations, à l'aide d'une fonction analytique paramétrée. L'estimation des valeurs des paramètres est souvent un préalable au test de conformité. Au delà de la simplification, le test permet de valider une appréhension du processus de formation des données, il permet de savoir si notre perception du réel est compatible avec ce que nous observons.

Parmi les tests d'adéquation, la conformité à la loi normale (loi gaussienne, loi de Laplace-Gauss) revêt une importance supplémentaire. En effet, l'hypothèse de normalité des distributions sous-tend souvent de nombreux tests paramétriques (ex. comparaison de moyennes, résidus de la régression, etc.).

Dans ce support, nous présenterons dans un premier chapitre les techniques descriptives, notamment le très populaire graphique Q-Q plot. Dans le second, nous détaillerons plusieurs tests statistiques reconnus et implémentés dans la plupart des logiciels de statistique. Dans le troisième, nous étudierons les tests de symétrie des distributions qui, à certains égards, peuvent être considérés comme des cas particuliers des tests de normalité. Enfin, dans un quatrième et dernier chapitre, nous décrivons les formules de Box-Cox destinées à transformer les variables afin qu’elles soient compatibles avec la distribution normale.

Mots-clés : test de conformité à la loi normale, test d’adéquation, test de symétrie, transformation de box-cox
Techniques décrites : graphique Q-Q plot, droite de henry, test de shapiro-wilk, test de lilliefors, test de anderson-darling, test de jarque-bera, test de wilcoxon, test de van der waerden
Ouvrage : Tests de normalité – Techniques empiriques et test statistiques

Pratique de la Régression Linéaire Multiple

Le véritable travail du statisticien commence après la première mise en oeuvre de la régression linéaire multiple sur un fichier de données. Après ces calculs, qu'on lance toujours "pour voir", il faut se poser la question de la pertinence des résultats, vérifier le rôle de chaque variable, interpréter les coefficients, etc.

En schématisant, la modélisation statistique passe par plusieurs étapes : proposer une solution (une configuration de l'équation de régression), estimer les paramètres, diagnostiquer, comprendre les résultats, réfléchir à une formulation concurrente.

Dans ce support, nous mettrons l'accent, sans se limiter à ces points, sur deux aspects de ce processus : le diagnostic de la régression à l'aide de l'analyse des résidus, il peut être réalisé avec des tests statistiques, mais aussi avec des outils graphiques simples ; l'amélioration du modèle à l'aide de la sélection de variables, elle permet entre autres de se dégager du piège de la colinéarité entre les variables exogènes.

Mots-clés : régression linéaire simple et multiple, étude des résidus, points aberrants et points influents, colinéarité et sélection de variables, variables exogènes qualitatives, rupture de structure
Techniques décrites : test de durbin-watson, test des séquences, qraphique qq-plot, test de symétrie des résidus, test de jarque-bera, résidu standardisé, résidu studentisé, dffits, distance de cook, dfbetas, covratio, sélection forward, backward, stepwise, codage centerd effect, codage cornered effect, test de chow
Ouvrage : Pratique de la régression linéaire multiple – Diagnostic et sélection de variables

jeudi 17 septembre 2009

Comparaison de populations - Tests paramétriques

Comparaison de populations. Stricto sensu, les tests de comparaisons de
populations cherchent à déterminer si K (K ¸ 2) échantillons proviennent de la même population relativement à la variable d'intérêt. Nous sommes dans le cadre de la statistique inférentielle : à partir d'échantillons, nous tirons des conclusions sur la population. Au delà de ces aspects purement théoriques, les applications pratiques sont nombreuses.

Paramétrique. On parle de tests paramétriques lorsque l'on fait l'hypothèse que les variables qui décrivent les individus suivent une distribution paramétrée. Dans ce support, nous analyserons principalement (mais pas seulement) le cas des variables continues gaussiennes. Les paramètres sont estimés à partir des échantillons et, dans ce cas, les tests reviennent simplement à les comparer puisqu'elles définissent de manière non ambiguë la distribution. Ainsi, concernant la distribution gaussienne, les tests porteront essentiellement sur la moyenne et l'écart type. L'hypothèse de normalité n'est pas aussi restrictive qu'on peut le penser, nous en discuterons de manière détaillée plus loin.

Ce fascicule de cours se veut avant tout opérationnel. Il se concentre sur les principales formules et leur mise en oeuvre pratique avec un tableur. Autant que possible nous ferons le parallèle avec les résultats fournis par les logiciels de statistique. Le bien-fondé des tests, la pertinence des hypothèses à opposer sont peu ou prou discutées. Nous invitons le lecteur désireux d'approfondir les bases de la statistique inférentielle, en particulier la théorie des tests, à consulter les ouvrages énumérés dans la bibliographie.

Mots-clés : test statistique, test paramétrique, comparaison de populations, tanagra, logiciel R
Techniques décrites : comparaison de moyennes, test de student, analyse de variance à 1 facteur, comparaison de variances, test de fisher, test de bartlett, test de cochran, test de hartley, test de levene, test de brown-forsythe, comparaison de proportions, test d'homogénéité du KHI-2 pour 2 populations, tests pour échantillons appariés, tests multivariés, T2 de hotelling, manova, lambda de wilks
Ouvrage : Comparaison de populations - Tests paramétriques

lundi 14 septembre 2009

Pratique de la régression logistique

Cet ouvrage décrit la pratique de la régression logistique. Il est pour l’instant centré sur la régression logistique binaire, il est amené à évoluer en intégrant la régression logistique polytomique dans un proche avenir.

Il aborde tous les grands thèmes du domaine : l’estimation des paramètres via la maximisation de la vraisemblance ; les intervalles de confiance et les tests de significativité ; l’interprétation des coefficients (sous la forme d’odds-ratio) ; l’évaluation de la régression ; la prédiction et les intervalles de prédiction ; le redressement sur les échantillons non représentatifs ; l’analyse des interactions ; le diagnostic de la régression via l’analyse des résidus ; etc. (15 chapitres).

L’ouvrage est très peu théorique. Il cherche à mettre en avant les aspects pratiques. Il est abondamment illustré à l’aide d’exemples traités à l’aide de logiciel libres (ou gratuits), principalement Tanagra et R. Souvent, les calculs sont également reproduits manuellement dans le tableur Excel pour que le lecteur puisse inspecter dans le détail les formules utilisées. Les données sont accessibles en ligne, tout un chacun pourra reproduire les exercices.

Mots clés : régression logistique, tanagra, R
Ouvrage : Pratique de la régression logistique – Régression logistique binaire et polytomique

lundi 7 septembre 2009

Tanagra - Séminaire au L3I

Un très sympathique séminaire au sein du laboratoire L3I (Laboratoire Informatique, Image et Interaction) de l’Université de la Rochelle a été l’occasion de faire le point sur Tanagra et de le positionner par rapport aux principaux outils libres. Un petit bilan numérique a été fait également. Sur la période 01-09-2008 au 31-08-2009 (une année), l’ensemble des sites web qui gravitent autour de Tanagra, comprenant le site du logiciel mais aussi les sites de tutoriels et de supports de cours, a enregistré 171.697 visites, soit 470 visites par jour. Une grande partie vient de France (77.117) ; puis vient le Maghreb (11.603 – Algérie, 10.855 – Maroc et 7543 – Tunisie)... (voir le pdf pour plus de précisions). Je suis très content que ce travail contribue à la diffusion de la connaissance.

Voici le résumé de l’exposé.

Titre : Tanagra - logiciels libres, spécificités et applications
Auteur : Ricco Rakotomalala, Laboratoire ERIC, Université Lyon 2

Avec internet, les logiciels libres (gratuits) connaissent un essor sans précédent. Dans le domaine du Data Mining et de l'apprentissage automatique, les outils développés par les chercheurs dans les laboratoires, uniquement connus des initiés, sont maintenant mondialement diffusés à moindre coût. Ce succès croissant introduit des contraintes. De nouvelles exigences en matière de qualité apparaissent. Il est impensable de mettre à la disposition d'autres chercheurs ou d'utilisateurs néophytes, un outil totalement abscons ou, plus grave encore, qui n'effectue pas les calculs correctement. Finalement, ces dernières années, les logiciels libres à grande diffusion intégrant tout le cycle du Data Mining (accès aux données, préparation et sélection de variables, apprentissage automatique, validation et déploiement) sont assez rares. Ces outils partagent une particularité essentielle en recherche : le code source est accessible, tout le monde a la possibilité de vérifier ce qui est réellement codé.

Dans notre exposé, nous présenterons le logiciel Tanagra que nous avons développé. Dans un premier temps, nous essaierons de mettre en avant les spécifications qui ont conduit à son élaboration, son évolution au fil du temps, et les éléments périphériques qui accompagnent sa diffusion. Dans un deuxième temps, nous le comparerons aux principaux logiciels libres, largement reconnus dans notre communauté : Orange, Knime, R, RapidMiner, Weka. Nous nous baserons principalement sur les étapes clés du Data Mining pour évaluer les solutions qui ont été mises en place par les différents outils. Des petits exemples didactiques permettront de juger de leur comportement réel. Enfin, dans un troisième temps, pour donner un tour concret à notre exposé, nous détaillerons l'utilisation de notre outil lors d'une collaboration avec un laboratoire externe, non spécialiste du Data Mining, où l'objectif initial était de classer automatiquement des planctons à partir d'images. Nous constaterons qu'au delà de la simple application des algorithmes, l'utilisation d'une plate-forme complète permet d'élargir l'horizon d'analyse et de mieux préciser les objectifs d'une étude.

Mots clés : data mining, logiciel libre, Tanagra, applications
PDF du séminaire : Tanagra

vendredi 29 mai 2009

Statistiques descriptives (suite)

La statistique descriptive vise à résumer l’information portée par un tableau de données. « Trop d’informations tue l’information » a-t-on coutume de dire. Il est illusoire d’inspecter un tableau contenant des centaines, voire des milliers, d’observations et d’en déduire des tendances.

L’objectif de la statistique descriptive est de nous fournir une image simplifiée de la réalité, en mettant en exergue des caractéristiques qui ne sont pas discernables de prime abord. Elle emmène un nouvel éclairage sur les données. Elle s’appuie pour cela sur des indicateurs et des représentations graphiques qui, pour simples qu’elles soient, sont très souvent pertinentes pour une bonne compréhension de la structure des données.

Ce thème a déjà été abordé dans un de nos précédents didactciels (voir référence). Nous l'abordons de manière plus approfondie ici en le présentant selon deux axes. Tout d’abord nous ferons la distinction « techniques univariées », qui étudient les variables individuellement, et « techniques bivariées », qui étudient les relations entre 2 variables. Le second axe repose sur la distinction entre les variables catégorielles (qualitatives nominales) et les variables continues (quantitatives).

Mots clés : descriptive statistics, statistique univariée, statistique bivariée
Composants : UNIVARIATE DISCRETE STAT, CONTINGENCY CHI-SQUARE, UNIVARIATE CONTINUOUS STAT, SCATTERPLOT, LINEAR CORRELATION, GROUP CHARACTERIZATION
Lien : fr_Tanagra_Descriptive_Statistics.pdf
Données : enquete_satisfaction_femmes_1953.xls
Références :
Tutoriel Tanagra, "Statistiques descriptives"

vendredi 15 mai 2009

Stratégie « wrapper » pour la sélection de variables

La sélection de variables est un aspect essentiel de l’apprentissage supervisé. Nous devons déterminer les variables pertinentes pour la prédiction des valeurs de la variable à prédire, pour différentes raisons : un modèle plus simple sera plus facile à comprendre et à interpréter ; le déploiement sera facilité, nous aurons besoin de moins d’informations à recueillir pour la prédiction ; enfin, un modèle simple se révèle souvent plus robuste en généralisation c.-à-d. lorsqu’il est appliqué sur la population.

Trois familles d’approches sont mises en avant dans la littérature. Les approches FILTRE consistent à introduire les procédures de sélection préalablement et indépendamment de l’algorithme d’apprentissage mise en oeuvre par la suite. Pour les approches INTEGREES, le processus de sélection fait partie de l’apprentissage. Les algorithmes d’induction d'arbres de décision illustrent parfaitement cette méthode. Enfin, l’approche WRAPPER cherche à optimiser un critère de performance en présentant à la méthode d’apprentissage des scénarios de solutions. Le plus souvent, il s’agit du taux d’erreur. Mais en réalité, tout critère peut convenir.

Dans ce didacticiel, nous mettrons en œuvre la méthode WRAPPER couplée avec le modèle bayesien naïf (modèle d’indépendance conditionnelle). Nous utilisons les logiciels SIPINA et R. Pour ce dernier, le code écrit est le plus générique possible afin que le lecteur puisse comprendre chaque étape du processus de sélection et adapter le programme à d’autres données, et à d’autres méthodes d’apprentissage supervisé.

La stratégie WRAPPER est a priori la meilleure puisqu’elle optimise explicitement le critère de performance. Nous vérifierions cela en comparant les résultats avec ceux fournis par l’approche FILTRE (méthode FCBF) proposée dans TANAGRA. Nous verrons que les conclusions ne sont pas aussi tranchées qu’on pourrait le croire.

Mots clés : sélection de variables, apprentissage supervisé, classifieur bayesien naïf, wrapper, fcbf, sipina, logiciel R, package RWeka,
Composants : DISCRETE SELECT EXAMPLES, FCBF FILTERING, NAIVE BAYES, TEST
Lien : fr_Tanagra_Sipina_Wrapper.pdf
Données : mushroom_wrapper.zip
Références :
JMLR Special Issue on Variable and Feature Selection - 2003
R Kohavi, G. John, « The wrapper approach », 1997.

samedi 9 mai 2009

Analyse factorielle des correspondances avec R

Ce tutoriel reproduit sous le logiciel R, l’analyse factorielle des correspondances (AFC) décrite dans l’ouvrage de Lebart et al., pages 103 à 107. Les justifications théoriques et les formules sont disponibles dans le même ouvrage, pages 67 à 103.

Ces calculs ont été reproduits dans Tanagra dans un de nos anciens didacticiels (AFC - Association médias et professions) [Note de mise à jour (01/07/2013) : un support de cours dédié à l'AFC est maintenant disponible]. Nous pouvons ainsi comparer les sorties. Si le mode de présentation est un peu différent, les résultats sont strictement les mêmes. Ils sont également identiques à ceux de notre ouvrage de référence. Heureusement.

Plusieurs packages de R peuvent mener une AFC, nous avons choisi FactorMineR pour sa simplicité et son adéquation avec les sorties usuelles des logiciels reconnus.

Mots clés : logiciel R, analyse factorielle des correspondances multiples, AFC, représentation simultanée
Composants : CA, FactoMineR
Lien : afc_avec_r.pdf
Données : afc_avec_r.zip
Références :
L. Lebart, A. Morineau, M. Piron, "Statistique Exploratoire Multidimensionnelle", Dunod, 2000 ; pages 67 à 103, partie théorique ; pages 103 à 107, pour l’exemple que nous traitons.
Tutoriel Tanagra, "Analyse Factorielle des Correspondances - Support de cours"
Tutoriel Tanagra, "AFC - Association médias et professions"
Tutoriel Tanagra, "Analyse des correspondances - Comparaison de logiciels"
Husson, Le, Josse, Mazet, « FactoMineR »

mercredi 6 mai 2009

Analyse des Corresponsances Multiples avec R

Ce tutoriel reproduit sous le logiciel R, l’analyse des correspondances multiples (ACM) décrite dans l’ouvrage de Tenenhaus, pages 266 à 276. Les justifications théoriques et les formules sont disponibles dans le même ouvrage, pages 253 à 264.

Ces calculs ont été reproduits dans Tanagra dans un de nos anciens didacticiels (AFCM - Races canines). Nous pouvons ainsi comparer les sorties. Si le mode de présentation est un peu différent, les résultats sont strictement les mêmes. Ils sont également identiques à ceux de notre ouvrage de référence. Heureusement.

Plusieurs packages de R peuvent mener une ACM (ou AFCM – Analyse factorielle des correspondances multiples), nous avons choisi FactorMineR pour sa simplicité et son adéquation avec les sorties usuelles des logiciels reconnus.

Mots clés : logiciel R, analyse des correspondances multiples, ACM, analyse factorielle de correspondances multiples, AFCM, représentation pseudo-barycentrique, représentation barycentrique
Composants : MCA, FactoMineR
Lien : afcm_avec_r.pdf
Données : afcm_avec_r.zip
Références :
M. Tenenhaus, « Statistique – Méthodes pour décrire, expliquer et prévoir », Dunod, 2006 ; pages 253 à 264, partie théorique ; pages 266 à 276, pour l’exemple que nous traitons.
Tutoriel Tanagra, "AFCM - Comparaison de logiciels"
Tutoriel Tanagra, "AFCM - Races canines"
Husson, Le, Josse, Mazet, « FactoMineR »

mardi 5 mai 2009

Installation des packages sous R

R est à la fois un langage de programmation et un logiciel statistique, c’est le point de vue de la majorité des utilisateurs et il est tout à fait justifié.

Une autre manière de voir les choses serait de dire que R est un langage de programmation où l’objet de base est un vecteur. Il est ainsi particulièrement adapté au traitement statistique. Ce qui explique sa spécialisation dans ce domaine d’ailleurs, bien qu’en réalité son champ d’application soit plus large.

Cette spécialisation est d’autant plus marquée que R dispose d’une multitude de fonctions statistiques, extensibles à l’infini avec le système des packages.

L’idée est simple. Tout un chacun peut écrire une bibliothèque externe qu’il peut plugger dans R, sans avoir à modifier ou à recompiler le programme appelant. La procédure semble simple pourvu qu’on se conforme aux spécifications. Les avantages sont incommensurables. Pour le chercheur, il peut se consacrer aux méthodes qu’il développe en s’intégrant dans un environnement bien défini, en bénéficiant des fonctionnalités de gestion de données de R, et avec la possibilité d’utiliser des méthodes développées par ailleurs. Pour les praticiens, c’est l’assurance de disposer des techniques de pointe dans tous les domaines du traitement des données (statistique, analyse de données, data mining). Les mises à jour et les addenda sont quasi-journaliers.

Mots clés : logiciel R, package, arbres de décision
Composants : library, rpart
Lien : installation et gestion des packages.pdf
Références :
R Team, « The R Project for Statistical Computing ».
R. Rakotomalala, « Cours Programmation R ».

Diagnostic de la régression avec R

Ce didacticiel illustre les concepts présentés dans la deuxième partie de mon cours d’économétrie. Il s’agit de diagnostiquer une régression linéaire multiple à l’aide des graphiques des résidus (entre autres, le graphique quantile-quantile plot, etc.), de l’analyse des points atypiques, de la détection de la colinéarité.

Un processus de sélection automatique de variables est mis en place à l’aide de la procédure stepAIC (package MASS).

Les procédures et les résultats peuvent être mis en parallèle avec ceux proposés par Tanagra, présentés par ailleurs dans une série de didacticiels : Régresison – Expliquer la consommation de véhicules ; Sélection forward – Crime Dataset ; Colinéarité et régression ; Points aberrants et influents dans la régression.

Mots clés : logiciel R, régression linéaire multiple, économétrie, diagnostic, résidus, points atypiques, points aberrants, points influents, colinéarité, critère VIF, sélection de variables
Composants : lm, influence.measures, res.standard, res.student, stepAIC
Lien : regression - detection des donnees aberrantes - selection de variables.pdf
Données : automobiles_pour_regression.txt
Références :
R. Rakotomalala, "Cours Econométrie", Université Lumière Lyon 2.
R. Rakotomalala, "Pratique de la régression linéaire multiple – Diagnostic et sélection de variables", Université Lumière Lyon 2.

lundi 4 mai 2009

Analyse en Composantes Principales avec R

Ce didacticiel reproduit un exemple traité dans l’ouvrage de Saporta (2006), à la différence que l’analyse a été menée entièrement dans R à l’aide de la procédure princomp(.) (package stats, installé et chargé automatiquement).

Les mêmes calculs ont été réalisés sous Tanagra (ACP - Description de véhicules) (Note de mise à jour : d'autres outils sont disponibles - "ACP avec Tanagra - Nouveaux outils" [15/06/2012]). Nous pouvons donc comparer les résultats fournis par le livre, ceux de Tanagra et ceux rapportés dans ce document. Bonne nouvelle, ils sont strictement identiques.

L’analyse couvre les sujets suivants : construction du cercle des corrélations, projection des individus dans le plan factoriel, traitement des variables illustratives (supplémentaires) qualitatives et quantitatives, traitement des individus illustratifs (supplémentaires).

Le sujet peut être complété par la lecture du didacticiel dédié à la détection du nombre d'axes en analyse en composantes principales.Un support de cours consacré à l'ACP est aujourd'hui [29/07/2013] disponible.

Mots clés : logiciel R, analyse en composantes principales, ACP, cercle de corrélation, variables illustratives, individus illustratifs
Composants : princomp
Lien : acp_avec_r.pdf 
Données : acp_avec_r.zip
Références :
G. Saporta, « Probabilités, analyse des données et statistique », Dunod, 2006 ; pages 155 à 179.
Tutoriel Tanagra, "Analyse en composantes principales - Support de cours"
Tutoriel Tanagra, "ACP - Description de véhicules"
Tutoriel Tanagra, "ACP avec R - Détection du nombre d'axes"

mercredi 15 avril 2009

Tanagra - Version 1.4.31

M. Thierry Leiber a amélioré l'add-on réalisant la connexion entre Tanagra et Open Office. Il est maintenant possible, sous Linux, d'installer la macro complémentaire sous Open Office et de lancer directement Tanagra après avoir sélectionné les données (voir le tutoriel associé). Merci beaucoup Thierry pour cette contribution qui élargit le panel des utilisateurs de Tanagra.

Suite à une suggestion de M. Laurent Bougrain, la matrice de confusion est ajoutée à la sauvegarde automatique des résultats lors des expérimentations à grande échelle (voir « Tanagra en Ligne de commande »). Merci à Laurent, et à tous ceux qui par leurs commentaires constructifs m'aident à aller dans le bon sens.

Par ailleurs deux composants de régression par la méthode des Machines à Vastes Marges (Support Vector Regression) ont été ajoutés : Epsilon-SVR et Nu-SVR. Un didacticiel présente ces méthodes et compare nos résultats avec ceux du logiciel R. Tanagra, comme R avec la package « e1071 », s'appuie sur la fameuse bibliothèque LIBSVM.

Support Vector Regression

Les SVM (séparateur à vaste marge, machines à vecteurs de support, support vector machine en anglais) sont des méthodes bien connues en apprentissage supervisé. Leur utilisation est en revanche moins répandue en régression. On parle de « Support Vector Regression » (SVR).

La méthode est peu diffusée auprès des statisticiens. Pourtant, elle cumule des qualités qui la positionnent favorablement par rapport aux techniques existantes. Elle se comporte admirablement bien lorsque le ratio nombre de variables sur le nombre d’observations devient très défavorable, avec des prédicteurs fortement corrélés. Encore faut-il bien entendu trouver le paramétrage adéquat, nous y reviendrons dans ce didacticiel. Autre atout, avec le principe des noyaux, il est possible de construire des modèles non linéaires sans avoir à produire explicitement de nouveaux descripteurs.

Le premier objectif de ce didacticiel est de montrer la mise en œuvre de deux nouveaux composants SVR de Tanagra 1.4.31 : espilon-SVR et nu-SVR. Ils sont issus de la bibliothèque LIBSVM que nous utilisons par ailleurs pour l’apprentissage supervisé (voir le composant C-SVC). Nous comparerons nos résultats avec ceux du logiciel R (version 2.8.0 - http://cran.r-project.org/). Nous utilisons pour ce dernier le package e1071 basée également sur la bibliothèque LIBSVM.

Le second objectif est de proposer un nouveau composant d’évaluation de la régression. Il est d’usage en apprentissage supervisé de scinder le fichier en deux parties, une pour la création du modèle, l’autre pour son évaluation, afin d’obtenir une estimation non biaisée des performances. Cette pratique est très peu répandue en régression. Pourtant, la procédure est nécessaire dès que nous sommes emmenés à comparer des prédicteurs de complexité différente. Nous constaterons ainsi dans ce didacticiel que les indicateurs usuels calculés sur les données d’apprentissage sont très trompeurs dans certaines situations.

Mots clés : support vector regression, support vector machine, régression, régression linéaire multiple, évaluation de la régression, logiciel R, package e1071
Composants : MULTIPLE LINEAR REGRESSION, EPSILON SVR, NU SVR, REGRESSION ASSESSMENT
Lien : fr_Tanagra_Support_Vector_Regression.pdf
Données : qsar.zip
Références :
C.C. Chang, C.J. Lin, "LIBSVM - A Library for Support Vector Machines".
S. Gunn, « Support Vector Machine for Classification and Regression », Technical Report of the University of Southampton, 1998.
A. Smola, B. Scholkopf, « A tutorial on Support Vector Regression », 2003.

Connexion Open Office Calc sous Linux

L'intégration de Tanagra dans un tableur, que ce soit Excel ou Open Office Calc (OOCalc), via le système des Add-Ons, est certainement un des principaux facteurs de diffusion du logiciel. Sans connaissances particulières concernant la manipulation de fichiers, un utilisateur peut envoyer directement ses données à partir d'un environnement auquel il est familiarisé, le tableur, vers un logiciel spécialisé de Data Mining.

Les macros ont été initialement développées pour l'environnement Windows. Je me suis intéressé depuis peu au fonctionnement de Tanagra sous Linux via Wine. Je me suis rendu compte que le logiciel était pleinement fonctionnel sans l'utilisateur n'ait besoin de procéder à des tripatouillages compliqués du système. Il ne restait plus qu'à établir une connexion entre le tableur phare sous Linux (OOCalc) et Tanagra.

M. Thierry Leiber a réalisé ce travail pour la version 1.4.31 de Tanagra. Il a étendu la macro complémentaire initialement destinée à la version d'Open Office sous Windows. En résumant un peu, le code consiste à tester le système en vigueur, de former la commande adéquate pour lancer Tanagra, et transférer à ce dernier les données via le presse papier. De fait, l'Add-On est maintenant opérationnel que ce soit sous Windows ou sous Linux. Il a été testé en tous les cas dans les configurations suivantes : Windows XP + Open Office 3.0.0 ; Windows Vista + Open Office 3.0.1 ; Ubuntu 8.10 + Open Office 2.4 ; Ubuntu 8.10 + Open Office 3.0.1.

Ce document reprend donc un de nos anciens tutoriels. La nouveauté ici est que nous travaillons sous Linux (distribution Ubuntu 8.10). Nous réaliserons une analyse en composantes principales pour illustrer notre propos. Mais notre principal objectif est bien de montrer le portage de la connexion sous Linux.

Mots clés : open office calc, add-on, analyse en composantes principales, ACP, cercle des corrélations, variable illustrative, linux, ubuntu 8.10 intrepid ibex
Composants : PRINCIPAL COMPONENT ANALYSIS, CORRELATION SCATTERPLOT
Lien : fr_Tanagra_OOCalc_under_Linux.pdf
Données : cereals.xls
Références :
Tutoriel Tanagra, « Connexion Open Office Calc »
Tutoriel Tanagra, « Tanagra sous Linux »
Tutoriel Tanagra, « Connexion Excel [Macro complémentaire] »

lundi 16 février 2009

Sipina - Formats de fichiers

L’accès aux données est la première étape du processus Data Mining. Lorsque nous souhaitons initier un traitement à l’aide d’un logiciel quelconque, la première question que nous nous posons est systématiquement « comment dois-je procéder pour importer mes données ? ». C’est donc un critère important pour juger de la qualité d’un logiciel. Nous pourrons fatalement moins consacrer de temps à l’exploration et l’interprétation lorsque la lecture et la manipulation des données deviennent des opérations difficiles et fastidieuses.

Deux points de vue permettent de positionner les formats de fichier : la souplesse et la performance. On entend par souplesse la capacité à manipuler facilement le fichier, même en dehors du logiciel spécialisé. Le fichier texte est le format à privilégier dans ce contexte. Nous pouvons l’ouvrir, le modifier et l’enregistrer dans n’importe quel éditeur de texte. De plus, tout logiciel destiné à la manipulation de données (tableur, système de gestion de base de données entre autres) sait appréhender ce type de fichier. La performance revient surtout à évaluer la rapidité des accès et, dans une moindre mesure, l’occupation disque. Le critère de performance est surtout important lorsque nous avons à manipuler de très grands fichiers. En effet, Sipina réalisant les traitements en mémoire centrale, comme la majorité des logiciels de Data Mining libres d’ailleurs, il n’est pas nécessaire de répéter fréquemment les opérations de chargement et de sauvegarde.

Dans ce document, notre premier objectif est de faire le point sur les différents formats de fichier que gère Sipina. Il y a les fichiers textes au format simplifié (texte avec séparateur tabulation) ou spécialisé (ARFF de Weka) ; il y a les formats binaires que seul Sipina sait lire, mais qui sont très performants. Nous décrirons également la solution originale que nous avons mis en place pour faciliter le transfert d’Excel vers Sipina. Certaines solutions sont décrites en détail dans des didacticiels accessibles par ailleurs, nous indiquerons les pointeurs adéquats au fil du texte. L’autre objet de ce didacticiel est de comparer les performances de Sipina selon ces différents formats, lorsque l’on traite un fichier de grande taille, comportant 4.817.099 observations et 42 variables.

Enfin, nous avons construit un arbre de décision à partir de ce fichier pour évaluer un peu le comportement de Sipina face à un tel volume.

Mots clés : fichier, format, texte, csv, arff, weka, fdm, fdz, zdm, arbres de décision
Lien : fr_Sipina_File_Format.pdf
Données : weather.txt et kdd-cup-discretized-descriptors.txt.zip

mercredi 11 février 2009

Règles d'Association Prédictives

Les algorithmes d’extraction des règles d’association ont été initialement mis au point pour découvrir des liens logiques entre des variables ayant le même statut. Les règles d’association prédictives en revanche cherchent à produire les combinaisons d’items qui caractérisent au mieux une variable qui joue un rôle à part, on cherche à prédire ses valeurs.

Fondamentalement, l’algorithme est peu modifié. L’exploration est simplement restreinte aux itemsets qui comportent la variable à prédire. Le temps de calcul est d’autant réduit. Deux composants de Tanagra sont dédiés à cette tâche, il s’agit de SPV ASSOC RULE et SPV ASSOC TREE. Ils sont accessibles dans l’onglet ASSOCIATION.

Par rapport aux approches classiques, les composants de Tanagra introduisent une spécificité supplémentaire : nous avons la possibilité de préciser la classe (couple « variable à prédire = valeur ») que l’on souhaite prédire. L’intérêt est de pouvoir ainsi paramétrer finement l’algorithme de recherche, en relation directe avec les caractéristiques des données. Cela s’avère décisif par exemple lorsque les prévalences des modalités de la variable à prédire sont très différentes.

Nous avions déjà présentés le composant SPV ASSOC TREE par ailleurs. Mais c’était dans le contexte de la caractérisation multivariée de groupes d’individus. Nous l’opposions alors au composant GROUP CHARACTERIZATION. Dans ce didacticiel, nous comparerons le comportement des composants SPV ASSOC TREE et SPV ASSOC RULE sur un problème de prédiction. Nous mettrons en avant leurs points communs, les problèmes qu’ils savent traiter ; et leurs différences, SPV ASSOC RULE, en plus de proposer des mesures d’intérêt des règles originales, a la capacité de simplifier la base de règles.

Mots clés : règles d’association prédictives, mesures d'intérêt des règles, simplification des bases de règles
Composants : SPV ASSOC TREE, SPV ASSOC RULE
Lien : fr_Tanagra_Predictive_AssocRules.pdf
Données : credit_assoc.xls
Références :
R. Rakotomalala, « Règles d’association »

vendredi 6 février 2009

Utiliser et paramétrer A PRIORI MR

L’extraction des règles d’association est une approche très populaire pour dégager les interdépendances entre les caractéristiques des individus. Elle a beaucoup été utilisée pour étudier les achats concomitants chez les consommateurs. Le résultat se présente sous la forme d’une règle logique du type « SI un individu a acheté tel ou tel produit ALORS il achètera également tel et tel produit ». Bien entendu, il est possible d’étendre le champ d’application de la méthode à d’autres domaines.

Nous avons présenté les règles d’association à plusieurs reprises dans nos didacticiels. La méthode A PRIORI est certainement la plus connue. Malgré ses qualités, l’approche présente un écueil fort : le nombre de règles produites peut être très élevé. La capacité à mettre en avant les « meilleures » règles, celles qui sont porteuses d’informations « intéressantes », devient ainsi un enjeu fort.

Ces dernières années, on a vu fleurir un nombre impressionnant de publications cherchant à proposer des mesures d’intérêt des règles. Leur mise en œuvre est simple : on assigne un score (mesure d’intérêt) à chaque règle, on trie alors la base de règles de manière à ce que celles qui sont les plus informatives apparaissent en premier.

Le composant A PRIORI MR (onglet ASSOCIATION) est un outil expérimental qui propose plusieurs mesures d’évaluation des règles. Il met en avant, entres autres, le concept de « valeur-test ». C’est une mesure statistique développée par A. Morineau (1984), décrite dans un ouvrage (Lebart, Morineau et Piron, 2000), et largement utilisée dans le logiciel commercial SPAD (http://www.spad.eu/).

Mots clés : règles d’association, mesures d'intérêt des règles
Composants : A PRIORI MR
Lien : fr_Tanagra_APrioriMR_Component.pdf
Données : credit_assoc.xls
Références :
R. Rakotomalala, « Règles d’association »

Mesures d'intérêt des règles dans A PRIORI MR

Ce document recense les mesures d’évaluation des règles d’association proposées par le composant A PRIORI MR. Elles résultent d’études relatées dans une série de publications de A. Morineau et R. Rakotomalala (essentiellement en 2006).

Une mesure sert à caractériser la pertinence d’une règle. Elle permet de les classer. Elle devrait aussi permettre de discerner celles qui sont « significativement intéressantes » de celles qui ne le sont pas. Ce dernier point reste totalement prospectif. Il n’y a pas de solutions réellement satisfaisantes à ce jour.

Mots clés : règles d'association, mesures d'intérêt des règles, valeur test
Composants : A PRIORI MR
Lien : fr_Tanagra_APrioriMR_Measures.pdf
Références :
A. Morineau, R. Rakotomalala, "Crtière VT-100 de sélection des règles d'association", in Actes de EGC-2006, pp. 581-592, Lille, 2006.
Wikipedia, "Association rule learning"

vendredi 23 janvier 2009

Comparaison des performances sous Linux

La courbe de gain est un outil important du ciblage marketing. On le retrouve sous des terminologies différentes selon les logiciels (gain chart, courbe lift, lift chart, courbe lift cumulative, etc.). Mais l'idée est toujours la même : nous affectons un score à des individus, nous trions la base selon un score décroissant, nous élaborons alors une graphique nuage de points avec, en abscisse, la proportion des individus dans la cible (les x premiers – en pourcentage - dans la base triée selon le score), et en ordonnée, la fraction des positifs que l'on y retrouve. Le dernier point est de coordonnée (100%, 100%) : lorsque tous les individus sont inclus dans la cible, nous sommes sûrs de retrouver tous les positifs.

L'élaboration de la courbe de gains dans Tanagra est décrite par ailleurs (http://tutoriels-data-mining.blogspot.com/2008/03/ciblage-marketing-scoring-coil.html). Notre idée dans ce didacticiel est d'élargir la description aux autres logiciels libres (Knime, RapidMiner et Weka). La seconde originalité de cette étude est que nous réalisons toutes les opérations sous Linux (distribution Ubuntu 8.10). Nous constaterons que Tanagra, tout comme les logiciels sus-cités, fonctionnent parfaitement. Cela nous amène à la troisième originalité de ce travail, nous traitons un fichier d'une taille importante avec 2.000.000 d'observations et 41 variables. Nous pourrons évaluer la tenue de ces logiciels lorsqu'on les place dans des situations extrêmes, de surcroît sur une machine très peu performante.

Nous adopterons la même démarche pour chaque logiciel. Dans un premier temps, nous traitons un échantillon de 2.000 observations, nous pouvons ainsi paramétrer à notre aise les calculs et obtenir au moins une fois un résultat que l'on peut montrer. Dans un second temps, nous modifions la source de données pour traiter le fichier complet. Nous mesurons alors le temps d’exécution, nous mesurons également l'occupation mémoire à l'issue de tous les traitements. Nous constaterons que certains logiciels ne pourront pas mener à leur terme les calculs.

Mots clés : scoring, ciblage marketing, analyse discriminante, courbe lift, courbe de gain, knime, rapidminer, weka, orange
Composants : SAMPLING, LINEAR DISCRIMINANT ANALYSIS, SCORING, LIFT CURVE
Lien : fr_Tanagra_Gain_Chart.pdf
Données : dataset_gain_chart.zip
Références :
Wikipedia, "Analyse discriminante linéaire"
R. Rakotomalala, "Ciblage marketing"

mardi 20 janvier 2009

Sipina sous Linux

Je suis dans la période où je (re)découvre Linux. Nous avons vu récemment qu'il était possible de travailler avec Tanagra sous Linux via Wine, simplement, sans contorsions compliquées.

Nous montrons dans ce document qu'il est possible de faire de même avec Sipina. Toutes les fonctionnalités du logiciel sont accessibles. On pense notamment aux outils interactifs qui permettent de guider la construction de l'arbre et d'explorer finement les sous-groupes d'observations associées aux nœuds.

Nous ne nous étendrons pas outre mesure sur ces fonctionnalités qui sont largement présentées par ailleurs dans plusieurs tutoriels accessibles sur le site web de Sipina. Notre principal objectif dans ce tutoriel est de montrer qu'il est possible d'utiliser Sipina sous Linux.

Nous utilisons la distribution française de Ubuntu 8.10. Nous avons également installé WINE, un outil extraordinaire qui permet d'exécuter un très grand nombre de logiciels initialement compilés pour Windows.

Mots clés : linux, ubuntu, wine, sipina, arbres de décision
Lien : fr_Sipina_under_Linux.pdf
Données : breast.txt
Références :
"Sipina", http://sipina.over-blog.fr/ ou http://eric.univ-lyon2.fr/~ricco/sipina.html
"Ubuntu", http://www.ubuntu-fr.org/
"Wine", http://doc.ubuntu-fr.org/wine

dimanche 11 janvier 2009

Tanagra sous Linux

Une question des utilisateurs qui revient souvent est : « est-ce que l'on peut utiliser Tanagra sous Linux ? ». La réponse est OUI et NON.

NON, parce que Tanagra est compilé avec Delphi pour Windows. L'exécutable ne peut pas être directement lancé dans l'environnement Linux.

OUI, parce qu'il y a WINE, un outil performant qui permet d'exécuter des applications Windows sous Linux. Nous pouvons ainsi profiter de toutes les fonctionnalités de Tanagra sans avoir à se poser des questions sur les éventuels problèmes de compatibilités, etc. De fait, l'utilisation de Tanagra sous Linux est complètement transparente. On clique sur le raccourci, le programme démarre, il est directement utilisable sans que l'on ait à se poser des questions compliquées. Plusieurs utilisateurs me l'avaient déjà signalé. Je me suis dit qu'il était temps de documenter tout cela.

Dans ce didacticiel, nous montrons comment faire fonctionner Tanagra dans UBUNTU (une distribution gratuite de Linux) via l'environnement WINE que nous devrons préalablement installer.

Mots clés : linux, ubuntu, wine
Lien : fr_Tanagra_under_Linux.pdf
Références :
"Ubuntu", http://www.ubuntu-fr.org/
"Wine", http://doc.ubuntu-fr.org/wine

mardi 6 janvier 2009

Coûts de mauvais classement en apprentissage supervisé

Tout le monde s’accorde à dire que l’intégration des coûts de mauvais classement est un aspect incontournable de la pratique du Data Mining. Diagnostiquer une maladie chez un patient sain ne produit pas les mêmes conséquences que de prédire la bonne santé chez un individu malade. Dans le premier cas, le patient sera soigné à tort, ou peut être demandera-t-on des analyses supplémentaires superflues ; dans le second cas, il ne sera pas soigné, au risque de voir son état se détériorer de manière irrémédiable. Pourtant, malgré son importance, le sujet est peu abordé, tant du point de vue théorique c.-à-d. comment intégrer les coûts dans l’évaluation des modèles (facile) que dans leur construction (un peu moins facile), que du point de vue pratique c.-à-d. comment les mettre en œuvre dans les logiciels.

La prise en compte des coûts lors de l’évaluation ne pose pas de problèmes particuliers. La prise en compte des coûts lors de l’élaboration du modèle de classement est moins connue. Plusieurs approches sont possibles.

Si les techniques existent, qu’en est-il de leur implémentation dans les logiciels libres ? Après investigations, on se rend compte que les logiciels qui les intègrent de manière naturelle sont très peu nombreux. Il semble que Weka soit l’un des rares à proposer des outils faciles à manipuler pour l’intégration des coûts. Ce constat nous a amené à introduire de nouveaux composants destinés à la prise en compte des coûts en apprentissage supervisé dans la version 1.4.29 de Tanagra.

Dans ce document, nous montrons la mise en œuvre de ces composants de Tanagra 1.4.29 sur un problème réel (réaliste). Nous avons également programmé ces mêmes procédures dans le logiciel R 2.8.0 (http://www.r-project.org/) pour donner une meilleure visibilité sur ce qui est implémenté. Nous comparerons nos résultats avec ceux de Weka 3.5.8. L’algorithme sous-jacent à toutes nos analyses sera un arbre de décision. Selon les logiciels, nous utiliserons C4.5, CART ou J48.

Mots clés : apprentissage supervisé, coûts de mauvais classement, arbres de décision, Weka 3.5.8, logiciel R 2.8.0, package rpart
Composants : CS-CRT, COST SENSITIVE LEARNING, COST SENSITIVE BAGGING, MULTICOST
Lien : fr_Tanagra_Cost_Sensitive_Learning.pdf
Données : dataset-dm-cup-2007.zip
Références :
J.H. Chauchat, R. Rakotomalala, M. Carloz, C. Pelletier, "Targeting Customer Groups using Gain and Cost Matrix: a Marketing Application", PKDD-2001.
J.H. Chauchat, R. Rakotomalala, "Cost sensitive C4.5"
Tutoriel Tanagra, "Apprentissage-test avec Sipina"