Université de Québec À Montréal Département d’Informatique Document d’utilisation : Environnement Weka H. Yazid Dirigé par : Prof . Hakim Lounis Environnement Weka Page 2 sur 28 26/01/2006 Table des matières I. Introduction ..............................................................................................................................3 I.1 Description globale de Weka ..................................................................................................3 I.2 Composants de l’environnement Weka ..................................................................................5 I.3 Préparation de l’ensemble des données d’apprentissage et de test (dataset) .........................5 II. Explorer .......................................................................................................................................7 II.1 Phase de prétraitement...........................................................................................................7 II.2 Application d’un algorithme d’apprentissage........................................................................9 III. Experimenter ............................................................................................................................14 III.1 Description globale de la phase d’initialisation des paramètres d’expérimentation ..........15 III.2 Phase d’exécution...............................................................................................................17 III.3 Phase d’analyse ..................................................................................................................19 IV. KnowledgeFlow environment..................................................................................................22 IV.1 Structure de KnowledgeFlow environnement....................................................................22 IV.2 Comment utiliser cet outil? ................................................................................................23 V. Conclusion.................................................................................................................................28 VI. Références................................................................................................................................28 Environnement Weka Page 3 sur 28 26/01/2006 I. Introduction Ce document se veut une présentation de l’environnement Weka et de son utilisation illustrée à travers des exemples. Dans cette section, nous allons donner une description sommaire de l’environnement Weka en commençant par sa définition, son rôle et ses différentes fonctionnalités assurées par ses différents composants. Avant d’utiliser cet environnement dans différentes expérimentations, il est nécessaire que les données utilisées à cet effet-la soient transcrites selon un format; une mise en forme des données. En d’autres termes, les données doivent être conformes aux formats de données disponibles au niveau de l’environnement Weka. Nous avons choisi différents datasets inclus dans le package Weka pour les trois outils Explorer, Experimenter et KnowledgeFlow environment pour explorer les différentes facettes de l’environnement Weka. Ce document est structuré principalement en trois grandes parties qui représentent les trois outils fournis par l’environnement Weka à savoir l’Explorer, l’Experimenter et le KnowledgeFlow. Ainsi, la première section sera consacrée à l’outil Explorer en définissant son rôle et ses fonctionnalités qui seront illustrées à travers un exemple. La seconde décrira le rôle et les différentes étapes de l’exécution d’une expérimentation par l’outil Experimenter. Ces étapes sont expliquées aussi via un exemple illustrant les différentes fonctionnalités de cet outil. La dernière section présentera l’outil KnowledgeFlow, son rôle et ses différentes fonctionnalités. Dans cette même section, nous présenterons comment construire un schéma de flux de connaissances en utilisant les composants de Weka présents dans la barre des outils. I.1 Description globale de Weka Weka (Waikato Environment for Knowledge Analysis) est un environnement de fouille de données développé par le groupe de recherche "machine learning" du département d’informatique de l’université de Waikato en Nouvelle-Zélande. Il est utilisé dans le domaine de la recherche, de l’éducation et de l’industrie. Il est écrit dans le langage Java et testé sur plusieurs plateformes tels Environnement Weka Page 4 sur 28 26/01/2006 que Linux et Windows. Cet environnement est un logiciel "open source" et est disponible sur le site du groupe de recherche "machine learning" du département d’informatique de l’université de Waikato [3]. Weka est une collection d'algorithmes d’apprentissage dont le but est de réaliser des tâches de fouille de données. Les algorithmes peuvent être appliqués directement à un ensemble de données ou appelés via un programme Java. Weka contient les outils pour le prétraitement de données, la classification, la régression, le groupement (clustering), les règles d'association et la visualisation. En effet, Weka permet d’effectuer un prétraitement sur un ensemble de données, d’appliquer un algorithme d’apprentissage, et d’analyser les résultats et les performances d’un classificateur. Il est aussi bien adapté pour intégrer de nouveaux algorithmes d’apprentissage. La version utilisée dans ce document est la plus récente : la version 3.4.6 (figure 1). Cette dernière présente de nouvelles fonctionnalités surtout au niveau de l’outil KnowledgeFlow par rapport à la version 3.4. Figure 1 Environnement Weka Environnement Weka Page 5 sur 28 26/01/2006 I.2 Composants de l’environnement Weka Weka possède plusieurs composants à savoir : - Explorer : ce module regroupe tous les packages importants de Weka à savoir le prétraitement, les algorithmes d’apprentissage, le groupement (clustering), les associations, la sélection des attributs et la visualisation. - Experimenter : permet d’exécuter plusieurs algorithmes d’apprentissage en mode lot (batch) et de comparer leurs résultats. - KnowledgeFlow environment : fournit les mêmes fonctionnalités que le composant "Explorer". Ces fonctionnalités sont représentées sous forme graphique et sont utilisées pour construire un schéma de flux de connaissances via une interface drag-and-drop. I.3 Préparation de l’ensemble des données d’apprentissage et de test (dataset) Cette opération est requise pour l’utilisation de tout outil de l’environnement Weka et c’est pour cette raison que l’on a préféré la décrire avant d’entamer la description des outils de Weka. Généralement, d’après la littérature, les données servant à l’expérimentation dans n’importe quel domaine sont stockées dans des fichiers Excel et le format des données utilisées par les tâches de fouille de données est "arff". Avant d’appliquer donc les algorithmes d’apprentissage, ces données doivent être transformées en un fichier de données avec l’extension "arff" pour être lu soit par Explorer, Experimenter ou KnowledgeFlow. Les transformations consistent à : - Sauvegarder le fichier de données d’apprentissage et de test au niveau de l’outil Excel sous la forme .csv (comma separated value); - Lire le fichier avec l’extension "csv" dans un éditeur; - Ajouter en entête du fichier les informations nécessaires au module "Explorer"; o Définition des données d’apprentissage par une relation sous forme de : @relation nom-des-données-d’apprentissage (Dataset), e.g., @relation iris (figure 2). Environnement Weka Page 6 sur 28 26/01/2006 o Définition des attributs du dataset avec leur type, e.g., @attribute petalwidth REAL (figure 2). o Fermeture de ces ajouts par le mot réservé @data. - Transformer toutes les virgules par le point et tous les points virgule par la virgule. Ces deux petites tâches doivent être faites dans l’ordre; - Sauvegarder le fichier transformé des données sous l’extension "arff". Voici un exemple de fichier de données sous le format "arff". Figure 2 Extrait du fichier ".arff" de iris Une fois les transformations effectuées, le processus de fouille de données est déclenché. Il est illustré via un exemple utilisant le dataset iris de la collection des données de l’environnement Weka. Environnement Weka Page 7 sur 28 26/01/2006 II. Explorer Cet outil permet à un utilisateur de réaliser certaines étapes du processus de fouille de données à savoir le prétraitement, l’application d’un algorithme d’apprentissage et l’analyse. Pour ce faire, Explorer regroupe plusieurs packages tels que les filtres, les classificateurs, les clusters, les règles d’association, la sélection des attributs et un composant de visualisation. Cet outil permet donc de réaliser les expérimentations, en utilisant des moyens tels que les classificateurs, les clusters et les règles d’association, qui nécessitent au préalable un traitement des données. Dans ce document, on se concentre uniquement sur le prétraitement et l’application d’un algorithme d’apprentissage (classificateur). Ce prétraitement est présenté et une illustration du fonctionnement de l’outil Explorer est fournie. II.1 Phase de prétraitement Cet outil peut être activé en cliquant sur l’option Explorer de la figure 1. La sélection de cette option fait apparaître la fenêtre représentée par la figure 3. Figure 3 Fenêtre Explorer Environnement Weka Page 8 sur 28 26/01/2006 Dans la fenêtre de prétraitement, nous trouvons : - Dans la partie supérieure, les trois possibilités d’ouverture d’un fichier de données d’apprentissage qui sont "Open file", "Open URL" et "Open DB"; - Le choix du filtre en cas de nécessité, d’information sur la relation et l’attribut sélectionné, d’une partie où tous les attributs sont affichés et une zone de visualisation en forme d’histogrammes de la distribution de l’attribut sélectionné. La figure 4 nous montre le contenu de la fenêtre de prétraitement après chargement du fichier de données de l’expérimentation via l’activation de l’option "Open file". Figure 4 Chargement de l’ensemble des données Dans la partie gauche, nous avons dans le premier cadre les informations sur les données de l’expérimentation chargées qui sont définies par une relation iris, ayant 150 instances et 5 attributs (4 variables indépendantes et la variable dépendante class). Tous les attributs sont affichés dans le cadre attributs. La sélection de la variable class dans la liste des attributs fait apparaître dans la partie droite les informations sur cette variable tels que le nom et le type. Avec Environnement Weka Page 9 sur 28 26/01/2006 la sélection de la variable à visualiser dans la partie droite, un histogramme des valeurs prises est affiché. II.2 Application d’un algorithme d’apprentissage Avant d’appliquer un algorithme d’apprentissage sur des données, un certain nombre de choix doivent être faits : - choisir l’algorithme d’apprentissage; - choisir le type de test : o utiliser l’ensemble d’apprentissage comme ensemble de test, o fournir l’ensemble de test, o appliquer la validation croisée avec le choix du nombre de partitions (fold) de l’ensemble des données (dans nos exemples, on a opté pour ce choix), o appliquer "percentage split" (partage de l’ensemble de données en un ensemble de données d’apprentissage et un ensemble de données test) ; le cas par défaut est 2/3 des données pour l’apprentissage et 1/3 des données pour le test. - sélectionner d’autres options si nécessaire; - sélectionner la variable à prédire (class pour notre exemple schématisé par les différentes figures); - lancer l’exécution de l’algorithme en activant le bouton "start". La figure suivante montre les résultats obtenus par l’application de l’algorithme J48 (une implantation de C4.5) sur le dataset iris. Les résultats sont structurés en trois volets : un volet résultats sommaires, un volet résultats par classes et un volet matrice de confusion. Les résultats sommaires donnent le nombre total d’instances classifiées correctement et incorrectement, la valeur de kappa, l’erreur absolue moyenne, l’erreur racine carrée moyenne, l’erreur relative absolue et l’erreur racine carrée relative. Le choix d’un ou de plusieurs de ces critères dépend de l’intérêt que leur porte l’utilisateur final. Les résultats par classes nous fournissent le taux d’instances classifiées correctement et incorrectement via les taux TP (true positif) et FP (false positif), la précision et d’autres informations statistiques. Quant à la matrice de confusion, cette table nous donne plus de précision concernant le nombre d’instances correctement et incorrectement classifiées correspondants aux taux TP et FP pour chaque classe. Les éléments de la diagonale de la matrice représentent les instances correctement classifiées (exemple : 49 Environnement Weka Page 10 sur 28 26/01/2006 instances pour Iris-setosa) et les autres éléments des colonnes sont les instances faux positifs (1 instance au total pour Iris-setosa). Par contre, la somme des nombres pour chaque ligne donne le nombre d’instances de chaque classe (50 instances pour Iris-setosa). Figure 5 Résultats de l’algorithme J48 D’autres possibilités sont offertes en cliquant sur le bouton droit de la souris et en pointant sur le nom de l’algorithme dans le champ "result list" (partie gauche). La figure 6 présente toutes les possibilités. Environnement Weka Page 11 sur 28 26/01/2006 Figure 6 Les possibilités de visualisation La liste des possibilités est divisée en trois catégories. La première concerne l’affichage des résultats. L’utilisateur a le choix entre afficher les résultats dans la fenêtre principale, une fenêtre séparée ou sauvegarder les résultats dans une mémoire tampon. La deuxième catégorie est pour charger un modèle ou le sauvegarder. La dernière catégorie considère la visualisation des erreurs, du modèle, et des courbes de marge et de seuil. Ainsi, si on choisit de visualiser l’arbre de décision dans la dernière catégorie, on obtient l’arbre affiché dans la fenêtre suivante (Figure 7). Environnement Weka Page 12 sur 28 26/01/2006 Figure 7 Visualisation de l’arbre de décision généré par J48 Une autre possibilité qui est très intéressante est la visualisation des nombres d’instances correctement et incorrectement classifiées, par classe. Cette possibilité est fournie par l’option "visualize classifier errors" qui nous permet d’avoir un graphe du nombre d’erreurs par classe en termes de nombre d’instances correctement classifiées. L’intérêt de cette option réside dans le fait que l’utilisateur peut déterminer exactement quelles sont les instances qui sont incorrectement classifiées et par la suite faire les corrections sur la répartition entre classes pour exécuter les expérimentations ultérieurement. La figure 8 montre le graphe mettant en relation l’attribut sepallength et le nombre d’instances par classe. Dans ce schéma, les classes sont distinguées par différentes couleurs; exemple : les classes Iris-setosa, Iris-versicolor et Iris-virginica sont respectivement associées aux couleurs bleu foncé, rouge et vert. Les instances modélisées par une croix sont des instances correctement classifiées et celles modélisées par un carré sont des instances incorrectement classifiées. En pointant sur un de ces carrés, les informations sur l’instance en question sont affichées. La figure 9 montre les informations d’une instance incorrectement classifiée. Environnement Weka Page 13 sur 28 Figure 8 Graphe des erreurs du classificateur Figure 9 Information sur une instance incorrectement classifiée 26/01/2006 Environnement Weka Page 14 sur 28 26/01/2006 III. Experimenter Experimenter est un outil qui nous permet de créer, d’exécuter et d’analyser des expérimentations. Une expérimentation est la mise en œuvre d’un test où plusieurs algorithmes d’apprentissage peuvent être appliqués sur plusieurs datasets en mode lot (batch). Pour remplir ses fonctionnalités, Experimenter fournit trois mécanismes Setup, Run et Analyse. Ainsi, un utilisateur de cet outil doit définir tout d’abord les attributs de l’expérimentation (en terme simple, les données d’entrée). Une fois ces données fournis à Experimenter, l’utilisateur passe à la phase d’exécution c’est-à-dire la génération de modèles. La dernière phase consiste en l’analyse des résultats obtenus. Nous allons détailler ces trois composants dans les sections suivantes. En résumé, Experimenter traduit les trois phases du processus de l’expérimentation à savoir les phases d’initialisation, de l’exécution et de l’analyse. De plus, l’utilisateur peut toujours revenir en arrière pour modifier son expérimentation en changeant soit les paramètres de la phase d’initialisation ou du test (phase d’analyse). Cette partie sera structurée selon ces trois phases. En premier, cet outil est lancé en cliquant sur l’option Experimenter dans la fenêtre de démarrage de l’environnement Weka (figure 1). La figure suivante présente l’outil Experimenter au lancement. Environnement Weka Page 15 sur 28 26/01/2006 Figure 10 L’outil Experimenter III.1 Description globale de la phase d’initialisation des paramètres d’expérimentation Comme on le remarque dans la figure 10, la fenêtre de lancement correspond à la première phase. Pour effectuer une expérimentation, l’utilisateur doit rentrer dans le système toutes les données demandées; c’est une opération d’initialisation des paramètres de l’expérimentation. Cette interface est structurée en plusieurs panneaux. Le premier panneau nous permet de sélectionner le mode de configuration de l’expérimentation soit simple ou avancé, et l’une des options open, save et new. L’option open est utilisée dans le cas où l’expérimentation existe déjà et qu’on veut modifier certains paramètres. L’option save est considérée lorsqu’on désire sauvegarder une nouvelle expérimentation ou les modifications portées à une expérimentation déjà existante. L’option new est choisie pour créer une nouvelle expérimentation. En se basant sur notre expérience, on note que les deux modes de configuration simple et avancé ne présentent pas de différences majeures. Dans nos expérimentations, on va considérer le Environnement Weka Page 16 sur 28 26/01/2006 premier mode (mode simple) qui est largement suffisant. Le mode avancé nécessite de l’utilisateur plus de connaissances approfondies sur la nature de l’application, exemple le nom de l’hôte dans le cas où l’application est distribuée. Le deuxième panneau permet de choisir le type des données en sortie en .arff, CVS ou JDBC et de donner un nom au fichier qui contiendra les résultats. Il est suivi de deux panneaux type d’expérimentation et l’itération de contrôle. Le type de l’expérimentation consiste à choisir la technique de validation, qui peut être soit une validation croisée ou un split avec tirage aléatoire (ou non) des données, le nombre de partitions ("number fold") et l’objectif de l’apprentissage qui est soit une classification ou une régression. Le contrôle des itérations (panneau "iteration control") sont généralement par défaut 10 et passe en premier par les données (d’apprentissage et de test). Et en dernier, on a deux panneaux pour sélectionner les datasets qui font l’objet de l’expérimentation et les algorithmes à appliquer. Pour mieux illustrer cette phase, on considère une expérimentation qui consiste à appliquer les algorithmes d’apprentissage J48, Logistic et MultiPerceptron sur deux datasets iris et weather du répertoire data de l’environnement Weka. Les étapes suivies lors de la création de cette nouvelle expérimentation sont : • Le choix donc du mode d’expérimentation simple et puis sélectionner l’option New pour créer une nouvelle expérimentation. • Sélectionner le type des données .arff et donner le nom test1 au fichier résultats. • Sélectionner le type de l’expérimentation qui consiste en une validation croisée avec le nombre de partitions ("number fold") égal à 10 et en dernier l’objectif qui est une classification. • Le contrôle des itérations (panneau "iteration control") est considéré par défaut. • Sélectionner les datasets iris et weather qui font l’objet de l’expérimentation et les algorithmes à appliquer J48, Logistic et MultiPerceptron. Environnement Weka • Page 17 sur 28 26/01/2006 En dernier, sauvegarder les paramètres de l’expérimentation en cliquant sur l’option save et en donnant le nom exp2 à l’expérimentation. Ces différentes étapes de la phase d’initialisation sont visualisées dans la figure suivante : Figure 11 Phase d’initialisation d’une nouvelle expérimentation exp2 III.2 Phase d’exécution Cette phase consiste à exécuter l’expérimentation qui se traduit par l’application des algorithmes sélectionnés sur les différents datasets choisis. La fenêtre de l’exécution (Run) est organisée en trois panneaux (figure 12). Le premier donne la possibilité de lancer ou de stopper une exécution. Le deuxième panneau affiche la trace de l’exécution ("log"). En dernier, on a un panneau état qui nous permet de suivre l’évolution de l’exécution de l’expérimentation et donc donne l’état de l’exécution à un moment donné. La figure suivante nous montre l’état d’exécution de l’expérimentation à un moment donné. Environnement Weka Page 18 sur 28 26/01/2006 Figure 12 Exécution d’une expérimentation à un moment donnée Dans cette figure, on remarque dans le panneau Status que l’exécution est à l’itération 6 dans la génération du classificateur 3 produit par l’application de l’algorithme d’apprentissage MultiPerceptron sur le dataset iris. Une fois que tous les classificateurs sont générés et qu’aucune erreur n’est apparue, le résultat final, qui est la trace de l’exécution, est visualisé dans le panneau "log". La figure 13 montre le résultat final d’une exécution qui se termine normalement. Environnement Weka Page 19 sur 28 26/01/2006 Figure 13 Exécution normale d’une expérimentation Cette phase a donc pour résultat la génération des différents modèles (ou classificateurs) qui vont faire l’objet d’une analyse dans la phase suivante. III.3 Phase d’analyse Cette phase est le cœur de cet outil et permet de comparer les différents résultats obtenus par les classificateurs générés dans la phase précédente. Dans le panneau "Test output", les différents classificateurs générés à chaque itération sont visualisés en cliquant sur l’option "Experiment" qui permet de charger les résultats disponibles (figure 14). Environnement Weka Page 20 sur 28 26/01/2006 Figure 14 Différents classificateurs générés par la phase d’exécution Cette interface analyse est composée de quatre panneaux : • Le premier nous permet de spécifier la source des résultats qui peut être soit un fichier que l’on charge, une base de données sur laquelle on a stocké les résultats ou "Experiment" qui permet de charger les résultats obtenus lors de l’expérimentation en cours (dans notre exemple exp2, voir figure 11). • Le deuxième panneau "configure test" permet à l’utilisateur de choisir les critères de test de comparaison des différents classificateurs. Nous allons donner un sommaire de ces critères : o Row (lignes) : permet de définir les entités à afficher comme lignes, dans le cas de la figure suivante on a les ensembles datasets iris et weather. o Column (colonnes) : permet d’indiquer les composants d’une colonne de la matrice résultats. Dans la figure 15, les composants sont la catégorie des algorithmes d’apprentissage à laquelle appartient l’algorithme J48 ("trees"), le nom J48 et les paramètres de ce dernier. Environnement Weka Page 21 sur 28 26/01/2006 o "Comparaison test" : l’utilisateur peut sélectionner le critère sur lequel se base l’analyse comme exemple, le pourcentage d’instances correctement classifiées. o Signification : chaque test est effectué selon la méthode T-test qui permet d’évaluer la différence des moyennes de deux échantillons [1]. La valeur 0.05, nommée aussi p-value, est le seuil qui permet de différencier entre deux datasets. Si p-value <0.05 alors les deux datasets sont significativement différents. Dans le cas contraire, les deux datasets ne le sont pas [2]. o "Displayed column" : représente les classificateurs que l’on désire visualiser. o "Show std. Deviations" : il peut être intéressant dans certaines applications de connaître l’écart-type de chaque modèle généré. o "Output format" : l’utilisateur peut choisir le format de sortie. o "Perform test" et "save output" : permettent de lancer le test et de sauvegarder les résultats de comparaison. • Un panneau "Test output" est un espace réservé à la visualisation des résultats de l’analyse. Figure 15 Résultats de l’analyse de l’expérimentation exp2 Environnement Weka Page 22 sur 28 26/01/2006 IV. KnowledgeFlow environment Weka fournit aussi un outil graphique, nommé KnowledgeFlow environment; une alternative intéressante à l’outil Explorer. Cet outil dispose de presque tous les services fournis par Explorer sous forme graphique (figure 16). De plus, il permet d’exécuter des diagrammes de flux de connaissances en mode lot (batch) ou incrémental. Il est à mentionner que cet outil à sa version 3.4.6 connaît beaucoup d’améliorations par rapport aux versions antérieures. Par exemple dans la version 3.4, si le fichier ".arff" n’est pas localisé dans le répertoire data de Weka, le fichier ne peut pas être chargé par le composant "arff loader" de "Datasources". Ce qui n’est pas le cas avec la version 3.4.6. IV.1 Structure de KnowledgeFlow environnement Le lancement de cet outil (figure 16) se fait en cliquant sur l’option "knowledgeFlow environment" présente dans la fenêtre de l’environnement Weka (figure 1). Figure 16 Environnement KnowledgeFlow Environnement Weka Page 23 sur 28 26/01/2006 Cet outil est constitué essentiellement, comme on le remarque, de deux zones : une barre de services et une zone de tracé. La barre est composée à son tour de deux menus, le menu supérieur est formé par les différentes fonctionnalités tels que les sources de données, les filtres, et les classificateurs. Le menu inférieur contient tous les composants pour assurer une fonctionnalité, exemple "Datasources"(figure 16). La zone de tracé est réservée à la construction du diagramme représentant le processus de fouille de données suivi pour appliquer un classificateur spécifique sur un dataset donné. Cette construction se fait selon le principe "drag-and-drop". Les composants graphiques posés verticalement gauche et droite sont utilisés respectivement pour pouvoir vider la zone de tracé, sauvegarder le diagramme de flux de connaissances et charger un diagramme de flux de connaissance, faire appel à une aide et arrêter toutes les exécutions. IV.2 Comment utiliser cet outil? Nous allons illustrer l’utilisation de l’outil KnowledgeFlow environment à travers un exemple. Considérons le dataset segment fourni par l’outil Weka et l’algorithme d’apprentissage Logistic. Pour réaliser le diagramme de flux de connaissances de cet exemple, nous allons passer par plusieurs étapes : 1- On commence par sélectionner le type de la source de données et format des données en cliquant respectivement sur "Datasources" et puis "Arff loader" qui est le plus couramment utilisé (figure 17). Il est à remarquer que d’autres composants "loaders" peuvent être choisis dépendant du format des données à charger. Environnement Weka Page 24 sur 28 26/01/2006 Figure 17 Sélection d’une source de données 2- Dans la deuxième étape, nous pouvons éventuellement ajouter un composant pour nous permettre de visualiser la distribution des données du dataset segment. Pour ce faire, ces deux composants doivent être connectés (figure 18). Figure 18 Connexion de deux composants Environnement Weka Page 25 sur 28 26/01/2006 La visualisation de la distribution des données est donnée par la figure suivante. Figure 19 Distribution des données du dataset segment 3- En troisième étape, il est nécessaire de sélectionner le type de techniques utilisées par le classificateur concernant les données à savoir la validation croisée, utilisation d’un dataset pour l’apprentissage et un autre pour le test, ou la technique "percentage split" où généralement on utilise 2/3 pour l’apprentissage et 1/3 pour le test. 4- Dans cette étape, il faut spécifier éventuellement le type de prétraitement (filtre) à appliquer sur les données. Si les données ne subissent pas de prétraitement, il faudra alors choisir le classificateur à appliquer. Ce dernier peut être configurer selon les besoins (figure 20). Environnement Weka Page 26 sur 28 26/01/2006 Figure 20 Configuration des paramètres d’un classificateur 5- La dernière étape consiste à ajouter un ou plusieurs composants afin de visualiser les performances du modèle généré. Dans notre cas, on a sélectionné deux composants classifier_PerformanceEvaluator et TextViewer. Après, on lance le processus de génération du modèle qui consiste en l’exécution du diagramme du flux de données conçu, c’est-à-dire, le chargement des données, la validation croisée et l’application de l’algorithme J48 (figure 21) en cliquant sur l’option "start loading". Environnement Weka Page 27 sur 28 26/01/2006 Figure 21 Diagramme de notre application 6- Une fois ces différentes étapes accomplies, nous pouvons visualiser les résultats du modèle généré en sélectionnant l’option "show results" de TextWiewer (figure 22). Figure 22 Résultats d’exécution du diagramme conçu Environnement Weka Page 28 sur 28 26/01/2006 V. Conclusion L’environnement Weka est un environnement de fouille de données, "open source" et complet, offrant une multitude de services à travers ces trois composants Explorer, Experimenter et knowledgeFlow. Ces services permettent à un utilisateur de réaliser des expérimentations en passant communément par un certain nombre de phases : prétraitement, application d’un algorithme d’apprentissage et l’analyse indépendamment de l’outil utilisé Explorer, Experimenter ou KnowledgeFlow. Ces outils présentent différentes facettes intéressantes de l’environnement Weka. Explorer, qui le plus complet et le plus utilisé, permet de définir une expérimentation, d’appliquer des filtres et des algorithmes, d’analyser et de visualiser différents résultats sous le format la plus complète. Experimenter permet par contre de réaliser plusieurs expérimentations en même temps et une comparaison entre les différents classificateurs générés à partir de différents datasets. KnowledgeFlow est une interface purement graphique, très ergonomique et fournit à un utilisateur un ensemble de composants graphiques pouvant être connectés ensemble pour monter un schéma de flux de connaissances. Tous ces outils se caractérise par leur facilité d’utilisation en dépit du manque de documentation. VI. Références [1] StatSoft, Inc. (2004). Electronic Statistics Textbook. Tulsa, OK: StatSoft. Site http://www.statsoft.com/textbook/stathome.html) [2] Masse, D. Some background on t-tests & which test to use. Site http://users.wfu.edu/massd2/T_test.htm [3] Witten, I.H., Frank, E. (2000). Data Mining: Practical Machine Learning Tools and Techniques with Java Implementation. Morgan Kaufmann Publishers, San Francisco, California, 2000. [4] Yazid, H. (2005). Élaboration de modèles d’estimation de qualité du logiciel et intelligence artificielle. Thèse de maîtrise en génie logiciel, École de technologie supérieure, Août 2005.