Sunteți pe pagina 1din 45

Facult des Sciences et Techniques

Mohammedia
Universit HASSAN II
Mohammedia - Casablanca
Mmoire de Projet de Fin dtudes
Pour lobtention du titre
Maitrise ES-Sciences et Techniques
Gnie Informatique

Option
Gnie Logiciel

Sujet
Approche structurale de gnration des motifs ferms frquents,
structuration et visualisation des rgles dassociation









Devant le jury
Pr K. DOUZI
Professeur la F.S.T.M, Rapporteur
Pr M. RAMDANI
Professeur la F.S.T.M, Examinateur
Pr N. Moumkine
Professeur la F.S.T.M, Examinateur

Pr A. BOULMAKOUL
Professeur la F.S.T.M, Encadrant


Anne universitaire 2007/2008



Ddicaces


Je ddie ce modeste travail :
Mes chers parents en tmoignage de mon grand amour et profonde reconnaissance,
pour leurs immenses sacrifices consentis mon ducation, mon bien tre et mes tudes.
A ma chre femme pour les encouragements quelle na cesse de me prodiguer
tout au long de cette recherche. Son soutien moral et ses prcieux conseils ont t de
premire importance pour la ralisation de ce travail. Quelle ait la certitude de mon grand
amour et de ma reconnaissance.
Tous ceux qui me sont chers et tmoins daffection et de Reconnaissance.
A toute ma famille.



Radouan LAHSINI




Avant propos

Ce rapport se situe dans le cadre du projet de fin dtude pour lobtention du diplme de
Maitrise Sciences et Techniques en gnie Informatique de la Facult des Sciences et Techniques
Mohammedia (FSTM). Ce projet a t ralis au sein du Laboratoire dInformatique de Mohammedia
(LIM) dans le cadre dun contrat R&D MAROC TELECOM et ce sous la responsabilit de Pr. A.
BOULMAKOUL.
Le projet porte sur un domaine du data mining, savoir la gnration des motifs ferms
frquents, la structuration et la visualisation des rgles dassociation. Le travail effectu ne couvre
quune une partie du contrat.

Ci-aprs, je dcris brivement la structure du document :
Dans la premire partie jaborde quelques lments essentiels du data mining sans prtendre
approfondir certains aspects, et jintroduis une nouvelle approche structurale utilise pour la
gnration de motifs ferms frquents, propose par Pr. BOULMAKOUL [2-4]. Le lecteur voulant
approfondir pourra consulter la bibliographie donne en annexe.
Une deuxime partie est rserve lanalyse des modles et outils de visualisation des rseaux
existants, afin de mettre le point sur les diffrences des architectures et faire le choix selon les
contraintes que doit grer mon application.
La troisime partie est consacre essentiellement la restructuration des motifs ferms
frquents gnrs, et lextraction des rgles associatives minimales, ainsi qu la gnration des
mta-rgles.
Finalement en quatrime partie je donne les diffrents crans de linterface de test de
RulesViewer.


APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 1

Table des matires

I. Introduction gnrale .......................................................................................................................................2
II. Contexte du projet............................................................................................................................................4
1. Dure du stage .............................................................................................................................................4
2. Organisme daccueil .....................................................................................................................................4
3. Description du laboratoire LIM ....................................................................................................................4
4. Stratgie et politiques scientifiques du laboratoire LIM .............................................................................4
5. Prestations de service au secteur socioconomique ...................................................................................4
6. Partenariat ....................................................................................................................................................4
7. Objectif du projet .........................................................................................................................................5
8. Gestion du projet ..........................................................................................................................................5
9. Technologies et domaines sollicits .............................................................................................................6
III. Data mining ..................................................................................................................................................8
1. Concept du Data mining ...............................................................................................................................8
2. Architecture typique dun systme de data mining .....................................................................................9
IV. Rgles dassociation .................................................................................................................................. 11
1. Principe de gnration des rgles d'association ....................................................................................... 11
2. Dfinitions ................................................................................................................................................. 12
3. tapes de lextraction des rgles ............................................................................................................... 12
4. Extract Transform Load (ETL) .................................................................................................................... 14
5. Algorithme APRIORI ................................................................................................................................... 15
6. Inconvnients de lapproche ..................................................................................................................... 16
V. Une nouvelle approche ................................................................................................................................. 16
1. Prtraitement ............................................................................................................................................ 16
2. Closed Itemset Generation and Approximation (CIGA+) .......................................................................... 17
3. Approximative algorithm for closed frequent itemsets mining (AFCIM) .................................................. 20
4. Le Treillis de Galois .................................................................................................................................... 25
5. Gnration des rgles dassociation minimales ........................................................................................ 27
VI. Visualisation des rseaux .......................................................................................................................... 31
1. Intrt ........................................................................................................................................................ 31
2. JUNG .......................................................................................................................................................... 31
3. Prefuse ....................................................................................................................................................... 33
VII. Interface Homme Machine ........................................................................................................................ 37
1. Introduction ............................................................................................................................................... 37
2. L'onglet Mthode alpha ............................................................................................................................ 37
3. Les onglets graphiques .............................................................................................................................. 39
VIII. Conclusion ................................................................................................................................................. 41
IX. Rfrences ................................................................................................................................................. 42

APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 2

Liste des figures
Processus de l'extraction de connaissances partir des donnes ...........................................................................8
Architecture typique dun systme de data mining .............................................................................................. 10
Cycle dextraction de connaissances partir des donnes ECD ........................................................................... 13
Exemple dETL ........................................................................................................................................................ 14
Algorithme Apriori ................................................................................................................................................. 15
Phase de prtraitement ......................................................................................................................................... 17
Diagramme de classes de la nouvelle approche AFCIM ........................................................................................ 24
Gnrateur des motifs ferms frquents ............................................................................................................. 25
Exemple de fichier gnr ..................................................................................................................................... 25
Exemple de Fichier dentre des motifs ferms frquents .................................................................................. 27
Treillis de Galois correspondant ............................................................................................................................ 27
Architecture de JUNG ............................................................................................................................................ 33
IHM Onglet "Les rgles" ........................................................................................................................................ 37
IHM onglet "les motifs ferms frquents " ........................................................................................................... 38
IHM onglet " Les rgles dassociation (Mthode graphique) " ............................................................................. 39
IHM onglet "Treillis de Galois" .............................................................................................................................. 40
Outils proposs par RulesViewer .......................................................................................................................... 40















APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 3


I. Introduction gnrale
Toutes les entreprises collectent et stockent dnormes quantits de donnes. Des
informations volumineuses centres sur les aspects marketing, comptabilit, production, gestion ou
autre, ne cessent de saccumuler et daccrotre dune faon exponentielle. Ces donnes constituent la
mmoire de l'entreprise, pour lesquelles, d'importants moyens sont mobiliss afin de les recueillir et
de les conserver dans les entrepts (Bases de donnes, documents, etc.).
Par ailleurs, les dcideurs se trouvent confronts quotidiennement des choix pour lesquels ils
manquent d'informations et de connaissances. Ils disposent de donnes, mais peu sont rellement
exploites dans le processus dcisionnel, faute de temps, de ressources mais surtout d'outils adapts.
Il est indniable qu'une part importante des connaissances qui peuvent tre dcisives face la
concurrence reste cache dans ces mga-bases de donnes. De l, on assiste actuellement
lmergence du Data mining (fouille de donnes) dans les entreprisses. Un engouement rcent, mais
qui parat en revanche durable, afin de palier l'intensification de la concurrence et de la volatilit de
la clientle double du dveloppement des systmes d'informations.
En effet, le dveloppement des Data Warehouse a entran un accroissement de l'information
disponible, le Data mining intervient alors pour faire parler les donnes. Les associations, tendances
ou connaissances obtenues par ce processus peuvent se rvler dterminantes pour lexistence des
entreprises.
Le Data mining, ou dcouverte et extraction de connaissances dcisionnelles partir de
donnes, regroupe les diverses techniques permettant de trouver, dans des bases de donnes, des
connaissances qui ne sont pas accessibles par les outils classiques. Elles permettent ainsi de dcouvrir
des modles prvisionnels, des rgles de classification et d'autres types de connaissances qui
serviront l'aide la dcision.
La recherche de rgles d'association intressantes est un thme privilgi de l'extraction des
connaissances partir des donnes. Les algorithmes du type Apriori [5] (voir section IV.4) fonds sur
le support et la confiance des rgles ont apport une solution lgante au problme de l'extraction de
rgles, mais ils produisent une trop grande masse de rgles, slectionnant certaines rgles sans
intrt et ignorant des rgles intressantes. Le prsent travail prsente une nouvelle approche
structurale dextraction de connaissances, propose par Pr A.BOULMAKOUL [2-4].


APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 4

II. Contexte du projet
1. Dure du stage
Le stage sest droul du 1 avril au 15 juin 2008 (2,5 mois).
2. Organisme daccueil
Ce projet est ralis au sein du Laboratoire Informatique de Mohammedia (LIM)
3. Description du laboratoire LIM
Le Laboratoire Informatique de Mohammedia est attach lUFR systmes dinformation
ractifs & ingnierie des systmes intelligents, ses activits de recherche sont centres autour de 3
grandes thmatiques :
Informatique et systmes de transport.
Systmes interactifs & intelligents daide la dcision.
Traitement dimage et vision artificielle.
4. Stratgie et politiques scientifiques du laboratoire LIM
Participation au dveloppement de la recherche en informatique au niveau national par
lorganisation des manifestations et des rencontres scientifiques.
Simpliquer davantage dans des projets de recherche en relation avec le tissu industriel.
Valorisation industrielle des produits de recherche.
5. Prestations de service au secteur socioconomique
Organisation de sminaires scientifiques & dveloppement de projets innovateurs autour de :
La documentation lectronique.
La dmatrialisation.
Les bases de donnes spatiales.
Le traitement dimage.
Le business intelligent.
Etc.
6. Partenariat
Institut Nationale des Postes et Tlcommunication INPT.
Laboratoire dinformatique (LIP6) UPMC France.
Laboratoire PRISM Universit de Versailles France.
INRETS France.
INSA de Lyon France.
IRCOM-SIC Universit de Poitiers.
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 5

7. Objectif du projet
De nos jours, des transformations importantes ont lieu dans les entreprises. Les enjeux des
diffrents secteurs conomiques ont, en gnral, comme points communs des clients de plus en plus
exigeants, des changements de plus en plus rapides et une concurrence de plus en plus forte.
Pour faire face ces enjeux, la simple ractivit ne suffit plus, il faut anticiper. Cette
anticipation ne peut tre efficace qu'en s'appuyant sur l'information pertinente. Mais, dans leurs
organisations actuelles, les donnes sont surabondantes, non organises dans un perspectif
dcisionnel et parpilles dans de multiples systmes htrognes. Il devient donc capital de
rassembler et d'homogniser les donnes afin de permettre d'analyser les indicateurs pertinents
pour faciliter les prises de dcision.
Lobjectif fondamental de ce projet consiste dvelopper une application ddie la
gnration de lensemble des motifs ferms frquents dans les bases de donnes. Cette application
permet doffrir aux dcideurs un environnement convivial pour la prise de la dcision la fois rapide
et prcise. Ainsi lutilisateur doit introduire les critres ncessaires la dcouverte des Mff et rgles
dassociation. Lapplication charge les donnes partir dune base de transaction, gnre les Mff et
rgles associatives, et enfin visualise la gnration produite.
8. Gestion du projet
La gestion du projet est un processus important pour son bon droulement. Cest lart de
diriger et de coordonner des ressources humaines et matrielles tout au long du cycle de vie dun
projet, en utilisant des techniques modernes de gestion pour atteindre des objectifs prdfinis. Dans
ce chapitre, je prsente la mthodologie suivie pour raliser mon projet, ainsi que le planning gnral
de mon priode de stage.
Durant la ralisation du projet je devais prendre en considration 3 contraintes :
Les objectifs.
Les moyens.
Les dlais.

Jai divis le projet en cinq tches principales :
Gnration des motifs ferms frquents.
Analyse des modles et outils existants de visualisation des rseaux.
Gnration des rgles d'association, restructuration de motifs ferms frquents en treillis
de Galois, et choix du format d'change et de stockage.
Restructuration des rgles d'association et gnration des mtargles.
Visualisation laide de la mthode Alpha et la mthode graphique.
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 6

9. Technologies et domaines sollicits
a. IDE
- Java Eclipse
Eclipse IDE est un environnement de dveloppement intgr libre extensible, universel et
polyvalent, permettant potentiellement de crer des projets de dveloppement mettant en uvre
n'importe quel langage de programmation. Eclipse IDE est principalement crit en Java ( l'aide de la
bibliothque graphique SWT, d'IBM), et ce langage, grce des bibliothques spcifiques, est
galement utilis pour crire des extensions.
La spcificit d'Eclipse IDE vient du fait de son architecture totalement dveloppe autour de
la notion de plug-in : toutes les fonctionnalits de cet atelier logiciel sont dveloppes en tant que
plug-in.
- Microsoft Visual studio
Microsoft Visual Studio est une suite de logiciels de dveloppement pour Windows conu par
Microsoft. La dernire version s'appelle Visual Studio 2008.
Visual Studio est un ensemble complet d'outils de dveloppement permettant de gnrer des
applications Web ASP.NET, des Services Web XML, des applications bureautiques et des applications
mobiles. Visual Basic, Visual C++, Visual C# et Visual J# utilisent tous le mme environnement de
dveloppement intgr (IDE, Integrated Development Environment), qui leur permet de partager des
outils et facilite la cration de solutions faisant appel plusieurs langages. Par ailleurs, ces langages
permettent de mieux tirer parti des fonctionnalits du Framework .NET, qui fournit un accs des
technologies cls simplifiant le dveloppement d'applications Web ASP et de Services Web XML grce
Visual Web Developer.
b. Langages et technologies
- JAVA
Java est la fois un langage de programmation informatique orient objet et un
environnement d'excution informatique portable cr par James Gosling et Patrick Naughton
employs de Sun Microsystems avec le soutien de Bill Joy.
Le langage Java a la particularit principale que les logiciels crits avec ce dernier sont trs
facilement portables sur plusieurs systmes d'exploitation tels que Unix, Microsoft Windows, Mac OS
ou Linux avec peu ou pas de modifications... C'est la plate-forme qui garantit la portabilit des
applications dveloppes en Java.
Le langage reprend en grande partie la syntaxe du langage C++, trs utilis par les
informaticiens. Nanmoins, Java a t pur des concepts les plus subtils du C++ et la fois les plus
droutants, tels que l'hritage multiple remplac par l'implmentation des interfaces. Les
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 7

concepteurs ont privilgi l'approche oriente objet de sorte qu'en Java, tout est objet l'exception
des types primitifs (nombres entiers, nombres virgule flottante, etc.).
Java permet de dvelopper des applications autonomes mais aussi, et surtout, des applications
client-serveur. Ct client, les applets sont l'origine de la notorit du langage. C'est surtout ct
serveur que Java s'est impos dans le milieu de l'entreprise grce aux servlets, le pendant serveur des
applets, et plus rcemment les JSP (Java Server Pages) qui peuvent se substituer PHP, ASP et
ASP.NET.
Les applications Java peuvent tre excutes sur tous les systmes d'exploitation pour lesquels
a t dveloppe une plate-forme Java, dont le nom technique est JRE (Java Runtime Environment -
Environnement d'excution Java). Cette dernire est constitue d'une JVM (Java Virtual Machine -
Machine Virtuelle Java), le programme qui interprte le code Java et le convertit en code natif. Mais le
JRE est surtout constitu d'une bibliothque standard partir de laquelle doivent tre dvelopps
tous les programmes en Java. C'est la garantie de portabilit qui a fait la russite de Java dans les
architectures client-serveur en facilitant la migration entre serveurs, trs difficile pour les gros
systmes.
- C++
Le C++ est un langage de programmation permettant la programmation sous de multiples
paradigmes comme, par exemple, la programmation procdurale, la programmation oriente objet et
la programmation gnrique. Au cours des annes 1990, C++ est le langage le plus utilis au monde.
Le langage C++ n'appartient personne et par consquent n'importe qui peut l'utiliser sans payer de
droits.
- MFC
La bibliothque MFC (Microsoft Foundation Class) reste l'infrastructure d'application C++ la
plus populaire utilise ce jour. Des milliers d'diteurs de logiciels indpendants et de dpartements
informatiques continuent investir massivement dans la bibliothque MFC, tant au niveau du code
existant que des nouveaux projets. Microsoft s'engage faire en sorte que la bibliothque MFC
demeure une infrastructure d'application comptitive et viable et que ses dveloppeurs soient
quips de manire pouvoir tirer parti des technologies des nouvelles plateformes.
- XML
XML (eXtensible Markup Language - langage de balisage extensible ) est un langage
informatique de balisage gnrique. Le World Wide Web Consortium (W3C), promoteur de standards
favorisant l'change d'informations sur Internet, recommande la syntaxe XML pour exprimer des
langages de balisages spcifiques. De nombreux langages respectent la syntaxe XML : XHTML, SVG,
XSLT, etc...Son objectif initial est de faciliter l'change automatis de contenus entre systmes
d'informations htrognes (interoprabilit). XML est une simplification de SGML dont il retient les
principes essentiels comme :
La structure d'un document XML est dfinissable et validable par un schma,
Un document XML est entirement transformable dans un autre document XML.
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 8

- GraphML
GraphML est un format de fichier complet (comprhensif) et facile utiliser pour les graphes.
Il dcrit les proprits structurelles d'un graphe et un mcanisme d'extension flexible pour ajouter des
donnes d'application-spcifiques.
la diffrence de beaucoup d'autres formats de fichier pour les graphes, GraphML n'utilise
pas de syntaxe personnalise. Au lieu de cela, il est bas sur XML et de l convenu idalement comme
un dnominateur commun pour toutes les sortes de production de services, archivage, ou des
graphiques de traitement.
- UML
UML (Unified Modeling Language) est la notation standard qui s'est impose pour la
modlisation de systmes informatiques. Elle permet de spcifier, de visualiser, de construire et de
documenter l'ensemble des artefacts du systme et s'applique aussi bien aux systmes d'information
qu'aux systmes logiciels, techniques, business ou temps rel.
c. Programmation Oriente Objet
La programmation oriente objet (POO) ou programmation par objet, est un paradigme de
programmation informatique qui consiste en la dfinition et l'assemblage de briques logicielles
appeles objet ; un objet reprsente un concept, une ide ou toute entit du monde physique,
comme une voiture, une personne ou encore une page d'un livre.
Orthogonalement la programmation par objet, afin de faciliter le processus d'laboration
d'un programme, existent des mthodologies de dveloppement logiciel objet dont la plus connue est
USDP (Unified Software Development Process).
III. Data mining
1. Concept du Data mining
Le Data mining est un nologisme amricain qui signifie "recherche de ppites d'information
utile dans un grand ensemble de donnes", on le traduit en franais par les expressions comme
"fouille de donnes.
Selon Han et Kamber [5] le Data Mining est lextraction dinformations intressantes non
triviales, implicites, pralablement inconnues et potentiellement utiles, partir de grandes bases de
donnes.
Les informations extraites sont souvent de taille trs faible par rapport l'immensit du
contexte, mais elles sont porteuses d'une trs grande valeur. Le Data mining correspond donc
l'ensemble des techniques et des mthodes qui, partir de donnes, permettent d'obtenir des
connaissances exploitables. Il s'agit de processus de slection, dexploration, de modification et de
modlisation (Figure1) de grandes bases de donnes afin de dcouvrir des relations implicites et des
rgularits entre les donnes.
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 9




2. Architecture typique dun systme de data mining
Pour prsenter larchitecture du systme de Data mining, je vais me baser sur le point de vue
de Han et Kamber [5]. Ces chercheurs ont considr une vue large sur les fonctionnalits du Data
mining. En effet, dans le domaine de lindustrie et dans le milieu de recherche dans les bases de
donnes, le terme Data mining est devenu plus populaire que celui de dcouvertes de connaissances
dans les des bases de donnes. Cependant, la fonctionnalit du Data mining est la dcouverte des
connaissances intressantes partir dune large taille de donnes stockes que ce soit dans des bases
de donnes, des entrepts de donnes (Data Warehouse), ou encore dans dautres dpts
dinformation.
Les principaux composants de larchitecture (Figure2) typique dun systme de data mining
sont :
Bases de donnes, Data Warehouse, ou autre dpt dinformations : les techniques de
nettoyage et de prtraitement vont tre appliques ces entrepts de donnes;
Serveur de base de donnes ou de Data Warehouse : permet de rpondre aux
demandes des utilisateurs pour la recherche des donnes appropries leurs requtes;
Base de connaissances : cest le domaine de connaissances utilis pour guider la
recherche ou lvaluation des patterns trouvs. Une telle base peut contenir des
concepts hirarchiques permettant dorganiser les champs ou leurs valeurs au cours
des diffrents niveaux dabstraction;
Figure 1. Processus de l'extraction de connaissances partir des donnes
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 10

Module Data mining: il inclut les modules fonctionnels concernant les tches de
caractrisation, dassociation, de classification automatique, etc.
Module dvaluation des motifs : cest un module qui est mis en interaction avec le
module de Data mining afin de focaliser la recherche des motifs intressants. Une fois
bien intgr dans le processus dextraction, ce type de filtrage permet daugmenter
lefficacit du systme de Data mining en affinant la recherche et se concentrant
seulement sur les motifs intressants;
Interface graphique avec lutilisateur : cest un module qui assure la communication
entre les utilisateurs et le systme de Data mining.




































Interface graphique
Evaluation des motifs
Module Data Mining
BDD ou Data warehouse
Base de
connaissances
Data
warehouse

BDD
Filtrage Nettoyage & intgration
Figure 2. Architecture typique dun systme de data mining
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 11



IV. Rgles dassociation
Introduit par Agrawal, Imielinski et Swami [1], l'extraction de rgles d'association est l'un des
principaux problmes de l'ECB. Ce problme fut dvelopp, l'origine, pour l'analyse de bases de
donnes de transactions de ventes. Chaque transaction est constitue d'une liste d'articles achets,
afin d'identifier les groupes d'articles les plus frquemment vendus ensembles.
La principale application des rgles d'association est donc "l'analyse du panier de la
mnagre". Nanmoins, on assiste aujourd'hui lapplication de cette technique tout domaine
cherchant regrouper des produits ou des services. Le problme d'extraction de rgles d'associations
s'est tendu au secteur bancaire, mdical, industriel, des nouvelles technologies, etc.
Une rgle d'association est une relation d'implication XY entre deux ensembles d'articles X
et Y. Cette rgle indique que les transactions qui contiennent les articles de l'ensemble X ont
tendance contenir les articles de l'ensemble Y. Lensemble X est appel condition ou prmisse et Y
est appele rsultat ou conclusion [6].
Il faut noter que les connaissances ainsi obtenues le sont par induction, savoir un
raisonnement de gnralisation. Afin que les rsultats acquirent le statut de connaissances et afin
d'viter une dpendance trop grande par rapport un jeu de donnes particulier, la plupart des
algorithmes permettent de mesurer l'acuit des rgles obtenues en leur affectant des probabilits
d'exactitude.
1. Principe de gnration des rgles d'association
Une rgle d'association tant destine tre utilise par la suite dans un but dcisionnel voire
organisationnel, il est ncessaire d'valuer la qualit de cette connaissance dcouverte. Il faut que
dans la phase de fouille, il y ait suffisamment d'exemples vrifiant cette rgle et une quantit de
contre-exemples qui ne porte pas prjudice au sens que prend cette rgle dans son contexte
d'extraction.
La mthode d'extraction de rgles d'association peut produire des rgles d'association triviales
ou inutiles. Les rgles triviales sont des rgles videntes (par exemple : SI achat d'un stylo plume
ALORS achat de cartouches d'encre) qui n'apportent pas d'information supplmentaire. Il est difficile
dinterprter ces rgles inutiles puisquelles peuvent provenir de particularits propres la liste des
transactions ayant servi l'apprentissage.
De nombreux critres d'valuation existent. Ils peuvent tout d'abord tre subjectifs. L'expert
du domaine sait quels attributs il souhaite avoir dans les rgles d'association. Ce cas de figure est trs
rare, car contraire au but de l'ECD qui est de dcouvrir des connaissances dont on ignore priori
l'existence. Il existe galement de nombreux critres beaucoup plus objectifs qui consistent tudier
le nombre d'exemples, de contre-exemples, etc. Il faut que la rgle obtenue ne soit pas trop gnrale
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 12

ou vidente. Elle ne doit pas non plus tre trop spcifique car elle n'aura aucune valeur si elle provient
seulement du bruit contenu dans les donnes.
Les statistiques sont utilises pour associer chaque rgle d'association de la forme "XY"
des mesures permettant d'avoir une ide de sa qualit.
2. Dfinitions
Soit un ensemble I = {I1, I2, ..., Im} ditems, une transaction T est dfinie comme les sous-
ensembles ditems inclus dans I. Une transaction na pas de duplicates.
- base de donnes transactionnelle un ensemble de n transactions et chaque
transaction est nomme par un identifiant (TID).
D = {{T1, {Moutarde, Saucisse}}, {T2, {Lait, Caf, Gteaux}}, ...}
- Itemset Un ensemble ditems.
- k-Itemset est un Itemset X de cardinalit k = |X|.
3-Itemset : {Beurre, Pain, Lait}
- Un Itemset frquent est un Itemset de support suprieur un seuil correspondant
au support minimum exig par un utilisateur.
- Itemset ferm frquent un Itemset A est dit ferm si A = fog(A). (fog est un
operateur de fermeture (voir section V.4.a)), et il est considr frquent par
rapport au seuil minsup si son support est >= minsup.
Soit n le nombre de transactions dans la base de donnes D.
- Frquence de la rgle (X Y)
Nombre de transactions dans D qui contiennent X Y (X et Y).

- Support de la rgle (X Y)
Frquence (X Y) / n

- Confiance de la rgle (X Y)
Frquence (X Y) / frquence (X)

- Effet de levier (lift) de la rgle (X Y)
Confiance (X Y) / support (Y)

3. tapes de lextraction des rgles
Lextraction des rgles dassociation peut tre dcompose en quatre tapes (Figure3) :
a. Slection et prparation des donnes
Cette tape permet de prparer les donnes afin de leur appliquer les algorithmes
dextraction des rgles dassociation.
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 13

b. Dcouverte des itemsets frquents
Cest ltape la plus coteuse en terme de temps dexcution car le nombre ditemsets
frquents dpend exponentiellement du nombre ditems manipuls (pour n items, on a 2n itemsets
potentiellement frquents).
c. Gnration des rgles dassociation
A partir de lensemble des itemsets frquents pour un seuil minimal de support minsup, la
gnration des rgles dassociation pour un seuil de confiance minconf est un problme qui dpend
exponentiellement de la taille de lensemble des itemsets frquents.
d. Visualisation et interprtation des rgles dassociation
Elle met entre les mains de lutilisateur un ensemble de dductions fiables qui peuvent laider
prendre des dcisions. Il faut que loutil de visualisation prenne en compte la priorit des rgles les
unes par rapport aux autres, ainsi que les critres dfinis par lutilisateur. De plus, il doit prsenter les
rgles sous une forme claire et comprhensible.


Base de
donne
s

ABCDEFG
BCDEFGH
CDEFGHK
DEFGHC
GHABCD

ABCDEF
ACDFH
BCEFG
CEFH


ABD => C
BC => AD
AC=>E
BE=>C

Slection et
prparation
des donnes
Dcouverte
des itemsets
frquents

Gnration
des rgles
dassociation

Visualisation
et intgration
des rsultats

Donnes
prpare
s
Itemsets
frquents
Rgles
dassociation
s
Connaissances
Figure 3. Cycle dextraction de connaissances partir des donnes ECD
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 14

4. Extract Transform Load (ETL)
a. Dfinition
Lors des premiers projets dcisionnels, cette phase de collecte et de prparation des donnes
tait gnralement sous-estime. C'est peut-tre une des principales explications des checs de
ralisations et des trs nombreux dpassements de budget.
Les outils d'ETL ont en charge cette fonction essentielle du systme global dcisionnel. Il s'agit
en effet de grer toutes les tapes de la collecte et de la prparation des donnes : Extraire,
transformer et charger.
Extraire : Accder la majorit des systmes de stockage de donnes (SGBD, ERP,
fichiers plat...) afin de rcuprer les donnes identifies et slectionnes. Prendre en
compte les questions de synchronisation et de priodicit des rafrachissements.
Transformer: Toutes les donnes ne sont pas utilisables telles qu'elles. Elles mritent
d'tre vrifies, reformates, nettoyes afin d'liminer les valeurs aberrantes et les
doublons, et consolides.
Charger: Insrer les donnes dans le Data Warehouse. Elles sont ensuite disponibles
pour les diffrents outils d'analyse et de prsentation que sont le Data Mining.
Les principaux Open Source sont : Octopus, Clover.ETL, Kettle ou encore Talend.
b. ETL ralis
Avant le lancement de la phase de prtraitement, on doit disposer des donnes sous forme de
BDD transactionnelles, raison pour laquelle jai dvelopps un ETL spcifique mes besoins (Figure 4).








Exemple
Select Num_client,
Num_article from Achat
Group by Num_client


Extract
Transform
Load
0, n
1, n
CLI ENT
Num_client
Nom_client
ARTI CLE
Num_art icle
Libell
Achat
BDD
Transactionnelle

C1. A B C D
C2. A D B
C3. D C B A
C4. A B D
C5. A D C
Fichier
Descriptif

A Beurre
B Fromage
C Pain
D Lait
Figure 4. Exemple dETL
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 15

5. Algorithme APRIORI
La stratgie de cet algorithme (Figure 5) est simple. Il cherche les itemsets
potentiellement frquents puis il ne garde que ceux qui le sont vraiment. Il dtermine les
itemsets frquents dans un ordre croissant de taille, en se basant sur les proprits et
propositions cites prcdemment.
Il a t introduit par Agrawal et Srikant [7]. Le nom de lalgorithme vient du fait quil tient en
compte de la connaissance antrieure des itemsets frquents. Il est constitu de deux principales
phases :
- Calcul de tous les sous-ensembles darticles X frquents et la recherche des sous-
ensembles frquents X de I (ensemble des articles), cest--dire tels que
Sup(X)>=minsup ;
- Calcul de toutes les rgles dassociation intressantes partir des sous-ensembles X
frquents dtermins lors de la premire phase De confiances suffisantes, cest--
dire tels que les rgles dassociation telles que Conf(XY)>=minconf ;
Lalgorithme Apriori est bas sur la proprit fondamentale du support :

Si X Y, alors Sup(X)>=Sup(Y) pour tout D
- Tout sous-ensemble dun Itemset frquent est frquent ;
- Tout sur-ensemble dun Itemset non frquent est non frquent.

Le principe de recherche ascendante des itemsets frquents est le suivant :
- tape 1 : calcul des 1-itemsets frquents = sous-ensembles frquents de I
comportant 1 article ;
- tape k : calcul des k-itemsets frquents partir des (k-1)-itemsets frquents =
sous-ensembles frquents de I comportant k articles.

Figure 5. Algorithme Apriori
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 16


6. Inconvnients de lapproche
Beaucoup de candidats : 10
4
1-ensembles vont gnrer 10
7
2-ensembles.
Pour trouver un Itemset de taille 100, e.x. {a
1
, a
2
, , a
100
}, on doit gnrer 2
100
~ 10
30

candidats.
Plusieurs scans de la BD (pour calculer les supports) : on doit faire n+1 scans pour trouver les
n-ensembles frquents
Les indicateurs de support et confiance sont insuffisants, le support est symtrique, il ne
distingue pas A B de B A
Qualit des rgles : production dun nombre important de rgles triviales ou inutiles.
Une nouvelle approche base sur la topologie algbrique, propose par Pr A.BOULMAKOUL [2-4]
consiste en la recherche uniquement des itemsets ferms (closed itemsets).

V. Une nouvelle approche
Sachant que le rsultat dun algorithme de fouille de donnes data mining peut tre trs grand
mme pour des ensembles rduits de donnes, lobjectif de ce chapitre est de proposer deux
approches qui permettent de rduire ce rsultat et donc le temps de calcul laide de llagage de
lensemble des motifs ferms frquents.
1. Prtraitement
Cette section dcrit ltape de prtraitement (Figure6) qui consiste construire une matrice de
cooccurrences. La matrice servira ensuite la gnration des MFF.
a. Matrice de cooccurrence
Il sagit dune matrice triangulaire dont les lignes et les colonnes sont ordonnes par ordre
dcroissant du support des items. La valeur dune cellule cooc [i,j] (avec j>=i) reprsente le nombre de
fois que litem apparat avec ai et cooc[i,i] reprsente le support (absolu) de litem. Par exemple,
cooc[A, W]=4.
Table 1 : Matrice de Cooccurrence
A C D T W
A 3 3 1 2 3
C 5 3 3 4
D 3 1 2
T 3 2
W 4
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 17

b. Illustration

Figure 6. Phase de prtraitement

2. Closed Itemset Generation and Approximation (CIGA+)
CIGA+ [8] est un algorithme qui utilise trois paramtres de seuil pour produire un ensemble
complet ou approximatif des motifs ferms frquents (MFF) en explorant un graphe de dpendances
dans lequel les nuds sont des items et les artes reprsentent des liens (frquences de
cooccurrence) entre deux items. Les seuils utiliss sont : le support minimal (minsupp), la confiance
minimale entre deux items (mincooc) et la tolrance minimale (mintol). Le premier paramtre est dj
connu par la communaut du data mining, le second paramtre mincooc permet dcarter des liens
faibles entre deux items individuels en se basant sur leur frquence de cooccurrence et le dernier
paramtre permet dliminer dventuels liens qui ne sont pas ncessaires entre deux items.
CIGA+ comporte deux tapes : la construction du graphe de dpendances puis la gnration
des MFF. Les seuils de cooccurrence et de tolrance sont utiliss lors de la premire tape tandis que
le support est utilis dans la seconde.

APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 18

a. Graphe de dpendance
Un graphe de dpendances G=<N,T> est un graphe orient et acyclique dont les nuds dans
N correspondent aux items frquents. Il reprsente les dpendances qui ont lieu entre deux items
selon leur frquence de cooccurrence. Ainsi, une arte dans T allant du nud a
i
au nud a
j
, et note
(ai,aj), indique que conf(a
i
=>a
j
) >= mincooc

et supp(a
i
) >= supp(a
j
).
titre dexemple, je vais considrer la petite base de transactions de la table (table3). Elle
comporte 6 transactions et 5 items (table2) {A, D, C, T, W} qui dcrivent des paniers de
consommateurs (achat de produits). Les items sont tris selon lordre dcroissant de leur support car
les items les plus frquents apparaissent plus souvent dans le rsultat et donc sont traits en premier.
Table 2 : Liste des Items avec leurs descriptions
Jane Austen Agatha Christie Connan Doyle Mark Twain P. Wood house
A C D T W


Table 3 : Base de transactions
Transaction Items
1 A C T W
2 C D W
3 A C T W
4 A C D W
5 A C D T W
6 C D T
Algorithme 1 : CONSTRUIRE_GRAPH

Entres : cooc [n, n], mincooc, mintol
Sortie : (G=<N, T>)
Crer les nuds de N
1
jusqu' N
n
:
Pour j allant de n jusqu' 1 faire
Placer_lien=vrai ;
Pour i allant de j-1 jusqu' 0 faire
Si ((cooc [i, j] / cooc [i, i]) >= mincooc) alors
T T U (a
i
, a
j
) ;
Si ((cooc [i, j] /cooc [j, j] ) >= mintol ) alors
Placer_lien=faux ;
Sortir ;
Fin pour i ;
Si ( !placer_lien)
T T U ({}, a
i
) ;
Fin pour j ;
Fin.


APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 19

b. Gnration des MFF
Lide derrire CIGA+ est la suivante. Le support de a
i
a plus de chances dtre lev que le
support de a
j
si litem le moins frquent dans Y est tel que conf(a
i
a
j
)>conf(a
i
a
k
). Cela permet de se
diriger rapidement vers les motifs de plus grande taille.

Algorithme 2 : CIGA+

Entres : cooc [n, n], minsup, mincooc, mintol
Sortie : L : Ensemble des MFF
G CONSTRUIRE_GRAPHE (cooc [n, n], mincooc, mintol)
Global L
Pour chaque nud a de T ({}, a) faire
CIGA+_SUB( a , g(a) , minsup )
Fin pour
Fin.


Algorithme 3 : CIGA+_SUB

Entres : a, X, minsup
X g(a) X
Candidat vrai
Si (taille(X) > (minsup * D) et taille (X) >= 1) alors
Pour chaque suc de a faire
Si CIGA+_SUB (suc, X, minsup) = taille (X) alors
Candidat = faux ;
Fin pour
Si candidat alors
L L U f(X)
Fin si
Fin si
Retourner (taille(X))
Fin.


c. Conclusion
CIGA+ affiche des rsultats intressants, mais reste nettement moins rapide que la deuxime
approche, ainsi quau niveau des ressources ncessaires, CIGA+ consomme plus de mmoire RAM,
surtout lors de la construction du graphe de dpendances.
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 20


3. Approximative algorithm for closed frequent itemsets mining
(AFCIM)
Dans cette partie, je dcris une nouvelle approche propose par Pr. BOULMAKOUL[2-4], pour
le problme de l'exploitation des itemsets ferms frquents, o le fondement thorique est bas sur
la topologie algbrique.
a. Algorithmes

Algorithme 4 : AFCIM
Entres : O AA =
T
// (Matrice de cooccurrence) - 1
Sortie :

O // Lensemble des -motifs ferms frquents



Initialiser un vecteur

= , tri par ordre dcroissant,
par toute les valeurs (q-values) de la matrice .

Pour chaque valeur dans

= faire

Dbut
a. Calculer (

o
R )
b. H

o
Maximal_sets (

o
R )
c.

o
H
Fin



Algorithme 5 : Calculer (R)

Pour toute valeur de faire
Si alors remplacer dans

o
R par 1
Sinon remplacer par 0




APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 21

Je prsente l'algorithme de recherche de toutes les cliques maximales dans un graphe
dynamique.
Algorithme 6 : Maximal_sets (R )
Initialiser lensemble C
0
vide.
C
t+1
= C
t

Soit (v,w) larc ajouter linstant t.
Pour chaque (A, B) [{v}]
t
[{w}]
t
faire
Insrer C= (A B) {v,w} C
t+1
, si C est une cliques maximal dans G
t+1
.
Initialiser t t+1 et rpter 2 jusqu' t=T.


Le critre de maximalit de lalgorithme ci-dessus est vrifi comme suit :
- Si A est un sous-ensemble dun ensemble B Ct+1, alors, on najoute pas
A dans lensemble de cliques maximales.
- Si A est un sur-ensemble dun ensemble B Ct+1, alors, on ajoute A et on
supprime B.
- Si rien de ce qui prcde nest vrai, alors A est ajoute.

b. Implmentation

La classe Algorithmes
Les variables prives

Items La liste des items remplir partir dun fichier (*.it) gnr dans la partie du
prtraitement avec la matrice de cooccurrence, elle est de type vector pour des raisons
dindexation.
Qvalues Ensemble (set<int>) de toutes les valeurs de la matrice de cooccurrence, tries par
dfaut dans lordre croissant. Dans cette algorithme on a besoin de lordre inverse, donc pas de quoi
inverser tout lensemble, mais le parcourir de la fin jusquau dbut.
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 22

AddedEdges liste des arcs ajouter pour une valeur donne. Cette variable est rinitialise
aprs chaque itration.
MaximalCliques Considre comme lien entre les itrations, cette variable survie tout au long
de lexcution du programme et contient la liste des cliques maximal, et est mise jour aprs chaque
itration.
Les fonctions

Print Fonction qui prend comme paramtres un pointeur sur le fichier rsultat qui sera ouvert
pendant lexcution du programme pour crire les MFF correspondant au deuxime paramtre
Qvalue. Ce fichier peut tre de type texte, XML, ou une simple base de donnes.
Subset Fonction deux paramtres SUBSET et SET qui dsignent deux ensembles, chacun
contient des items construisant une clique. Retourne vrai si SUBSET est un sous-ensemble de SET.
Superset Fonction deux paramtres SUPERSET et SET qui dsignent deux ensembles, chacun
contient des items construisant une clique. Retourne vrai si SUPERSET est un sur-ensemble de SET.
InitializeQvalues Ncessaire pour remplir la variable Qvalues, il prend le nom du fichier
contenant la matrice FileName comme paramtre. Ensuite on va parcourir la matrice pour
rcuprer toute les valeurs. Cette procdure nest appele quau lancement du traitement et se fait
une seule fois.
InitializeItems De mme pour cette fonction qui initialise la variable Items. On lappel une
seule fois au lancement du traitement.
AFCIM Algorithm for Frequent Closed Itemsets Mining, cest la fonction ou seffectuent tous
les traitements. Elle prend comme paramtres le nom du fichier contenant la matrice de
cooccurrence (*.MTX), le nom du fichier contenant la liste des items (*.IT), et lemplacement o va
tre sauvegard le fichier rsultat.


APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 23


La classe MemoryAccessMatrice
Les variables prives

Mat Une variable prive de type vecteur de vecteur, elle va contenir toute la matrice si
lutilisateur fait le choix de travailler en mode mmoire. La structure est dfinie comme suit :

Table 4 : illustration de la matrice en mmoire

Les fonctions

operator() operateur () qui prend comme paramtres deux entiers (indice ligne i , et
indice colonne j ), Et retourne la valeur Mat[i][j]. On utilise la variable M de la classe mre Matrice
pour charger la matrice de cooccurrence partir dun fichier *.MTX
La classe DiskAccessMatrice
Les fonctions

Key Une fonction qui calcul la cl denregistrement. En effet, la matrice lors de la phase du
prtraitement est sauvegarder comme le montre ces deux figure :






Table 5 : Cl denregistrement
Indice de la matrice

APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 24


Les classes table & mm_file
Sont deux classes implmentant une mthode de sauvegarde de donnes persistantes
prsentant plusieurs avantages. Rapide, compacte et facile mettre en uvre, Cette mthode
d'accs aux donnes persistantes a presque un temps nul pour effectuer les oprations ouvrir /
fermer, et limine la ncessit de tampons intermdiaires. Elle offre un accs direct aux documents
dans le tableau de faon alatoire.
c. Diagramme de classes


















Figure 7. Diagramme de classes de la nouvelle approche AFCIM
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 25

d. Illustration










4. Le Treillis de Galois
La construction de treillis de Galois, appele encore analyse de concepts formels (ACF), offre
des techniques de dcouverte d'abstraction potentiellement utiles dans des ensembles de donnes
concrtes. Ces techniques consistent extraire d'une collection d'individus des groupes dcrits en
intention, appels concepts, et de les ordonnes dans un treillis. Pour ce faire, elles sappuient sur les
notions algbriques de correspondance de Galois entre deux ensembles. Par rapport au reste des
techniques de hirarchisation l'ACF se distingue par sa simplicit, par son fondement mathmatique
et par les proprits structurelles intressantes de son rsultat.
a. Formalisme mathmatique
- Contexte de fouille
Cest un triplet D = (O,A,R) dcrivant :
un ensemble fini O dobjets;
un ensemble fini A ditems ;
une relation R (dincidence).

On dfinit deux fonctions, f et g, rsumant les liens qui pourraient exister entre des sous-ensembles
dobjets et des sous-ensembles dattributs induits par R. Ainsi,
f : P(O) P(A) , f(Oi) = { a A / (o,a) I, o Oi } intension;
g : P(A) P(O) , g(Ai) = { o O / (o, a) I, a Ai } extension;
f et g sont 2 applications monotones dcroissantes.
(f, g) = correspondance de Galois entre P(O) et P(A).
Figure 8. Gnrateur des motifs ferms frquents Figure 9. Exemple de fichier gnr
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 26

- Correspondance de Galois
Les oprateurs f et g, tels que dfinis, constituent une correspondance de Galois. De plus, les
oprateurs composites g o f(X) et f o g(Y ) sont des oprateurs de fermeture dfinis respectivement sur P(O) et
P(A), puisque les proprits suivantes sont vrifies :
Isotonie (monotones croissantes): O1 O2 h(O1) h(O2);
Extensivit O1 h(O1);
Idempotence h (O1) = h [ h (O1)].
h (resp. h) est une fermeture dans P(O) ( resp. P(A) ).
- Treillis de Galois
Un treillis est un ensemble ordonn dans lequel deux lments quelconques ont une borne
suprieure (BS, ou sup) et une borne infrieure (BI, ou inf). Un treillis complet est un treillis pour
lequel tout sous-ensemble possde une BS et une BI.
Soient m1 : P Q et m2 : Q P deux fonctions dfinies sur les treillis (P,
p) et (Q, Q) telles que (m1, m2) soit une correspondance de Galois.
Soit G l'ensemble des couples (p, q)
e
P x Q tels que p=m2(q) et q=m1(p)
Soit la relation dfinie par (p1, q1) (p2, q2) si et seulement si q1 Q q2.
La structure (G, ) est alors un treillis appel treillis de Galois.
b. Construction partir des motifs ferms frquents
Dans ce qui suit, je dcris un algorithme qui utilise comme donnes dentre le fichier des
motifs ferms frquents (MFF), et construit le treillis de Galois dans lequel les nuds sont les
Itemsets frquents et les artes reprsentent des liens entre deux MFF. Le treillis servira ensuite la
gnration des rgles associatives minimales laide lalgorithme MIRAGE.

Algorithme 7 : Treillis de Galois
Entre : Mff // Fichier *.mff gnr lors de la premier phase
Sortie : (G, ) // Treillis de Galois
Initialiser un vecteur , tri par ordre croissant,
par toutes les valeurs des tailles des Mff.
Pour chaque valeur de faire
Pour chaque feuille dans (G, ) faire
Pour chaque Mff de taille faire
Si c faire
Dbut
Ajouter un arc entre et dans (G, )
Flag = vrai
Fin Nest plus une feuille
Si Flag == faux faire
Ajouter dans (G, ) comme une feuille.

APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 27


c. Illustration






5. Gnration des rgles dassociation minimales
a. Extraction des rgles dassociation non redondantes
Le problme de la pertinence et l'utilit des rgles dassociation extraites est dune grande
importance. En effet, dans la plupart des bases de donnes de la vie relle, l'ensemble des rgles
d'association peut tre trs lourd, en particulier si on baisse la valeur minsup, et dont beaucoup sont
redondantes. Ainsi, une solution possible ce problme consiste limiter le nombre de rgles en
liminant celles redondantes, et en se limitant sur une base de rgles dite gnrique. Une fois cette
base gnrique est obtenue, toutes les autres rgles peuvent tre tablies l'aide d'un mcanisme
d'infrence.
b. Gnrateur minimal
Dans cette partie, je donne des algorithmes pour gnrer les rgles d'association exactes
(confiance = 1) et inexactes minimales, algorithmes qui reposent sur la notion de gnrateur minimale
d'un itemset ferm.
- Concept formel
Cest un couple CK = (O, A), o O est appel extension, et A est un itemset, appel intension.
De plus, les deux ensembles O et A sont lis par la connexion de Galois, i.e., (O) = A et (A) = O. Soit
un Itemset A I, le support de lItemset A est dfini par : support(A) = |(A)|/|O| o la notation |X|
signifie la cardinalit de lensemble X.
- Face
Soit CK = (O,A) un concept formel et soit predi(CK) le ime prdcesseur immdiat de CK dans
un treillis de Galois. La ime face du concept formel CK correspond la diffrence entre son intension
et lintension de son ime prdcesseur.
Figure 10. Exemple de Fichier dentre
des motifs ferms frquents.
Figure 11. Treillis de Galois correspondant
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 28

- Bloqueur minimal
Soit G = {G1, ...,Gn} une famille de n ensembles. Un bloqueur B de la famille G est un ensemble
o son intersection avec tout ensemble Gi G est non vide. Un bloqueur B de la famille G = {G1,
...,Gn} est dit minimal si : B1 B et Gi G,B1 Gi =
- Gnrateur minimal
Soit CK un concept formel et FCK sa famille de faces. Lensemble G des gnrateurs minimaux
associs lintension A du concept formel CK, correspond aux bloqueurs minimaux associs la
famille de ses faces FCK.
Algorithme 8 : Minimal_Generator(X,S)
Entre : un motif ferm frquent X + S lensemble
des sous-ensembles ferms immdiats
Sortie : G
min
Table contenant les gnrateurs minimaux

G
min
(X) = ;
I = X
Xi S
Xi ; //les nouveaux items dans X
Pour tout i I faire //chaque item est gnrateur minimal
G
min
(X) = G
min
(X) {i};
G1 = {i | i X I}; // le reste des items
k = 1;
Tant que G
k
faire
Pour chaque G G
k
faire
Si G . Xj pour chaque Xj S
G
min
(X) = G
min
(X) {G};
G
k
= G
k
G;
// Construire Gk+1 pour une autre iteration.
Gk+1 = {G
p
= i
1
i
k
i
k+1
| 1 j k + 1, G
j
G
k
,G
j
= i
1
i
j1
i
j+1

k+1}
k = k + 1 ;

-
Table 6 Exemple de gnrateur minimal
Motif ferm frquent Gnrateur minimal
C C
CW W
CT T
CD D
CWA A
CDW DW
CTWA AT,TW

APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 29

c. Rgles minimales exactes
Une rgle dassociation est dite exacte si sa prcision est 100 %; autrement dit, si les
supports de A et AB sont gaux.
Algorithme 8 : GenerateExacteRules(X
T
, X)
Entre : X
T
et X sont deux items ferms frquents, avec X
T
X
Sortie : R
min
Rgles minimales exactes
G
1
= G
min
(X
T
);
G
2
= G
min
(X);
R = ; // ensemble des rgles minimales
// toutes les rgles entre les gnrateurs minimaux
Pour tout X

g
G
2
Pour tout X
T
g
G
1
LHS = X;
RHS = (X
T
X);
Si c
it
(RHS) = X
T
c
it
(LHS RHS) = X
q = (X
T
) ;
(I
T
, I) = compute-extension (X
T
, X
T
g
,X, X

g
);
R = R (LHS
q, 1.0
RHS [I
T
, I]);
return Rmin ;


d. Rgles minimales inexactes
Une rgle dassociation est dite approximative si sa prcision est infrieure 100 %.
Algorithme 8 : GenerateInexacteRules(X
T
, X)
entre : X
T
et X sont deux items ferms frquents, avec X
T
X
sortie : R
min
Rgles minimales inexactes
G
1
= G
min
(X
T
);
G
2
= G
min
(X);
R = ; // ensemble des rgles minimales
// toutes les rgles entre les gnrateurs minimaux

APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 30

Pour tout X
T
g
G
1
Pour tout X

g
G
2
LHS = X
T
;
RHS = (X
T
g
X

g
);
Si c
it
(LHS RHS) = X
q = (X
T
) ;
p = (X)/(X
T
);
(I
T
, I) = Compute-extension (X
T
, X
T
g
,X, X

g
);
R = R (LHS
q, p
RHS [I
T
, I]);
return Rmin ;

Algorithme 8 : Compute_Extension(X
T
, X
T
g
,X, X

g
)
Compute-extension
I
T
= X
T
(X
T
g X

g );
I = X

(X

g X
T
g );
return I
T
, I;



Les rgles d'association, pouvant tre extraites partir des bases de donnes relles,
prsentent toujours un handicap de taille en vue de leur exploitation par les utilisateurs. Ceci a suscit
l'intrt des chercheurs, qui ont penss la cration doutils de visualisation de linformation.



APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 31

VI. Visualisation des rseaux
1. Intrt
La visualisation de linformation propose une solution originale et efficace au problme de
prise de connaissance dun ensemble dinformations : la conversion de linformation en une
reprsentation visuelle tirant au mieux partie des capacits de perception des individus.
En dautres termes, la visualisation de linformation cherche faciliter, au travers de
lutilisation de certains outils, ma comprhension dun nombre plus ou moins important
dinformations en rduisant au minimum leffort intellectuel fournir pour cette mme
comprhension.
Dans les faits, le recours aux technologies de visualisation de linformation peut poursuivre
deux objectifs distincts :
Communiquer efficacement des informations au travers dune
reprsentation graphique
Faciliter la dcouverte de connaissances en utilisant une reprsentation
graphique issue de l'analyse d'un corpus d'informations.

Les outils open source de visualisation de linformation ne sont pas nombreux. Les plus connu,
sont :
Prefuse visualization toolkit
http://prefuse.sourceforge.net

JUNG Java Universal Network/Graph Framework
http://jung.sourceforge.net/
2. JUNG
a. Dfinition
JUNG (Java Universal Network /Graph), est une plateforme logicielle contenant une
bibliothque de programmes Java pour gnrer des graphes de visualisation de rseaux.
b. Utilisation de JUNG
On peut utiliser cette librairie dans deux cas soit avec des WinForm (clients riches) soit avec
des applets. Prenons le cas d'un graphe simple, deux nuds (Vertex) relis par une flche (edge). La
procdure est la suivante:
On cre un graphe
On cre deux vertex
On cre un arc en lui prcisant les vertex aux quels il est rattach
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 32

On ajoute au graphe les vertex et les arcs.
On ajoute le graphe un VisualizationViewer
On ajoute la VisualizationViewer un panel

c. Installation
Afin de pouvoir utiliser Jung il faut d'abord :
JDK 1.4 minimum
Apache Jakarta Commons Collections 3.1 (prdicats, collection utilities, etc.).
Cern Colt Scientific Library 1.2.0 (matrix operations, pseudorandom number generation,
statistics)
Xerces pour GraphML reading and writing.

Une fois install il ne me reste qu tlcharger le fichier Jung-1.7.6.jar, et l'intgrer dans le
projet.
d. Fonctionnement
Jung est une librairie pas une application clef en main. Ce qui signifie que vous tes libre de
crer les graphes que vous dsirez avec les options que vous voulez. La cration d'un graphe se fait
gnralement en 8 tapes :
// On cre un graphe (on choisit sont type de graphe en fonction de ses besoins)
Graph g = new DirectedSparseGraph ();
// On cre les Vertex
Vertex v1 = new DirectedSparseVertex());
Vertex v2 = new DirectedSparseVertex());
// On cre les Edges
DirectedEdge e = (new DirectedSparseEdge (v1, v2));
// On ajoute au graphe
g.addVertex (v1);
g.addVertex (v2);
g.addEdge(e);
// On ajoute le graphe un layout (il va engendrer la reprsentation visuel du graphe)
SpringLayout MyLayout = new SpringLayout(g);
// On cre le PluggableRenderer (il va grer tous ce qui est configuration des objets // vertex edges, etc...)
PluggableRenderer PR = new PluggableRenderer ();
// Puis on ajoute Layout VisualizationViewer
VisualizationViewer vv = new VisualizationViewer (MyLayout,PR);
// On ajoute le viewer un frame ou panel pour le rendu
JFrame jf = new JFrame ();
jf.getContentPane ().add (vv);
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 33


e. Architecture
Les diffrents diagrammes permettent de mieux comprendre l'architecture des graphes des
vertex et d'un projet.













3. Prefuse
a. Dfinition
Prefuse est une librairie Java de visualisation de graphes interactifs reposant sur Java2D; trs
souple dans sa conception, celle-ci permet de raliser des applications ou des applets Java prsentant
des graphes anims et interactifs avec vos donnes, et pour lesquels vous pouvez en dfinir
prcisment laspect et le comportement.
Figure 13. Architecture de JUNG
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 34

b. Architecture

c. Utilisation
// Crer le graphe
Graph g = new XMLGraphReader().loadGraph(datafile);
ItemRegistry registry = new ItemRegistry(g);

// Initialiser Renderers
Renderer nodeR = new TextItemRenderer();
Renderer edgeR = new DefaultEdgeRenderer();
registry.setRendererFactory(new DefaultRendererFactory(nodeR, edgeR));

Donnes structurs
et non structures.
Transformer formats
externe (csv, excel, xml,
etc) en structure de
donnes appropries
Filtrer les donnes
visualisables et attribuer
les proprits visuelles
Afficher la
visualisation des
graphiques
transforms.
Readers/Writers
pour les fichiers
dentre.
Composer la liste
d'actions de
traitement des
donnes:
filtrage, la mise en
page, couleur, taille,
police, etc.
RendererFactory
assigne Renderers
aux items pour la
visualisation

L'interface
utilisateur permet
une interaction
directe avec les
visualisations (faire
glisser, le brossage,
la slection)
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 35

// Initialiser la liste des actions excuter.
ActionList layout = new ActionList(registry);
layout.add(new TreeFilter(true));
layout.add(new RadialTreeLayout());
layout.add(new ColorFunction());

ActionList animate = new ActionList(registry,1500);
animate.setPacingFunction(new SlowInSlowOutPacer());
animate.add(new PolarLocationAnimator());
animate.add(new ColorAnimator());
animate.add(new RepaintAction());
animate.alwaysRunAfter(layout);

// Initialiser la fentre
Display disp = new Display(registry);
disp.setSize(500,500);
disp.addControlListener(new DragControl());
disp.addControlListener(new FocusControl(layout));

// Initialiser le frame
JFrame frame = new JFrame("prefuse example");
frame.getContentPane().add(disp);
frame.pack(); frame.setVisible(true);

// Excution
layout.runNow();

d. Librairies
Renderers
Formes de base
Arcs droits ou courbs
Texte
Images

Actions
Filtres - graphe, arbre,
Affectation - couleur, taille, font,
Layout - random,circle, treemap,outline, radial,force-directed
Distortion - bifocal, graphical fisheye
Animations - linear location, color, font, size

Controls
Mettre au point, glisser, slectionner
Mettre en surbrillance, Pan, Zoom

APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 36

Extras
Simulation physique
Recherche intgre
Event logging et playback

e. Avantages de Prefuse / JUNG
Jung Prefuse
Composantes
ncessaires

- JDK 1.4 or newer
- Apache Jakarta Commons
Collections 3.1 (predicates,
collection utilities, etc.)
- Cern Colt Scientific Library
1.2.0 (matrix operations,
pseudorandom number
generation, statistics)
- Xerces for GraphML
reading and writing
- JDK 1.4 or
newer

Taille des
graphes
- 150,000 nuds - illimite (taille
de la RAM)
Visualisation
et ergonomie
- Moins de fonctionnalits
pour la visualisation
- Riche en
options

Rfrence :
http://prefuse.sourceforge.net
http://jung.sourceforge.net/








APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 37

VII. Interface Homme Machine
1. Introduction
RulesViewer est une application que jai programme en java. Elle est compose d'un outil
graphique pour importer les donnes dans le format GraphML, les visualiser de manire interactive,
rechercher et effectuer des oprations daspect visualisation.
L'outil graphique est bas sur les Swings Java (bibliothque graphique java) et permet de
d'importer, de visualiser & rechercher, de gnrer de manire simple et graphique les donnes.
Le logiciel que jai ralis permet un utilisateur de faire des traitements daspect mining
laide des composantes que jai dvelopps en C++, allant de la phase de prtraitement jusqu la
visualisation des connaissances.
L'application prsente les donnes et les moyens d'y accder par des onglets (JPanel en
Swing). Chaque onglet propose une vue particulire sur les donnes importes.
2. L'onglet Mthode alpha
Contient trois onglets qui reprsentent graphiquement les rgles d'association, sous la forme
d'un tableau, construit partir des donnes dans le fichier XML.
- Longlet les rgles










Figure 13. IHM Onglet "Les rgles"
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 38

Affiche pour chaque rgle :
L'Itemset Prmisse,
L'Itemset Conclusion Le support relatif la rgle ;
LItemset Prmisse++ sont les items quon peut ajouter la partie prmisse de la
rgles ;
LItemset Conclusion ++ sont les items quon peut ajouter la partie conclusion de la
rgles ;
La confiance relative la rgle.
Il est possible de trier les rgles dassociation suivant les indices de qualit. Le double clic sur
l'entte des indices de colonnes, permet un tri alternativement ascendant et descendant
- Longlet les Items
Affiche pour chaque Item :
ID de Litem, est l'identifiant de l'Item,
Valeur, est la description de cet Item.
- Longlet les Items










Figure 14. IHM onglet "les motifs ferms frquents "


APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 39

3. Les onglets graphiques
Ces deux onglets permettent de visualiser les rgles dassociation et le treillis de gallois sous
deux formes (radial et anim), en fonction de la confiance et le support choisie par lutilisateur (
laide dun Slider).
- Longlet Les rgles dassociation (Mthode graphique)













Figure 15. IHM onglet " Les rgles dassociation (Mthode graphique) "

Cette mthode prsente plusieurs avantages, une navigation simple dans le graphe facilite la
tche aux dcideurs dsirants extraire des connaissances pour laide la dcision. Des contrles et
des options ont ts mis disposition de lutilisateur, savoir :
Clique droit + Haut : agrandir la taille du graphe (Zoom in) ;
Clique droit + Bas : rduire la taille du graphe (Zoom out) ;
Au passage de la souris sur un nud du graphe, RulesViewer met en surbrillance tous
les arcs relis ce nud, ainsi que tous les nuds relis ces arcs (neighbours
highlights).
Maintenir clique droit de la souris pour faire glisser tous le graphe
Slectionner un nud pour afficher les informations sur ce nud sus forme dinfo-
bulles.
Etc.
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 40

- Longlet Treillis de Galois
De mme que le deuxime, cet onglet affiche le treillis de Galois sous forme graphique et
permet le filtrage et llagage du graphe laide dun slider selon la valeur slectionne, qui dsigne la
mesure du support (le support et la confiance pour le deuxime onglet).










Figure 16. IHM onglet "Treillis de Galois"

- Le menu Outils
Il propose laccs aux composantes dveloppes en C++.







Figure 17. Outils proposs par RulesViewer
APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 41


VIII. Conclusion
Mon tude ma permis de mettre en vidence la diversit des mthodes et des techniques
dExtraction de Connaissances partir des donnes. Jai montr limportance de ces techniques pour
aider au diagnostic ou plus gnralement pour laide la dcision.
Aprs une tape de prtraitement des donnes, le processus comporte une phase de Data
mining (fouille de donnes) dont l'objectif est de rechercher des informations nouvelles ou caches
partir des grandes bases de donnes.
A l'image des chercheurs d'or qui doivent transporter, broyer, trier et filtrer de grandes
quantits de terre pour extraire le mtal prcieux, le Data mining est l'art d'interprter
intelligemment, l'aide d'outils informatiques, les informations disponibles dans les entrepts de
donnes afin de parvenir des connaissances oprationnelles. Ces connaissances seront utilises
pour des applications se rattachant plusieurs domaines tels que le management, le contrle de
production, ltude de march, l'ingnierie de conception, etc.













APPROCHE STRUCTURALE DE GENERATION DES MOTIFS FERMES FREQUENTS, STRUCTURATION ET VISUALISATION DES REGLES DASSOCIATIOAN

2008 | Mmoire de Projet de Fin dtude 42


IX. Rfrences
[1] : R. Agrawal, T.Imielinski et A.Swami, Mining Associations between Sets of Items in
Massive Databases, ACM-SIGMOD, Conference on Management of Data, Washington, May 1993.
[2] : Boulmakoul, A. Idri, A. Marghoubi, R. Closed frequent itemsets mining and structuring
association rules based on Q-analysis, IEEE, Signal Processing and Information Technology, ISBN: 978-
1-4244-1834-3, Digital Object Identifier: 10.1109/ISSPIT.2007.4458017, Publication Date: 15-18 Dec.
2007.
[3] : A. Boulmakoul, R. Marghoubi, Approximative closed frequent itemsets discovery based
on Q-analysis algebraic-topology framework , Atelier sur les Systmes Dcisionnels, ASD 2007,
Sousse Tunisie 19-20 Octobre 2007, en conjunction avec les premires journes francophones sur les
ontologies, JFO 2007.
[4] : A. Boulmakoul, R. Marghoubi, A new approximative algorithm for closed frequent
itemsets discovery based on algebraic topology framework , Workshop sur les Technologies de
lInformation et de la Communication, ENSIAS 5-6 juillet 2007.
[5] : Han & Kamber : Jiawei Han et Micheline Kamber Data Mining concepts and techniques
, Morgan Kaufmann Publishers, 2000.
[6] : Michael J.A.Berry et Gordon Linoff Data mining : Techniques appliques au marketing,
la vente et aux services clients", InterEditions, 1997.
[7] : Rakesh Agrawal et Ramakrishnan Srikant, Fast Algorithms for Mining Association Rules,
Conference on Very Large Databases, Santiago, September 1994.
[8] : Rokia Missaoui et Ganal Jatteau. CIGA+ : un algorithme de calcul dun ensemble concis
de motifs ferms frquents.

S-ar putea să vă placă și