0% ont trouvé ce document utile (0 vote)
33 vues4 pages

DM TP2

TP Data mining

Transféré par

Mouna Belhaj
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
33 vues4 pages

DM TP2

TP Data mining

Transféré par

Mouna Belhaj
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Master2 Informatique : Intelligence Artificielle (IA)

Module : Fouille de données (FD) Année universitaire : 2024/2025

TP N°2
(Environnement de travail : Weka)
La classification non supervisée (clustering) dans Weka :
Les algorithmes de clustering (ou segmentation) regroupent les instances en clusters
(segments) selon leur similarité. Dans Weka, les algorithmes de clustering sont accessibles
par l’onglet Cluster. Sur cet onglet :
• Le cadre Clusterer permet de choisir l’algorithme utilisé. Cliquez sur le nom de
l'algorithme sélectionné pour définir les paramètres de l'exécution.
• Le cadre Cluster mode permet de choisir le jeu de données traité et les options d'évaluation
des clusters :
° Use training set : la segmentation est exécutée sur tout le jeu de données.
° Supplied test set : choisir un autre jeu de données (cliquez sur le bouton Set).
° Percentage split : le pourcentage est la partie du jeu utilisée pour définir un modèle des
clusters (apprentissage). Le reste est utilisé comme jeu de test du modèle.
° Classes to clusters evaluation : un attribut est choisit pour comparer les clusters et les
classes définies par les valeurs de cet attribut. L’évaluation est faite en affichant la
matrice de confusion.
° Store clusters for vizualisation : les clusters sont mémorisés pour visualisation.
• Le cadre Result list contient la liste des exécutions effectuées et permet de choisir de quelle
exécution sont affichés les résultats dans le cadre Clusterer output.
• Le cadre Clusterer output affiche les résultats de l’exécution. Voici par exemple les résultats
d'une exécution de l'algorithme SimpleKMeans
Les algorithmes implantés sont :
• SimpleKMeans : approche par centroïde (chaque cluster est décrit par son centre de gravité).
Affichent en résultat les moyennes des valeurs des attributs de chaque cluster.
• FarthestFirst : approche par médoïdes (chaque cluster est décrit par un objet représentatif).
Affichent en résultat les valeurs des attributs du médoïde de chaque cluster.
• Cobweb : clustering hiérarchique par division. Le résultat est un arbre hiérarchique des
divisions effectuées qui peut être visualisé graphiquement.
• DBScan, OPTICS : approches basées sur la densité.
• EM (expectation maximization) : génère une description probabiliste des clusters en terme
de moyenne et écart-type pour les attributs numériques et en terme de nombre pour les
attributs nominaux. Chaque cluster est décrit par sa probabilité a priori et une distribution de
probabilité pour chaque attribut. Pour un attribut nominal, est affiché le nombre d'exemples
et pour un attribut numérique est affiché les caractéristiques de sa distribution normale.
• CLOPE : méthode par construction de modèle basée sur le comptage des co-occurrences de
valeurs des attributs dans les clusters.
Les paramètres varient selon l’algorithme utilisé. Les paramètres les plus communs sont :
• numClusters : nombre de clusters à former.
• seed : pour modifier la séquence de tirages aléatoires utilisée par certains algorithmes.
• MaxIterations : nombre maximal d’itérations à exécuter.
• DistanceFunction : fonction de distance pour le calcul de similarité.
Analyse de weather.arff
L'objectif est de regrouper les instances du jeu de données en clusters correspondant chacun
soit à Play=yes soit à Play=no. C'est à dire que l'on souhaite que les instances d'un cluster
soient majoritairement associées à Play=yes ou bien à Play=no

TP N°2 Fouille de Données Page 1


Exercice 1 : Appliquez l'algorithme FarthestFirst au fichier weather.arff en fixant le nombre
de clusters à 2 par le paramètre numClusters.
Indiquez dans un tableau les valeurs des attributs des centroïdes pour chacun des deux
clusters. Ces valeurs représentent les valeurs moyennes pour les instances du cluster.
Cluster Outlook Temperature Humidity Windy Play
Cluster 0:
Cluster 1:
Exercice 2 : Appliquez l'algorithme SimpleKMeans en fixant le nombre de clusters à 2 et
indiquez dans un tableau la description des centroïdes des deux clusters (forme de l’exo1)
Exercice 3 : Comparez la description des centroïdes des clusters obtenus par les deux
algorithmes. Indiquez ci-dessous le nom des algorithmes qui génèrent un cluster
correspondant à Play=yes et un autre à Play=no.

Les deux algorithmes fournissent des résultats notablement différents. Nous allons dans la
suite paramétrer l'exécution de SimpleKMeans afin d'obtenir 2 clusters correspondant chacun
à une valeur de l'attribut Play. Cliquez avec le bouton droit dans le cadre Result list sur les 2
exécutions précédentes et supprimez-les en choisissant l'option Delete result buffer.
Exercice 4 : Afin de mieux appréhender le contenu de chaque cluster, vous allez observer la
répartition des instances des clusters selon les valeurs des attributs, c-à-d la composition des
clusters.
Exécutez l'algorithme FarthestFirst et SimpleKMeans en cochant l'option Store clusters for
visualization. Cliquez avec le bouton droit dans le cadre Result list sur l'exécution de
FarthestFirst et choisissez l’option Vizualise cluster assignement.
La fenêtre de visualisation bi-dimensionnelle des clusters s’affiche.
Sélectionnez l’attribut outlook pour la dimension X et l’attribut windy pour la dimension Y.
Sélectionnez l’attribut cluster pour la couleur dans la zone Colour afin que la couleur de
chaque croix (instance) représente le cluster auquel elle appartient. Les croix bleues
représentent les instances du cluster 0 et les croix rouges les instances du cluster 1.
Notez dans un cadre (comme celui ci-dessous) les combinaisons de valeurs de outlook et
windy pour lesquelles toutes les instances appartiennent au cluster 0, c'est a dire pour
lesquelles les croix sont toutes bleues.
Outlook : Outlook :
Windy : Windy :
Outlook : Outlook :
Windy : Windy :
Notez dans un cadre (comme celui ci-dessous) les combinaisons de valeurs de outlook et
windy pour lesquelles toutes les instances appartiennent au cluster 1, c'est a dire pour
lesquelles les croix sont toutes rouges.
Outlook :
Windy :
Exercice 5 : Exécutez l'algorithme SimpleKMeans en cochant l'option Store clusters for
visualization et en donnant la valeur 20 au paramètre seed dans la fenêtre des paramètres qui
s'affiche lorsque vous cliquez sur le nom de l'algorithme. Indiquez dans un tableau (comme
celui de l’exo1) les valeurs des attributs des centroïdes pour chacun des deux clusters obtenus.
Exercice 6 : Refaites le même travail de l’exo4 pour l'algorithme SimpleKMeans. Les cadres
associés sont respectivement :
Outlook : Outlook :
Windy : Windy :
Outlook :
Windy :
Et
Outlook : Outlook :
Windy : Windy :

TP N°2 Fouille de Données Page 2


Nous allons maintenant comparer les clusters obtenus avec les valeurs Play=yes et Play=no.
Pour cela, conserver les 2 fenêtres d'affichage bi-dimensionnel pour les exécutions
Exercice 7 : Cliquez à nouveau avec le bouton droit dans le cadre Result list sur l'exécution
de FarthestFirst et choisissez l’option Vizualise cluster assignement.
Dans la fenêtre qui s'affiche, sélectionnez l’attribut play pour la couleur dans la zone Colour.
Chaque couleur correspond maintenant à une classe : les croix bleues aux instances play=yes
et les croix rouges aux instances play=no. Affichez côte-à-côte ce graphique et celui de
l'affichage de l'attribut cluster en couleur pour l'exécution de FarthestFirst. Notez dans un
cadre (comme celui ci-dessous) les combinaisons de valeurs de outlook et windy pour
lesquelles on peut observer des différences dans la couleur des croix entre les 2 graphiques.
Ces différences sont les instances qui ont été placées dans un cluster alors qu'elles auraient du
l'être dans l'autre pour augmenter la cohérence du clustering par rapport à l'attribut Play. Si
aucune différences n'apparait, toutes les instances de chaque cluster correspondent à la même
valeur de l'attribut Play, c-à-d que le clustering est parfait.
Outlook : Outlook :
Windy : Windy :
Exercice 8 : Cliquez avec le bouton droit dans le cadre Result list sur l'exécution de
SimpleKMeans et choisissez l’option Vizualise cluster assignement.
Dans la fenêtre qui s'affiche, sélectionnez l’attribut play pour la couleur dans la zone Colour
afin que chaque couleur corresponde à une classe (croix bleues play=yes et croix rouges
play=no). Affichez côte-à-côte ce graphique et celui de l'affichage des clusters en couleur
pour l'exécution de SimpleKMeans et notez dans un cadre (comme celui ci-dessous) les
combinaisons de valeurs de outlook et windy pour lesquelles on peut observer des différences
dans la couleur des croix entre les 2 graphiques.
Outlook : Outlook :
Windy : Windy :
Outlook :
Windy :

Évaluation des clusters par rapport à un attribut de classe


Il est possible d'évaluer automatiquement si chaque cluster correspond ou non à une classe
distincte, c-à-d une valeur distincte d'un attribut de classe tel que Play. Ceci se fait à l'aide de
l'option Classes to clusters evaluation et en sélectionnant l'attribut de classe dans la zone
(Nom)  play.
Lorsque cette option est choisie, à chaque cluster généré est associée une valeur de l'attribut
de classe, par exemple un cluster pour Play=yes et un cluster pour Play=no.
L'algorithme détermine alors pour chaque cluster le nombre d'instances bien et mal placées,
c'est à dire le nombre de réussites et d'erreurs vis-à-vis de l'attribut de classe. Les 4 nombres
calculés sont affichés dans la matrice de confusion :
• Vrais positifs : nombre d'instances yes placées dans le cluster correspondant à yes
• Faux positifs : nombre d'instances no placées dans le cluster correspondant à yes
• Vrais négatifs : nombre d'instances no placées dans le cluster correspondant à no
• Faux négatifs : nombre d'instances yes placées dans le cluster correspondant à no
Le nombre total et le taux d'erreurs sont également affichés.
Exercice 9 : Ré-exécutez les algorithmes FarthestFirst (paramètre numClusters=2) et
SimpleKMeans (paramètres numClusters=2 et seed=20) en utilisant l’option Classes to
clusters evaluation et en sélectionnant l’attribut play comme attribut de classe.
Remplissez le tableau ci-dessous.
Nombre de faux positifs
FarthestFirst Nombre de faux négatifs
Taux d'erreur
Nombre de faux positifs
SimpleKMeans Nombre de faux négatifs
Taux d'erreur

TP N°2 Fouille de Données Page 3


Exercice 10 : Vous allez comparer les résultats obtenus avec différentes valeurs des
paramètres des algorithmes afin d'optimiser leur valeur. Utilisez l’option Classes to clusters
evaluation afin d'évaluer chaque exécution. Appliquez les algorithmes SimpleKMeans et
FarthestFirst en fixant le nombre de clusters à 2. Réalisez pour chaque algorithme une
expérimentation pour des valeurs du paramètre seed de 1, 10, 20, 50, 100 et 1000.
Notez le meilleur résultat obtenu pour chaque algorithme dans le tableau ci-dessous à l'aide
des matrices de confusion. Supprimez ensuite les autres exécutions.
Algorithme Seed Taux d'erreur play=yes play=no
mal placées mal placées
SimpleKMeans
FarthestFirst

Notez l'algorithme qui génère deux clusters correspondant le mieux aux classes play=yes et
play=no, c-à-d avec le moins grand nombre d'erreurs.

Exercice 11 : Cliquez avec le bouton droit dans le cadre Result list sur l’exécution de
l'algorithme qui a donné le meilleur résultat et choisissez l’option Vizualise cluster
assignement. Lorsque l’option Classes to clusters evaluation a été utilisée, les instances bien
et mal classées sont affichées dans la visualisation bi-dimensionnelle. Les croix représentent
les instances placées dans le bon cluster (vrais positifs et vrais négatifs). Les carrés
représentent les instances placées dans le mauvais cluster (faux positifs et faux négatifs).
Sélectionnez l’attribut outlook pour la dimension X, l’attribut windy pour la dimension Y et
l’attribut play pour la couleur. Notez dans un cadre (comme celui ci-dessous) les
combinaisons de valeurs de outlook et windy pour lesquelles aucune erreur n'est commise.

Outlook : Outlook :
Windy : Windy :
Outlook :
Windy :

TP N°2 Fouille de Données Page 4

Vous aimerez peut-être aussi