Utilisation de WEKA

Temps de lecture : 10 minutes

Visualisation des données

Nous commençons par ouvrir notre dataset dans Weka Explorer. Nous pouvons voir l’Explorer dans la figure 15.

image17

Figure 15. Aperçu, préparation et prétraitement des données

Weka permet de visualiser les données avec lesquelles il travaille. Dans la partie gauche de la fenêtre, on aperçoit les colonnes des attributs de données et le nombre de lignes de données fournies (Instances). En sélectionnant chaque colonne, la section droite de la fenêtre donne des informations sur celui-ci. Par exemple, en sélectionnant la colonne focale _depth dans la section de gauche (qui doit être sélectionnée par défaut), la section de droite change pour montrer des informations statistiques supplémentaires sur la colonne. Il montre que la valeur maximale de l’ensemble de données pour cette colonne est de 656 km et que le minimum est de 0 km. La taille moyenne est de 74,36 km, avec un écart-type de 116,468 km.

Si on passe dans l’onglet Visualize , il existe une panoplie de moyens visuels d’examiner les données. La figure 16 illustre cela.

image18

Figure 16. Visualisation des données

Pour en voir d’avantages, il suffit de cliquer sur l’un des graphes et une fenêtre détaillée s’affichera. La figure 17 montre cette action.

image19

Figure 17. Visualisation détaillée des données

Obtention d’un modèle de classification de cas d’hypothyroïdie

L’hypothyroïdie est une maladie dans laquelle la glande thyroïde ne produit pas suffisamment d’hormones thyroïdiennes. Elle nécessite toujours des tests en laboratoire ou par imagerie. Les principaux symptômes sont la fatigue, une sensibilité au froid, la constipation, une peau sèche et une prise de poids inexpliquée. Malheureusement, le diagnostic de celui-ci reste encore très difficile. Dans cet exemple nous essayons d’effectuer un diagnostic médical en utilisant un algorithme de classification afin d’élaborer un arbre de décision simple pour déterminer si une personne donnée est oui ou non atteinte de cette maladie.

Nous commençons à ouvrir notre ensemble de données dans Weka Explorer. La figure 18 montre cette action.

image20

Figure 18. Chargement des données pour le cas hypothyroïdie

Pour obtenir un modèle de classification, il suffit de passer à l’onglet Classify. La figure 19 présente cet onglet.

image21

Figure 19. Onglet Classify

Dans la partie à gauche, nous avons une section test. Dans cette section nous devons choisir une donnée sur laquelle effectuer des tests afin de pouvoir évaluer notre modèle. Ici nous avons plusieurs choix :

  • Use training set : Quand on utilise cette option, Weka utilise toutes les données d’entrainement pour effectuer le test. Ceci est déconseillé vu que cela peut produire des résultats très optimistes, et empêche généralement le modèle de se généraliser sur un nouvel ensemble de données ;
  • Supplied test set : L’option idéale s’il nous est possible de fournir un ensemble de données totalement différent et dédié au test.
  • Cross-validation : Dans cette partie, nous observons le paramètre « folds » qui est à 10 par défaut. Lorsque Weka utilise le cross-validation elle divise nos données en 10 parts égales (folds). Ensuite, elle entraine le modèle sur 9 parts et le test sur la 10 ème et répète cette opération 10 fois.
  • Percentage split : Weka utilise une ration donnée pour la répartition données d’entrainement/données de test. Cette méthode est généralement déconseillée, car elle peut produire des métriques très pessimistes.

Pour cet exemple nous laissons les valeurs par défaut. La figure 20 montre l’exécution de la classification.

image22

Figure 20. Résultats de la classification

Après avoir lancé notre modèle, nous obtenons le résultat suivant. Les chiffres importants sur lesquels se concentrer ici sont :

  • « Correctly Classified Instances » (99,8144 %) ;
  • « ’Incorrectly Classified Instances »’ (0,18 %).

D’autres chiffres importants se trouvent dans la colonne « ROC area » (caractéristique de performance), dans la première rangée (0.997).

Enfin, dans la « matrice de confusion », l’outil montre le nombre de faux positifs et de faux négatifs.

**image23**La figure 21 représente un résumé des résultats de l’opération

Nous pouvons voir l’arbre en cliquant avec le bouton droit sur le modèle que nous venons de créer, dans la liste des résultats. Dans le menu contextuel, sélectionnez « Visualise tree ».

image24

La figure 22 montre l’arbre de décision obtenu.

Obtention d’un modèle prédictif du prix d’un automobile

Les données que nous utilisons dans cet exemple représentent les caractéristiques des voitures. Nous allons utiliser la régression linéaire afin de trouver un modèle à partir des variables suivantes : empattement, longueur, largeur, poids à vide, taille du moteur, alésage, coup, taux de compression, puissance, vitesse de pointe.

La figure 23 représente le chargement de ces données.

image25

Figure 23. Chargement du dataset

Tout d’abord nous sélectionnons l’onglet Classify ensuite la prochaine étape consiste à sélectionner le modèle que nous voulons construire, ainsi Weka sait comment travailler avec les données, et comment créer le modèle approprié :

  • Cliquons sur le bouton Choisir, puis développez la branche des fonctions ;
  • Sélectionnons LinearRegressio n.

La figure 24 affiche le résultat d’une régression linéaire.

image26

Figure 24. Résultat de la régression

Après l’entrainement, Weka nous affiche le modèle, qui est précisé dans la figure 25.

image27

Figure 25. Modèle obtenu

Recherche des comportements typiques des clients (clustering)

L’ensemble de données que nous utiliserons pour notre exemple de clustering se concentrera sur un concessionnaire d’automobiles BMW. Le concessionnaire a gardé une trace de la façon dont les clients traversent la concession et la salle d’exposition, quelles voitures ils regardent, et à quelle fréquence ils font des achats. Nous allons extraire ces données en trouvant des modèles dans les données et déterminer si certains comportements émergent chez leurs clients.

Nous commençons par ouvrir notre dataset dans Weka Explorer. La figure 26 nous montre cette étape.

image28

Figure 26. Chargement des données

Pour obtenir un modèle de segmentation, il suffit de passer à l’onglet Cluster. La figure 27 présente cette étape.

image29

Figure 27. Onglet Cluster

Nous allons spécifier des options à notre algorithme de clustering en cliquant sur SimpleKMeans. Le seul attribut de l’algorithme que nous souhaitons ajuster ici est le champ numClusters, qui nous indique combien de clusters nous voulons créer. Nous changeons la valeur par défaut de 2 à 5. La figure 28 illustre ce changement.

image30

Figure 28. Paramétrage de l’algorithme

Nous lançons notre modèle et nous obtenons le résultat présenté dans la figure 29.

image31

Figure 29. Résultat du clustering

Chaque cluster nous montre un type de comportement chez les clients, à partir duquel nous pouvons commencer à tirer quelques conclusions :

  • Cluster 0 : Ce sont les clients qui visitent uniquement sans pour autant rien acheter.
  • Cluster 1 : Ce sont les clients qui sont attirés par un modèle particulier, la M5. Cependant il n’y a que 51.85 % d’eux qui achètent (Faible taux de conversion). On peut résoudre ce problème par exemple en envoyant plus de commerciaux pour ce modèle de voiture en particulier.
  • Cluster 2 : Ce groupe représente uniquement 5 personnes. Nous ne pouvons pas donc prendre de conclusion faible à leur encontre sachant qu’elles ne sont pas statistiquement pertinentes.
  • Cluster 3 : Ce groupe constitue les personnes fanatiques de BMW. Elles viennent voir tous les véhicules du concessionnaire (sauf la série 3) et finissent toujours par en acheter une.
  • Cluster 4 : Ce groupe rassemble les clients avec un niveau de vie modeste, car ils savent ce qu’ils veulent et s’intéressent uniquement à la série 3 (un modèle d’entrée de gamme et bon marché). Alors que 50 % parviennent à l’étape du financement, seulement 32 % terminent la transaction. Nous pouvons conclure que ces clients cherchent à acheter leurs premières BMW et espèrent être admissibles à un financement pour pouvoir se le permettre. Le concessionnaire pourrait augmenter les ventes à ce groupe en assouplissant ses normes de financement ou en réduisant les prix de la série 3.

La figure 30 détaille les résultats du clustering.

weka bmw instance result

Figure 30. Résultat détaillé du clustering

Une autre manière intéressante d’examiner les données de ces groupes est de les inspecter visuellement. Pour ce faire, il suffit de cliquer avec le bouton droit de la souris la section Liste des résultats de l’onglet Cluster. Visualize Cluster Assignments est l’une des options de ce menu contextuel. Les figures 31 et 32 montrent ces affichages.

weka m5 purchase

Figure 31. Visualisation après clustering

weka m5 copnutersearch Figure 32. Visualisation détaillée après clustering

CONCLUSION

Ce présent document a pour objet le Data Mining avec l’outil Weka. Sa réalisation a nécessité l’utilisation de l’outil de Data Mining Weka, l’application du processus de Data Mining KDD et de l’exploitation de datasets au format ARFF.

L’outil Weka permet de faire du preprocessing, d’effectuer une classification et une régression, de réaliser un clustering, de déduire les règles d’association, de rechercher les corrélations entre attributs et de visualiser les données, sur des cas réels.

Le logiciel Weka satisfait les propriétés principales du Data Mining. En perspective, il est possible d’optimiser encore plus nos prédictions face à un cas précis en implémentant nos propres algorithmes dans cet outil.

GLOSSAIRE

AssociationConsiste à chercher des patterns au sein desquelles un événement est lié à un autre événement.Classification(Egalement appelée arbres de classification ou arbres de décision) Algorithme de Data Mining qui crée un guide pas à pas pour déterminer la sortie d’une nouvelle instance de données. L’arbre qu’il crée est un arbre où chaque nœud représente un endroit où une décision doit être prise en fonction de l’entrée, et nous passons au nœud suivant et le suivant jusqu’à ce que nous atteignions une feuille qui nous indique la prédiction sortie.ClusteringAussi appelé segmentation la segmentation permet de créer des groupes de données dans le but de déterminer des modèles à partir des données. Ce modèle a ses avantages lorsque l’ensemble de données est défini et qu’un modèle général doit être déterminé à partir de celui-ci. Nous pouvons créer un nombre spécifique de groupes, en fonction des besoins de notre entreprise. Un avantage déterminant ce modèle est que chaque attribut de l’ensemble de données sera utilisé pour analyser les données. Un inconvénient majeur de l’utilisation du clustering est que l’utilisateur doit connaître à l’avance le nombre de groupes qu’il souhaite créer. Pour un utilisateur sans réelle connaissance de ses données, cela peut être difficile.Data MiningTransformation de grandes quantités de données en modèles et règles significatifs. En général, il peut être divisé en deux types : dirigé et non dirigé. Dans l’exploration de données dirigée, nous essayons de prédire un point de données particulier. Dans l’exploration de données non dirigée, nous essayons de créer des groupes de données ou de trouver des modèles dans des données existantes.Faux positifRésultat d’une prise de décision dans un choix à deux possibilités (positif et négatif), déclaré positif, là où il est en réalité négatif. Le résultat peut être issu d’un test d’hypothèse, d’un algorithme de classification automatique, ou tout simplement d’un choix arbitraire.J48Implémentation open source de l’algorithme C4.5. C4.5 est un algorithme de classification supervisé, publié par Ross Quinlan. Il est basé sur l’algorithme ID3 auquel il apporte plusieurs améliorations.Pattern(Egalement appelé motif) Modèle simplifié d’une structure.PrédictionConsiste à découvrir des patterns de données pouvant mener à des prédictions raisonnables sur le futur. Ce type de Data Mining est aussi connu sous le nom d’analyse prédictive.RégressionTechnique la plus facile en Data Mining, cependant elle est aussi probablement la moins puissante/précise. Ce modèle peut être aussi simple qu’une variable d’entrée et une variable de sortie. Les modèles de régression correspondent tous au même schéma général. Il existe un certain nombre de variables indépendantes qui, prises ensemble, produisent un résultat, une variable dépendante. Le modèle de régression est ensuite utilisé pour prédire le résultat d’une variable dépendante inconnue, étant donné les valeurs des variables indépendantes.Variable dépendanteParamètre ou caractéristique pouvant prendre au moins deux valeurs différentes dont la variation est causée par la variation d’une ou de plusieurs autres variables, à savoir, les variables indépendantes.Variable indépendanteVariable qui ne dépend pas du sujet observé.

comments powered by Disqus

Articles Similaires

Ubuntu 24.04 LTS - Une version qui fait débat entre déception et enthousiasme

Ubuntu 24.04 LTS, “Noble Numbat”, a récemment été déployée, apportant son lot de nouveautés et de changements. Cette version suscite à la fois de l’enthousiasme et de la déception au sein de la communauté des utilisateurs et des développeurs.

Lire la Suite

Le concours de beauté Miss AI : un cauchemar dystopique ou le futur de la beauté ?

Dans un monde où la technologie et la beauté fusionnent, le concours de beauté Miss AI fait son apparition. Ce concours, organisé par The World AI Creator Awards, récompense les créateurs d’images et d’influenceurs générés par intelligence artificielle (IA).

Lire la Suite

Le gouvernement du Salvador prend un coup dur : les hackers divulguent le code source et les accès VPN du portefeuille bitcoin national Chivo !

Le programme bitcoin du gouvernement du Salvador, Chivo , a été victime d’une série d’attaques informatiques ces derniers jours. Les hackers ont déjà divulgué les données personnelles de plus de 5 millions de Salvadoriens.

Lire la Suite