2011 TH17412 Hervouet Dominique
2011 TH17412 Hervouet Dominique
2011 TH17412 Hervouet Dominique
virtuel 3D interactif
Dominique Hervouet
Mémoire
présenté en vue d’obtenir
le diplôme d’ingénieur en INFORMATIQUE
Option systèmes d’information
par
Dominique HERVOUET
Jury
5
4.5.2 Description des classes principales : .................................................................. 76
4.5.3 Interface utilisateur ............................................................................................. 84
4.5.4 Diagramme d’activité : interface ......................................................................... 85
4.5.5 Diagramme d’activité : extraction des règles (class Main_Prog) ...................... 86
4.5.6 Comparaison des résultats d’extraction avec Tanagra ....................................... 87
4.6 Placement du graphe de prémisse ...................................................................................... 88
4.6.1 Initialisation de l’algorithme de placement: ....................................................... 88
4.6.2 Echelle graphique ................................................................................................ 88
4.6.3 Corrélations graphiques ente le lift et les distances inter-sphères ....................... 89
4.7 Expérimentation sur des données réelles ........................................................................... 94
4.7.1 Efficacité du système d’extraction ...................................................................... 94
Conclusion ................................................................................................................................ 96
5.1 Acquis ............................................................................................................................ 96
5.2 Perspectives ........................................................................................................................ 97
Liste des tableaux ..................................................................................................................... 99
Liste des figures ....................................................................................................................... 99
Bibliographie .......................................................................................................................... 101
Lexique ................................................................................................................................... 104
6
Conservatoire National des Arts et Métiers
Centre régional associé des pays de la Loire
Chapitre 1
Introduction
1.1 Présentation
L’Extraction de la Connaissance dans les Données (ECD) apparaît alors comme une
alternative pour faire face à ces problèmes déjà anciens. FRAWLEY et al., (1992) présente
l’ECD comme étant « l’extraction non triviale de connaissances implicites, inconnues au
préalable et potentiellement intéressantes contenues dans les données » Il s’agit de rechercher
des régularités et des caractéristiques remarquables pour découvrir dans la « gangue » de
données, ce que l’on nomme « pépites » de connaissances. Contrairement aux méthodes
statistiques dont l’utilisation et l’interprétation des résultats exigeaient des compétences
particulières, les moyens de fouille de données en ECD sont élaborés pour être accessibles par
des utilisateurs non spécialistes. L’utilisation de l’outil informatique élargit le cercle des
utilisateurs par rapport aux techniques statistiques.
1
Selon le TDWI (The Data Warehousing Institute), les coûts engendrés par la non-qualité des données
s’élevaient en 2002 à 611 milliard de dollars par an pour l’économie américaine [BER06].
7
Les méthodes et outils développés pour l’ECD cherchent à combiner les capacités de calcul
des ordinateurs avec les potentialités humaines d’analyse et de jugement. Les objectifs de
KUNTZ et al, (2006), sont d’intégrer l’utilisateur comme une heuristique dans le système de
fouille de données.
Au sein des méthodes de l’ECD, les règles d’association permettent de matérialiser les
relations de type « prémisse » implique « conclusion ». Les parties droite et gauche sont des
groupements d’attributs contenus dans la base de données. Nous présenterons et définirons ce
concept à l’origine de l’ECD ainsi que les méthodes et techniques associées pour découvrir de
la connaissance utile dans les données.
Cette étude porte principalement sur une problématique en fouille visuelle de données et
notamment sur la visualisation de règles d’association. A l’aide de récentes technologies
dédiées aux espaces tridimensionnels (3D)2. Nous chercherons à offrir à l’utilisateur un outil
avec lequel ce dernier devient l’acteur principal du processus de décision.
1.2 Problématique
BLANCHARD (2005) dit que « le nombre de règles obtenu en sortie des algorithmes
d’extraction croit de façon exponentielle avec le nombre d’attributs décrivant les données ».
Une des problématiques en ECD est alors de faire face à ces gros volumes. Nous verrons que
de nombreuses techniques et méthodes ont été développées pour y répondre. En terme de
visualisation, les objets graphiques présentés à l’utilisateur sont chargés de traduire les
données en information. En ECD, donner du sens graphique aux représentations reste une
tâche complexe et un problème ouvert. Nous étudierons cet axe de recherche et les techniques
mises en œuvre pour répondre à ce challenge. Par ailleurs, deux tendances récentes pour la
fouille de données visent à utiliser :
2
Cette expression caractérise l’espace qui nous entoure, tel que perçu par notre vison en termes de largeur,
hauteur, et profondeur.
8
1.3 Objectifs de réalisation
L’objectif est de fournir un outil de fouille visuelle de données et d’élaborer une nouvelle
métaphore de règles d’association. A partir d’un Système de Gestion de Base de Données
(SGBD), le programme doit prévoir des fonctionnalités d’extraction locales depuis un client
de visualisation. Les règles sont alors induites par les interrogations et les suggestions de
l’utilisateur. Il se voit intégré dans la boucle de recherche de la connaissance.
Les règles sont décrites par l’élaboration de mesures qui évaluent suivant le contexte, une
notion d’intérêt par rapport aux attentes de l’utilisateur. Nous détaillerons les mesures
encodées graphiquement dans notre métaphore 3D. Le choix du SGBD est libre mais doit
supporter de gros volumes de données et les traitements relatifs à l’extraction des règles. Le
client de visualisation est réalisé par un programme développé en C/C++ et s’appuie sur les
couches graphiques d’OpenGL3.
J’ai effectué ce stage au sein de l’équipe Connaissances et Décisions (COD) de l’UMR (Unité
Mixte de Recherche) 6241 du CNRS dans les locaux de l’école Polytech Nantes. Le
laboratoire est spécialisé dans les sciences et technologies du logiciel». Il est composé de dix
équipes de recherche réparties sur deux thèmes principaux qui sont les architectures
distribuées et les systèmes d’aide à la décision. Les encadrants sont Fabrice Guillet (maître de
conférences, Ecole Polytechnique de l'université de Nantes), Julien Blanchard (maître de
conférences, Ecole polytechnique de l'université de Nantes) et Zohra Ben Saïd (doctorant).
3
OpenGL (Open Graphics Library) spécification d’API (Application Programming Interface) multi-plateforme
pour la conception d'applications générant des images 3D ou 2D.
9
1.5 Organisation
Le chapitre 2 présente un état de l’art des domaines qui concernent le projet. Il présente d’une
façon générale le processus d’extraction de connaissance. Nous évoquerons ensuite les
différentes solutions existantes en visualisation de l’information et leurs applications à la
représentation de l’information en ECD.
Le chapitre 5 ouvre des perspectives tant théoriques que techniques et évoque les nombreux
chemins qui restent à explorer...
10
Conservatoire National des Arts et Métiers
Centre régional associé des pays de la Loire
Chapitre 2
Etat de l’art
2.1.1 Enjeux
L’émergence des techniques d’Extraction de la Connaissance dans les Données (ECD) est le
résultat de l’accroissement de la taille des bases de données. Les données traitées par jour
dépassent le milliard4 avec une puissance de calcul toujours plus importante (loi de Moore5).
Les entreprises dans un contexte de concurrence accrue qui stockent sur supports
informatiques des données informationnelles sur leur client se sont donc rapidement
intéressées aux outils utilisés en ECD.
L’une des premières applications des règles d’association fut l’étude du panier de la ménagère
dans le domaine de la grande distribution. La recherche de règles d’association est une
méthode pour extraire de la connaissance dans les données. Elle consiste à mettre en évidence
des combinaisons de produits achetés ensemble dans un supermarché. D’un point de vue
marketing, ces règles détectent les comportements et les besoins nouveaux du consommateur.
Les jeux de données constitués par les enregistrements des tickets de caisses dissimulent à cet
effet des informations utiles sur ses attitudes et les nouvelles tendances, qu’elles soient
générales, ou particulières.
4
http://cpa.enset-media.ac.ma/datamining.htm.
5
La loi de Moore annonçait en 1965 que la puissance des processeurs doublerait tous les ans pour un même coût.
Elle s’est révélé jusqu’ici étonnamment exact et devrait en principe le rester jusqu’en 2015 avant de se
confronter réellement aux effets quantiques (bruits parasites).
11
La connaissance découverte au travers des règles permet aux experts de piloter les actions
commerciales ou d’approfondir plus encore l’analyse comportementale du consommateur.
L’exemple le plus connu et que l’on trouve le plus souvent dans la littérature énonce qu’il y
aurait eu la mise en évidence par les magasins Wal-Mart6, dont l’enseigne est née dans les
années 1960 aux Etats-Unis, d’une corrélation très forte entre l’achat de couches pour bébés et
de bières le samedi après-midi. Suite à cette information difficile à deviner intuitivement mais
bien réelle, l’aménagement des rayons est redéfini en concluant que les couches pour bébés,
achat lourd et encombrant sont achetées principalement par les hommes qui en profitent pour
s’approvisionner en bière. Dans les années 1990, les revenus de cette entreprise ont
quadruplé. Pour la première fois, ils ont atteint la somme de 1 milliard de dollars de chiffre
d’affaires en une semaine.
Depuis l’étude du panier de la ménagère, l’ECD trouve chaque jour des applications plus
nombreuses pour les secteurs économiques et financiers ou scientifiques et industriels, secteur
social, etc. Les secteurs d’activité qui analysent les plus gros volumes de données sont les plus
concernés. Trouver dans ces volumes des informations inconnues jusqu’alors dans le but de
prédire des comportements ou des événements particuliers n’est pas totalement nouveau, et
reste l’objectif de base en ECD.
La fouille de données est une phase importante qui fait partie du processus ECD. Les
techniques utilisées dans cette phase (réseaux de neurones7, réseaux bayésiens8, les arbres de
décisions, les règles d’association, etc.), distinguent l’ECD de l’analyse de données issue des
champs de recherche mathématiques et statistiques. L’ECD se trouve au carrefour de
nombreuses disciplines comme l’apprentissage automatiques, la reconnaissance de formes, les
bases de données, les statistiques, la représentation de la connaissance, l’intelligence
artificielle, les systèmes experts, etc.
Statistiques
Base de Intelligence
données artificielle
automatiqu
e
Apprentissage Représentation
automatique ECD de connaissances
Systèmes Reconnaissances
experts de formes
Autres
domaines
6
http ://www.zdnet.fr/blogs/2005/11/27/datamining/
7
Les objets sont affectés séquentiellement à des groupes en fonction de leur proximité et le processus
d’apprentissage est incrémental.
8
Les réseaux bayésiens sont des modèles probabilistes graphiques permettant d’acquérir, de capitaliser et
d’exploiter des connaissances.
12
2.1.2 Déroulement général d’une fouille de données
Le processus ECD est généralement découpé en trois phases principales identifiant les
actions à effectuer :
- le prétraitement,
- la fouille de données,
- le post traitement.
Interpretation / Evaluation
Transformation
Preprocessing
Patterns
Selection
i1 … in
o1 x x x
… x x
on x Transformed
data
Preprocessed data
Fouille
de
Target data Prétraitement données Post traitement
Data
1. Le prétraitement :
13
2. La fouille de données :
3. Le post traitement
Notre étude porte sur la phase de post-traitement et traite plus particulièrement une
problématique en fouille de données.
2.1.3 Vue d’ensemble des techniques d’extraction
Les techniques d’Extraction de Connaissances dans les Données sont séparées en deux
classes, ALESSANDRI M. (2010) :
14
réseaux bayésiens, les réseaux de neurones et certaines techniques
statistiques.
Nous observons dans cette répartition, que les réseaux de neurones appartiennent aux deux
classes. En effet et suivant les cas d’utilisation, la nature de ces techniques d’extraction peut
être supervisée ou non. Il est nécessaire par exemple pour la recherche de règles d’association
classée parmi les techniques non supervisées, d’utiliser des variables cibles, correspondant à
des seuils appliqués aux mesures d’intérêt qui décrivent les règles. Les résultats obtenus sont
alors conditionnés par le choix de ces variables. Une autre méthode existante pour l’extraction
de règles génère par essence une arborescence dans le processus de recherche (algorithme
Charm [Zaki et Hsiao, 2002]). Cette méthode peut donc s’apparenter aux arbres de décision
qui eux sont classés dans les techniques supervisées.
Soit I = {i1, i2, … in} un ensemble d’attributs distincts de la base. T = {t1, t2, t3} un ensemble
de transactions, une transaction étant un sous-ensemble d’items de I tel que T ⊆ I.
Un sous-ensemble X = {i1, i2, i3} non vide de T est appelé itemsets. Nous le notons I.
La longueur de I spécifiée par la valeur de k, correspond au nombre d’items contenus dans X,
on le note : k-itemsets. Une règle d’association est un 2-uplet (X, Y) itemsets de T représentant
une implication de la forme X → Y avec X ⊂ I, Y ⊂ I et telle que X ∩ Y = Ø.
Une règle d’association s’exprime généralement par : si (x1, x2 … xn) alors (y1, y2 … yn). Dans
chaque partie de la règle (droite et gauche) se trouve une conjonction d’items au sens logique.
La partie gauche {X} est appelée prémisse ou condition de la règle et la partie droite {Y}, la
conclusion.
15
BLANCHARD dit que ces règles signifient que si un enregistrement de la table d’une base de
données vérifie la prémisse, alors il vérifie probablement la conclusion. La conclusion est en
revanche complètement vérifiée pour une valeur de la mesure de confiance à 100%.
Par exemple (A, C, D, E) n’est pas un ensemble d’items fréquents puisque l’ensemble (C, D,
E) ∉ S. En revanche (A, B, C, D) ∈ S, cet ensemble d’items est donc fréquent. La propriété de
fréquence des ensembles d’items permet de construire facilement les itemsets de façon
incrémentale. Cependant nous avons vu que la taille de l’espace de recherche formée par les
règles extraites croit de façon exponentielle en fonction du nombre d’attributs (items) qui
décrivent les données. Effectivement, avec un seul ensemble de « p » items on peut construire
2p-1 itemsets fréquents. Par conséquent, à partir de l’itemset {A, B, C}, six règles
d’association potentiellement utiles apparaissent (TAB.1).
Prémisse Conclusion
A B, C
B A, C
C A, B
A, B C
A, C B
B, C A
16
Afin de limiter l’espace de recherche dans les données, plusieurs solutions d’élagage et de
classement ont été étudiées. Le but étant de d’éliminer les règles redondantes ou triviales et ne
conserver que celles présentant un intérêt pour l’expert. Les indicateurs de qualité les plus
connus pour « filtrer » les règles, sont le support et la confiance. Ces mesures sont basées sur
la propriété de fréquence des itemsets. L’extraction des règles à l’aide de ce couple d’indices
est généralement associée à des seuils de validité.
Si un itemset fréquent dont la valeur que procure son support est supérieur à un seuil de support
minimal minsup, il sera qualifié de candidat. Les seuils de support et de confiance seront notés σsp
et σcf. Un itemset est dit maximal s’il n’est un sous-ensemble d’aucun autre itemset. Il est dit
fermé s’il n’existe aucun autre itemset qui le contienne et dont le support est supérieur ou égal à
minisup (∄Y / X ⊂ Y et σ Y ≥ σ X). Nous noterons également nA la cardinalité d’un ensemble A.
17
Nous détaillons les deux règles R1 et R2 suivantes et le calcul de leurs indices respectifs de
support et de confiance :
- R1 : {jaune} → {bleu}
L’attribution de seuils (minsup, minconf) à ces deux indices de qualité limite l’explosion
combinatoire des itemsets fréquents et donc du nombre de règles. Ces mesures « historiques »
possèdent des vertus algorithmiques accélératrices et se retrouvent dans la plupart des
algorithmes d’extraction.
Une fois encore dans la pratique, le volume de règles en sortie des algorithmes reste élevé et
prohibitif. De nombreuses règles sont redondantes ou sans intérêt. Définir les seuils pour les
mesures de qualité reste discutable. En effet, un seuil élevé pour l’indice de support peut
entrainer la discrimination de règles qui potentiellement pourraient représenter de la
connaissance pour l’expert. En terme de connaissance, même un événement rare peut requérir
de l’importance.
Lorsqu’elles sont associées à des seuils de qualité, ces mesures limitent une partie des règles
qui ne correspondent pas au contexte de l’analyse. Elles sont classées suivant deux catégories
en fonction de leur orientation : les mesures subjectives (orientées utilisateur) et les mesures
objectives (orientées données).
18
2.3.2 Mesures d’intérêt objectives
TAN et al. (2004) montrent que les mesures objectives tiennent compte de la structure des
données et plus particulièrement des effectifs liés à la contingence des données. Ces mesures
sont en générale de nature statistique et adaptées à la distribution des données, ALESSANDRI
(2010).
Pour les présenter, nous allons considérer les attributs présents dans une règle r de la forme
A→ B. Ces valeurs sont déterminées par la table de contingence de r (FIG.5).
De nombreux articles comparent l’intérêt de ces indices. TAN et al. (2004) en présentent
vingt et un (TAB.2). La comparaison se base sur deux types de critères :
- Des critères expérimentaux, qui consistent à appliquer ces indices sur des jeux de tests,
éventuellement en utilisant des outils informatiques de comparaison de règles
(ARVAL11).
11
ARVAL est un logiciel libre d’extraction de règles d’association. Il est particulièrement dédié au post-
traitement et s’appuie sur des mesures objectives
19
TAB.2 - Mesures objectives de règles d’association [Tan et al., 2004]
- P2 : MA→B croit de façon monotone avec P (A, B) quand P(A) et P(B) ne varient pas,
20
TAN et al. (2004) définissent cinq propriétés basées sur la table de contingence de r (FIG.5) :
- O2 : invariance (M reste identique) vis à vis des changements d’échelle sur chaque
rang ou colonne,
- La propriété O3 indique que MA→B = - MA→ = - M→B .Cette propriété signifie que la
mesure peut identifier des corrélations tant positives que négatives.
TAN et al. (2004) présentent un échantillon sur une population d’étudiants où la proportion
d’hommes et de femmes par niveau de diplôme obtenu est identique mais où les distributions
hommes/femmes sont différentes. L’indice GINI par exemple, fournit sur cet échantillon des
résultats divergents, ALESSANDRI (2010).
21
La propriété d’invariance O2 pour les changements d’échelle sur un rang ou sur une colonne
n’est donc pas vérifiée et des indices réciproques qui pourraient satisfaire cette propriété
peuvent se révéler inappropriés pour d’autres circonstances.
Finalement, la comparaison des indicateurs fait apparaître qu’aucun d’entre eux ne respectent
l’ensemble des critères proposés. Il est alors nécessaire de sélectionner l’un ou l’autre, en
fonction des résultats attendus et des conditions de la mesure. Cependant, choisir une mesure
par rapport à une autre dans le but de découvrir de la connaissance, prend un caractère de
recherche empirique. En effet, le choix retenu influe directement sur le jeu de règles
découvertes et l’information produite par l’utilisation d’une mesure peut être contredite par
l’information d’une mesure différente qui serait fournie.
Pour les critères expérimentaux, TAN et al. (2004) applique un panel de vingt et un
indicateurs à dix tables de contingence (notées d’E1 à E10). Ces tables vérifient la conformité
des analyses théoriques puisque sur une même table, les résultats fournis par les indices
divergent (ALESSANDRI (2010).
BLANCHARD et al., (2005) proposent une autre classification différente en montrant que la
qualité objective des règles peut être évaluée suivant deux mesures supplémentaires : une
mesure de déviation par rapport à l’indépendance et une mesure de déviation par rapport à
l’équilibre (TAB.3).
Ces mesures correspondent à des écarts existants entre les nombres d’exemples et de contre-
exemples. BLANCHARD dit que l’écart à l’équilibre est un constat absolu alors que l’écart à
l’indépendance est une comparaison relative à une situation attendue (caractérisé par nb).
- L’écart à l’équilibre est donné quand les exemples et les contre-exemples sont à
l’équilibre (nab = na ),
22
TAB.3 - Classification des mesures d’intérêt objectives BLANCHARD et al., (2005)
Cette classification fait apparaître que les mesures d’écart à l’indépendance et les mesures
d’écart à l’équilibre sont complémentaires. Ces deux mesures tiennent compte de
l’interprétation individuelle de la notion de règles contrairement aux sens logique de
l’implication existante entre la prémisse et la conclusion. Une règle d’association offre alors
une lecture ouverte. BLANCHARD (2005) montre que la règle (A → B) peut être lue comme
une description où les deux affirmations sont liées et se produisent généralement ensemble.
On peut donc faire le choix d’ignorer les cas pour lesquels A = 0 et B = 0 ou au contraire
(dans la causalité : fumer → cancer), de les considérer comme des exemples. On privilégiera
l’écart à l’équilibre dans le premier cas. Pour le deuxième cas on s’intéressera plus
particulièrement à la différence de probabilité d’apparition de la conclusion par rapport à la
présence ou non de la prémisse. Ce dernier cas relève alors d’une mesure d’écart à
l’indépendance.
Le Lift
Le lift est une mesure d’écart à l’indépendance, cet indice donne une évaluation de la
dépendance existante entre la prémisse et la conclusion. Un lift de faible valeur signifie que
les items ne sont que faiblement corrélés entre eux. Plus la valeur du lift sera élevée et plus les
items seront corrélés. Le lift est donné par la formule suivante :
Le gain informationnel
Le gain informationnel est une mesure basée sur la théorie de l’information. La théorie de
l’information de Shannon est une théorie probabiliste qui vise à quantifier la notion de
contenu en information. En fonction de l’ensemble de données, l’information présente un
caractère essentiellement aléatoire, un événement aléatoire est par définition, incertain. Une
mesure clé de cette incertitude est connue sous le nom d’entropie. Intuitivement, l’entropie
23
quantifie l’incertitude de la valeur pouvant être prise lorsque nous sommes en présence d’une
variable aléatoire. Objectivement, plus un événement est incertain et plus sa réalisation
apporte de l’information mais aussi, plus cet événement est incertain et plus sa prédiction
nécessite de l’information.
Pour une règle de la forme (A→ B), le gain informationnel que donne un attribut de A à
l’égard d’un attribut de la classe de B est la réduction de l’incertitude sur la valeur de B, I (B,
A). L’incertitude sur la valeur de B est mesurée par l’entropie H (B). L’incertitude sur la
valeur de B lorsque la valeur de A est donnée par l’entropie conditionnelle de B est notée
H(B|A). Le gain informationnel pour une telle règle s’exprime alors par :
La sélection de règles d’association par des moyens statistiques ou structurels se heurte à deux
problèmes principaux :
- L’élimination de règles intéressantes par des critères trop restrictifs, en particulier dans
le choix de la valeur du seuil pour le support.
La découverte de règles intéressantes peut être induite par l’expertise de l’utilisateur. Cette
notion fait l’objet des mesures subjectives. Elles offrent par des méthodes supervisées, des
moyens d’introduire dans le processus de fouille de données, les savoirs et les
questionnements des utilisateurs ALESSANDRI M., (2010).
LIU et al, (1997) proposent deux critères subjectifs, le premier s’appuie sur le caractère
inattendu d’une règle (unexpectedness), le second sur son actionnabilité (actionability).
- L’actionnabilité évalue l’aptitude d’une règle à être applicative pour une action précise
et utile. La notion d’actionnabilité est utilisée plus particulièrement dans le cadre
d’actions commerciales ou encore pour capitaliser les données d’un processus en
termes de performances ou de qualité mais ne rentre pas dans le cadre de cette étude.
LIU et al, (1997) fournissent également des outils qui permettent d’exploiter ces deux critères
par un langage de description sur les impressions générales de l’expert. Ce langage est associé
à une méthode algorithmique pour classer les règles découvertes suivant des critères
conforment aux impressions générales :
24
2.4 Algorithmes d’extraction
2.4.1 Algorithmes exhaustifs
Ces algorithmes effectuent tous la même tâche déterministe. BLANCHARD (2005) dit qu’à
partir d’un seuil minimal de support et un seuil minimal de confiance, ils produisent un
ensemble exhaustif de toutes les règles qui possèdent des indices de support et de confiance
supérieurs aux seuils. A partir des itemsets et de leur propriété de fréquence (anti-monotonie
du support), l’extraction des règles d’association s’organise alors autour de deux processus.
Le premier consiste à trouver tous les itemsets fréquents candidats au seuil σsp, le second à
partir de ces itemsets, de générer toutes les règles d’association valides au seuil σcf. Cette
méthode est mise en œuvre par les algorithmes de type « Apriori » qui sont des références
incontournables pour l’extraction de règles d’association. Nous ferons donc à ce titre, le détail
des deux processus qu’ils mettent en œuvre. Nous détaillerons également l’algorithme
CHARM qui effectue une recherche des itemsets fermés, une alternative intéressante pour
faire face au volume de règles d’association extraites.
Algorithme Apriori.
25
Entrées : BD : base de données,
σsp : seuil de support minima,
Sortie : L, ensemble de couples (I, sp (I)) où I est un itemset et sp(I) son
support.
L1 = {fréquent 1-ensemble}
Calculer L1
1. k ←2
2. tant que Lk-1 ≠ Ø faire
3. Ck ← apriori_ gen (Lk-1) ; // Elagage de Ck
4. tant que t ∈ T faire
5. Ct = sous-ensemble (Ck ; t) ;
6. tant que c ∈ Ct faire
7. c.count++ ;
8. fin de tant que
9. fin de tant que
10. Lk ← {c ∈ Ck | c.count ≥ σsp} // Les candidats sont filtrés
11. k ← k+1
12. fin de tant que
13. L = ∪k Lk
14. retourne L
TAB.4 - Extraction des itemsets fréquents dans Apriori
OID itemsets
100 1, 3, 4
200 2, 3, 5
300 1, 2, 3, 5
400 2, 5
Les données de notre modèle (TAB.5) sont présentées en entrée de l’algorithme d’extraction.
Nous détaillons (TAB.6) la méthode pour extraire les itemsets fréquents. L’algorithme procède
à un élagage successif des itemsets de l’ensemble Ck qui ne vérifient pas la propriété de
fréquence Lk-1. Les itemsets fréquents (partie droite) sont présentés en entrée de l’algorithme
pour la validation des règles.
26
Ck
itemsets support
{1, 2} 1 itemsets support
{1, 3} 2 {1, 3} 2
{1, 5} 1 {2, 3} 2
{2, 3} 2 {2, 5} 3
{2, 5} 3 {3, 5} 2
{3, 5} 2
itemsets support
{2, 3, 5} 2
itemsets support
{2, 3, 5} 2
A partir d’un itemset fréquent I, l’algorithme construit toutes les règles de la forme x → y où x
et y, sont deux sous-itemsets de I qui ne possèdent pas d’items en commun et qui redonnent I
par conjonction : x ^ y = I, BLANCHARD J., (2005). La confiance d’une telle règle est
calculée de la manière suivante :
Conf (x → y) =
27
Entrées : Lk, ensembles d’itemsets I fréquents
σcf, seuil de confiance (conf) minima,
Sortie : R, ensemble de régles d’association
R=Ø
1. k ←2
2. tant que Lk-1 ≠ Ø faire
3. tant que sous-ensemble S ≠ Ø de Lk faire
4. conf (S → Lk - S) = sp (I) / sp ( S )
5. si conf ≥ σcf
6. r = S → (Lk - S)
7. R = R ∪ {r}
8. fin de si
9. fin de tant que
10. k ← k+1
11. fin de tant que
12. retourne R
Au final, l’algorithme fournit l’ensemble des itemsets fréquents et les règles validées par le
seuil de confiance. L’indice de support pour chaque itemset est conservé et sera utilisé pour le
calcul des différentes mesures d’intérêt qui enrichissent les règles extraites.
Zaki et al, (2002) utilise une structure arborescente mixte basée sur la correspondance de
Galois pour rechercher de façon efficace et exhaustive l’ensemble des itemsets fermés.
L’originalité de cet algorithme réside dans le fait qu’il privilégie l’exploration en profondeur
dans l’espace de recherche contrairement à Apriori qui est un algorithme de parcours en
largeur. L’idée étant d’exploiter la maximalité d’un itemset fermé.
Nous avons vu § 2.2.3 qu’un itemset fermé dans un ensemble d’objets, n’est pas inclut dans
un autre itemset. L’algorithme CHARM explore donc simultanément l’espace de recherche
des itemsets et celui des identificateurs des transactions notés tidsets fermés dans une structure
appelée IT-tree. Cette méthode de recherche hybride évite l’exploration des nœuds inutiles. Sa
représentation verticale appelée difset améliore l’efficacité des calculs. Le fonctionnement de
l’algorithme CHARM est décrit par la trace (FIG.6) que nous détaillons ci-dessous.
Le symbole ( ≠ ) indique une non inclusion ( ) et [X] est une liste des fils de l’itemset X.
o Recherche de [A] : on prend le premier élément, A x 135 que l’on combine aux
éléments du père ici [Ø] soit {A B C E} :
28
- ACE x 35 comme e(AC) ≠ e(E) alors ACE x 35 est ajouté à AC
- [AC] = {AB x 35, ACE x 35}
- AB x 35 avec ACE x 35, comme e(AB) = e(ACE) alors AB est remplacé par ABCE.
o Recherche de [B]
Les algorithmes à contraintes sont pour la plupart des généralisations d’Apriori. L’étape de
génération de règles reste identique aux algorithmes exhaustifs. Cet algorithme différent par
rapport à Apriori, dans le sens où ils sont optimisés pour une classe de contraintes.
Les deux classes principales sont les contraintes anti-monotones et monotones. Nous avons
déjà présenté une application de la propriété d’anti-monotonie du support sur les itemsets
fréquents (voir § 2.2.2). Les contraintes monotones sont exploitées lors de la génération des
itemsets candidats. Cependant, afin d’éviter de diminuer l’efficacité de l'élagage réalisé par les
contraintes d’anti-monotonie, l’utilisation des contraintes monotones nécessite de disposer de
fonctions syntaxiques qui ne sont pas toujours disponibles pour l’énumération et la génération
des itemsets. L’utilisation la plus efficace des contraintes monotones dans un processus
d’extraction se trouve être à la phase de post-traitement de règles, c'est-à-dire, après
l’extraction des itemsets BLANCHARD, (2005).
29
2.5 Post-traitement en ECD
En sortie des algorithmes d’extraction, les ensembles de règles d’association sont de simples
listes textuelles. Chaque règle est constituée d’une conjonction d’items pour la prémisse et
d’une conjonction d’items pour la conclusion. Les indices de qualité tels que le support et la
confiance sont les plus utilisés. Pour faire face aux volumes de règles en phase de post
traitement, trois voies ont été explorées. La première consiste par exemple, à utiliser une
métrique spécifique pour filtrer et hiérarchiser les règles extraites ou encore de progresser par
étapes successifs par le biais de différents résumés de règles. L’utilisateur converge alors vers
les règles qui l’intéressent, en ajustant les seuils des mesures de qualité ou en spécifiant des
contraintes. Nous avons vu § 2.2.7, qu’un filtrage restrictif sur l’indice de support écarte les
règles peu fréquentes et ces règles peuvent néanmoins comportées de l’information
intéressante. Une deuxième approche vise à assister l’utilisateur dans son exploration en lui
proposant des outils interactifs (navigateurs de règles, langages de requêtes). Enfin, une
troisième méthode, consiste à offrir des moyens de représentation graphiques pour visualiser
les ensembles de règles, plutôt que de les considérer sous forme textuelle. La visualisation
graphique fait appel à des considérations ergonomiques sur la perception humaine. BEN-
SAID et al, (2010) disent que l’œil humain est capable d’analyser rapidement et de façon
synthétique son environnement pour y reconnaitre des informations d’un intérêt particulier ou
des irrégularités. Notre étude portera donc sur la représentation graphique de l’information et
nous mettrons en œuvre les technologies 3D pour la visualisation des règles d’association.
Plusieurs outils interactifs sous forme de listes textuelles ont été développés pour assister
l’utilisateur dans la fouille de règles. LIU et al, présentent une méthode d’interaction à l’aide
d’outils agissant sur les seuils des mesures de qualité et en exploitant les connaissances a
priori de l’expert. Celui-ci exprime alors les relations potentielles dans les données et leur
degré de précision. Dans Ma et al., (2000) l’utilisateur explore un résumé de l’ensemble des
règles extraites. A partir des éléments sélectionnés dans ce résumé, l’utilisateur peut accéder
aux règles correspondantes dans l’ensemble des données d’origine.
30
FULE et al, (2004) proposent un outil d’exploration textuelle de règles appelé IRSetNav
(FIG.7). Il est doté de nombreuses fonctionnalités et filtre les règles par des contraintes
syntaxiques plus ou moins générales en prenant en compte une taxonomie12 des items. L’outil
dispose de fonctionnalités pour programmer les indices de qualité, trier et filtrer les règles.
Nous retiendrons que le mode de représentation textuel implémenté par ces outils ne convient
pas à l’exploration des règles d’association. Devant les volumes importants, l’interprétation
des règles reste impossible. D’une façon générale ces outils sont donc inadaptés à la phase de
post traitement d’un processus ECD.
IMIELINSKI et MANNILA (1996) se penchent sur les langages de requêtes qui introduisent
le concept de bases de données inductives. L’idée étant d’enrichir les Systèmes de Gestion de
base de données en développant un langage de requêtes particulier pour la fouille de données.
C'est-à-dire une généralisation de SQL qui permettrait de manipuler les données mais
également et directement les connaissances extraites. Pour ce projet ambitieux de nombreux
défis restent à relever puisqu’il est difficile, d’optimiser l’extraction des règles d’association
pour des contraintes qui par essence, ne sont pas connues à l’avance.
FAYYAD et al., (2001) disent que la visualisation peut être bénéfique à l’ECD. CARD et al.,
(1999) et POLENCO (2002) montrent que la visualisation est un moyen efficace d’introduire
la subjectivité de l’utilisateur dans chaque étape du processus tout en amplifiant la
cognition13. C'est-à-dire réduire le travail cognitif de l’utilisateur mais nécessaire pour
accomplir certaines tâches. SILBERCSHATZ et TURKHILIN, (1996) disent que le processus
ECD est hautement itératif et interactif, il requière donc l’implication de ce dernier. La
visualisation est utilisée soit en tant que méthode d’extraction de données et dans ce cas nous
parlons le plus souvent de visual data mining, soit en collaboration avec des algorithmes de
fouille de règles ou celle-ci sont validées par l’expert dans cette phase de post traitement.
L’approche fait intervenir la notion d’interaction associée à une stratégie de navigation dans
un environnement complexe. L’utilisateur adopte alors une démarche empirique vers un but
précis par le butinage, qui correspond à un besoin initialement mal exprimé. Il décide alors
d’arrêter la procédure, lorsqu’il a obtenu satisfaction. AGGARWAL (2002) montre que ces
algorithmes facilitent et accélèrent l’analyse des données, l’obtention des résultats
intermédiaires et in fine l’extraction de la connaissance. Le système est construit de telle sorte
que l’utilisateur puisse sélectionner lui-même des itemsets particuliers ainsi que les
contraintes pour l’algorithme d’extraction. KUNTZ et, al (2006) posent un cadre
méthodologique pour ce type d’approche.
12
La taxonomie est la science des classifications
13
La cognition regroupe les divers processus mentaux allant de l’analyse perceptive à l’appropriation dans des
schémas et des concepts, par lesquels nous construisons une représentation aléatoire de la réalité à partir de nos
perceptions, susceptible en particulier de nourrir nos raisonnements.
31
1. Caractéristiques de l’environnement, extraction des propriétés et opérations
pertinentes,
1. Représentation matricielle.
La techniques est améliorée par WRONG et al., (1999) qui proposent une matrice item-règles
(FIG.9) permettant de gagner de l’espace et d’augmenter l’intelligibilité de la représentation
par un encombrement plus faible de la matrice. La méthode impose cependant à l’utilisateur
de faire lui-même la correspondance entre les règles et les mesures de qualité, en suivant la
perspective.
14
Acronyme pour Large Association Rules Mining développé dans (Couturier et al., 2005c).
32
FIG.9 - Une matrice item-règles
Une autre méthode de visualisation se présente sous forme d’un graphe orienté (FIG.10-a). Les
nœuds et les arcs représentent respectivement les items et les règles. Les mesures de qualité
sont encodées graphiquement par l’épaisseur ou la couleur de l’arc reliant les nœuds.
Pour des grands ensembles de règles, le graphe se surcharge rapidement de nœuds et d’arcs
qui se croisent. Une solution dans LEHN., (2000) propose une représentation dynamique sous
la forme d’un sous-graphe du treillis des itemsets (FIG.10-b). Les items représentés par les
nœuds sont remplacés par d’autres itemsets de telle sorte qu’une règle de la forme : (A, B) →
(C) est symbolisée par un arc entre les nœuds (A, B) et (A, B, C). L’utilisateur développe alors
le graphe à sa guise en interagissant avec les nœuds. Le résultat est un graphe acyclique qui
comporte plus de nœuds et moins de croisements d’arcs.
(a) (b)
33
3. Comparaison des représentations matricielles et par graphes
Dans le mode de représentation matricielle, la matrice est rapidement limitée par le nombre de
règles. L’amélioration apportée par une matrice items-règles demande à l’utilisateur des
efforts mentaux et visuels qui croissent avec le nombre de règles et par son importance en
diminue l’efficacité. La représentation par graphe a le mérite d’être plus intuitive mais admet
deux principales limites :
1. l’usage du graphe fait implicitement apparaître les règles comme des relations
transitives, une propriété qui ne s’applique pas aux règles d’association.
2. pour les indices, les mesures de qualité ne se propagent pas par transitivité
BLANCHARD (2005).
(a) (b)
(c) (d)
15
Enterprise Miner. www.sas.com/technologies/analytics/datamining/miner/
16
Intelligent Miner Visualization. www-3.ibm.com/software/data/iminer/visualization/ index.html
34
Les méthodes de représentation par graphes ou matricielles sont implémentées dans de
nombreuses applications (FIG.11). Ces méthodes s’avèrent rapidement limitées devant les
volumes importants de données qu’il est fréquent de traiter en ECD. Nous allons donc
présenter les techniques utilisées en visualisation d’information dans un sens plus générale et
définir ensuite un cadre d’étude applicatif à l’ECD en se basant sur les technologies
graphiques les plus innovantes.
Le modèle générique présenté dans CARD et al, (1999) est une suite de traitements interactifs
pour passer des données en entrée à la visualisation en sortie (FIG.12). Les données d’entrée
sont des ensembles d’entités décrites par les variables. Elles sont transformées puis encodées
graphiquement. L’utilisateur conserve après encodage graphique des données, la possibilité
d’effectuer de nouvelles transformations directement sur les vues.
35
Données Formes Cognition
visuelles
3. Les transformations sur les vues concernent la présentation des objets graphiques. La
vue est soit en 2D, soit en 3D ou repose sur la métaphore du paysage d’informations
dans un environnement virtuel interactif (FIG.13). Les techniques d’interaction les plus
courantes affectent soit le contrôle du point de vue de façon exocentrique19 ou
egocentrique20, soit utilisent des vues multiples (overview + details) ou intègrent les
détails dans la vue globale (focus + context). Une technique classique de focus +
context consiste à limiter graphiquement les détails d’une zone par effet de distorsion
de l’image (FIG.14).
17
Système de sélection visuel et interactif pour représenter des variables qualitatives.
18
Un slider est un composant d'interface graphique permettant d'entrer une valeur numérique dans un programme
en déplaçant un curseur sur une échelle graduée. Ce principe est utilisé en visualisation pour représenter des
variables quantitatives.
19
Le point de vue est fixe, la représentation subit des transformations (rotation, translation ou zoom)
20
La représentation est fixe, le point de vue se déplace autour de la représentation.
36
FIG.13 - Paysage d’informations, BLANCHARD (2005)
Les techniques peuvent être combinées comme par exemple le zoom sémantique qui
transforme la vue et change les données suivant le niveau de détail demandé. La méthodologie
présentée dans ce rapport s’efforce de parcourir le modèle sur ces trois composantes.
37
2.6.2 Sémiologie
La sémiologie21 est la science des signes, le terme figure au Littré22 pour définir en médecine,
l’étude des symptômes présentés par les patients. Il fut repris et élargi pour l’étude des signes
au sein de la vie sociale. Aujourd’hui, nous considérons que toute science qui étudie les signes
est une sémiologie. Le terme est alors utilisé dans plusieurs disciplines. En représentation
graphique, le géographe Jacques Bertin (1918-2010) est le premier à étudier un système de
signes pour répondre aux besoins de la cartographie. Sa théorie, la sémiologie graphique
[Bertin, 1967] énonce que le lecteur d’une carte perçoit six variations sensibles attachées aux
symboles qui y figurent (FIG.15). Il les appelle variables visuelles ou « composantes du
système d’expression ». Ces variables graphiques sont la position, la taille, la luminosité
(valeur), la couleur, la texture (grain), l’orientation, et la forme.
Nous noterons que la position est la variable rétinienne prédominante dans une représentation
graphique BERTIN (1967), CARD et al, (1999).
Précisons que les modes de représentation graphiques en 2D ou en 3D ne font pas appel aux
mêmes mécanismes cérébraux. Les représentations 2D n’induisent pas la même perception
sur les données qu’en 3D et sont plus faciles à appréhender. Il est important de considérer
cette différence afin de définir clairement l’objectif à atteindre et l’utilisation souhaitée pour
faire le choix d’un mode de représentation le plus appropriée. La composante supplémentaire
en 3D apporte, certes, une profondeur à l’infini et ouvre un champ de représentation beaucoup
plus spacieux qu’en 2D limitée par la taille de l’écran. Cependant, il est difficile de se repérer
dans une représentation 3D.
21
Dictionnaire de Médecine, 1855. Partie de la médecine qui traite des signes des maladies.
22
Dictionnaire normatif de la langue française du nom de son principal auteur Émile Littré (1801-1881)
23
http://www.knowledge-mapping.net/
38
La perception de la profondeur n’est pas triviale, c'est-à-dire que la taille perçue des objets
dépend étroitement de la position de ceux-ci et suivant la profondeur à laquelle ils se trouvent
dans la scène. Notons également que le risque d’occultation entre les objets est une contrainte
supplémentaire dans une représentation 3D. Néanmoins, les objets représentés en 3D
admettent un nombre de caractéristiques graphiques supérieurs à la 2D et peuvent donc
traduire un plus grand nombre d’informations. De plus, la navigation dans une scène 3D est
intuitive. D’après WEGMAN et al, (2002), l’utilisation de systèmes de visualisation
immersifs en réalité virtuelle comme un visiocube ou un visiocasque accentuent encore
davantage le caractère pseudo-naturel de la navigation pour l’utilisateur. Le couplage des
techniques de fouilles de données aux techniques de réalité virtuelle est un axe de recherche
intéressant en visualisation de l’information.
La réalité virtuelle (RV) est une simulation informatique interactive, immersive, visuelle,
sonore et/ou haptique, d’environnements réels ou imaginaires. D’après FUCHS et al, (2001)
la réalité virtuelle permet à l’utilisateur de s’extraire virtuellement du monde réel pour
changer de temps, de lieu, et d’interaction. En se basant sur le concept de relation
multidimensionnelle entre hommes et machines, la réalité virtuelle revêt déjà un agglomérat
d’avantages. Elle donne l’accent à l’expérimentation. Elle est anticipatrice, globalisante et
éveillante. Nous retiendrons de la littérature deux mots clés importants qui définissent les
concepts de réalité virtuelle :
- l’immersion,
- l’interaction.
Son objectif est de rendre la machine transparente à l’utilisateur et de lui donner l’impression
d’interagir avec l’application. Nous parlons alors de relation homme-application. L’utilisateur
est en immersion pseudo-naturelle, c'est-à-dire qu’il agit sur le monde virtuel de la même
façon qu’il agirait sur le monde réel. Mais cette notion est liée aux attentes des utilisateurs
potentiels, compte tenu des moyens à mettre en œuvre pour simuler le plus fidèlement
possible les actions du monde réel (pilotage d’un avion, acte chirurgical, etc.).
39
La RV trouve néanmoins des applications dans les domaines ou l’erreur n’est pas admise. En
médecine on trouve sur Medline 24plus de deux cents publications qui traitent de la RV
appliquée à la chirurgie (scalpels intelligents à retour haptique, caméra tridimensionnelle,
etc.). Une innovation récente propose un poignet artificiel et pourrait bien transformer le
chirurgien de demain par ses performances supérieures à l’humain. Dans ce domaine, la
réalité virtuelle est « dopée » par la réalité augmentée qui vise à compléter notre perception du
monde réel. Notre étude ne rentre pas ce cadre.
Dans l’industrie, les constructeurs en automobile, aérospatial ou navale ont besoin de revoir le
produit aux différentes étapes du processus de conception. Ils ont besoin notamment
d’effectuer des tests sur la maquette numérique comme si, celle-ci, était réelle. L’objectif
étant de réduire les coûts, en diminuant le nombre de prototypes physiques et de facto, de
gagner du temps dans la mise en œuvre des produits (FIG.16).
24
MEDLINE est une base de données bibliographiques qui couvre tous les domaines médicaux de l'année 1966
à nos jours. http://www.nlm.nih.gov/databases/databases_medline.html
25
Conception Assistée Tridimensionnelle Interactive Appliquée, logiciel créé à l’origine pour la conception
d’aéronefs et propriété de Dassault systèmes.
40
En RV, les utilisateurs doivent agir avec les objets qui composent le monde virtuel. La notion
de paradigme d’interaction est définie par certains auteurs pour désigner un ensemble de
règles et de techniques accomplissant des tâches d’interactions au sein d’un environnement
virtuel. La réalité virtuelle apporte donc un paradigme nouveau d’interaction pour la
recherche de connaissances dans un processus ECD.
Contrairement à la grande majorité des applications de réalité virtuelle qui tendent à imiter la
vie réelle, nous avons vu que les applications développées pour l’ECD se heurtent à la
difficulté de donner du sens graphique à un concept abstrait que sont les mesures d’intérêt.
Ces objets permettent d’interagir avec un monde de symboles qui correspond à une
représentation intellectuelle et mentale « concrétisant » les concepts de données ou de
connaissances via des métaphores FUCHS et al., (2001).
La métaphore doit traduire les termes d’un domaine particulier par des termes plus
compréhensibles et familiers pour l’expert des données étudiées. C'est-à-dire interpréter
graphiquement l’information dans la sémantique métier de l’utilisateur. Pour cela, il est
possible dans un contexte de réalité virtuelle, d’imaginer une représentation et une interaction
personnalisées d’une information complexe et volumineuse. L’introduction de la réalité
virtuelle dans le processus ECD augmente plus encore les possibilités d’interaction et l’espace
de visualisation pour les données à représenter.
L’interactivité forte et intuitive induites par les techniques de réalité virtuelle exploitent les
capacités sensori-motrices humaines. Les applications en l’ECD basées sur ce principe font
partie de ce que l’on a déjà nommé le visual data mining. Elles vont des logiciels de
visualisation 3D interactifs pouvant s’exécuter sur un équipement informatique classique
jusqu’aux systèmes immersifs en environnement virtuel nécessitant des interfaces spécifiques
et des périphériques dédiés plus coûteux (bureau virtuel, visiocasque, gants de données).
Une des représentations 3D les plus courantes en visualisation d’information est le nuage de
points 3D (FIG.17). Le nuage de points indique le degré de corrélation entre deux ou plusieurs
variables liées. Chaque unité représente un point dans le nuage. La 3D présente l’avantage par
rapport à la 2D, d’offrir un rendu volumique. Le nuage de points est proposé dans de
nombreux logiciels d’analyse de données.
41
(a) (b)
FIG.17 - Nuages de points, sans rendu volumique (a), avec rendu volumique (b)
La 3D et la réalité virtuelle trouvent également des applications dans la visualisation de
graphes. Les arbres coniques (FIG.18-a) font partie des exemples les plus connus pour ce type
de représentation. Il s’agit d’une structure hiérarchique d’arbres interactifs dessinés en 3D
verticalement et horizontalement. Les nœuds enfant sont organisés de façon circulaire autour
de leur nœud parent. Une action de l’utilisateur sur un nœud enfant entraine la rotation de
toute sa hiérarchie au premier plan de la scène et permet ainsi de l’explorer horizontalement.
(a) (b)
KLEIBERG et al, (2001) proposent une approche des arbres 3D radicalement différente avec
une métaphore botanique (FIG.18b). La base de l’arbre représente les sommets des hiérarchies
(root), les éléments sous catégorisés dérivent du tronc par les branches, les éléments finaux
sont figurés par les feuilles et les ensemble d’éléments par les fruits.
42
MUNZNER et al, (2000) exploitent les propriétés des espaces hyperboliques26 en généralisant
les plans hyperboliques 3D (FIG.19). Les graphes dessinés dans ces espaces sont contenus
dans des sphères selon l’approche focus+context où le centre de la sphère est magnifié et la
périphérie peu détaillée.
Parmi les systèmes existants qui implémentent ces outils de visualisation pour l’exploration
de données multi-dimensionnelles en visiosalle, nous trouvons le système TIDE développé
par JOHNSON et LEIGH (2001). Ce système projette les données en nuages de points 3D. Il
est fondé sur une architecture de travail collaborative et permet à plusieurs utilisateurs distants
et matérialisés par le bais d’avatars d’explorer les données ensemble et de pouvoir échanger
oralement sur celles-ci.
26
Les plans hyperboliques pour la visualisation présentent l’intérêt d’afficher des entités non bornés (droite)
dans une surface de visualisation bornée.
43
FIG.20 - Nuages de points 3D avec TIDE
La stéréoscopie à l’aide de lunettes commutées portées par l’utilisateur (FIG.20), est une
technique classique en RV. Elle apporte une aide supplémentaire pour comprendre la structure
3D des données.
Dans l’outil ARVis développé lors de travaux de Thèse BLANCHARD (2005). Les objets
graphiques représentent les règles d’association. Nous allons décrire cette métaphore de règles
développée pour la phase de post traitement en ECD et la façon dont l’utilisateur peut
interagir avec les données grâce à cet outil.
Dans ARVis, le monde virtuel représente des sous-ensembles de règles, chaque règle est
représentée par des figures géométriques, une sphère juchée sur un cône (FIG.22). Les mesures
de qualités sont visualisées textuellement en plus d’être encodées graphiquement par des
objets avec une taille, une luminosité et une position. La première version d’ARVis encode
trois mesures de la façon suivante :
44
La mesure d’intensité d’implication implémentée dans l’outil ARVis n’a pas encore été
présentée. Cette mesure compare à partir d’une règle de la forme : a → b, le nombre de
contre-exemples na observés dans les données au nombre de contre-exemples attendus sous
l’hypothèse H0 d’indépendance entre a et b. Le nombre de contre-exemples attendus sous H0
est le cardinal de X ∩ avec |X| = na et |Y | = nb. La règle est d’autant meilleure que la
probabilité de produire plus de contre-exemples que les données est grande, BLANCHARD
(2005).
Les objets sont positionnés dans une arène de telle sorte que les règles identifiées par des
mesures de qualités faibles, soient placées dans le haut de l’arène. L’arène combine la hauteur
avec la profondeur. Les objets les plus hauts dans l’arène seront donc également les plus
éloignés. Ce mode de représentation apporte une première solution aux problèmes
d’occultation.
La couleur des objets dans ARVis est une moyenne pondérée de la confiance et de l’intensité
d’implication. La variable graphique de couleur apporte une évaluation synthétique de la
qualité de la règle.
Un menu interactif permet d’utiliser huit relations de voisinage. La sélection d’une relation de
voisinage sur une règle change le sous-ensemble actuel par un nouveau sous-ensemble qui
contient toutes les règles voisines (FIG.21). Cette notion de voisinage doit faire sens pour
l’utilisateur et peut être fondée sur une relation de similitude entre les règles ou bien sur la
relation entre une règle et ses règles exceptions. Visuellement il change de monde, ce qui lui
donne l’impression de naviguer dans l’ensemble de règles.
EL t3
EL t1 EL t2
relation de voisinage
45
Pour chaque sous-ensemble extrait à l’aide des règles de voisinage, l’utilisateur est positionné
dans le monde 3D devant la scène. Des primitives de navigation standards (marcher, voler,
etc.) lui permettent alors de s’y déplacer librement pour explorer les règles et observer les
détails de ces dernières (FIG.22 et 23).
46
Conservatoire National des Arts et Métiers
Centre régional associé des pays de la Loire
Chapitre 3
Etude préalable
3.1.1 Besoins
le support,
la confiance,
47
3.1.2 Modèle de données
Les couples variables/attributs sont séparés par une virgule qui exprime une relation
conjonctive. Une flèche symbolise le sens de l’implication de la prémisse vers la conclusion.
Nous formalisons cette syntaxe pour l’écriture d’une règle d’association et retenons cet
exemple pour la suite de notre étude. Nous validerons les résultats de l’application développée
par comparaison avec les résultats de logiciels existants en libre utilisation (Tanagra, WEKA,
etc.). Les calculs effectués par l’algorithme d’extraction pour le gain informationnel par
attribut seront détaillés.
48
3.1.3 Environnement
Le système de fouille visuelle de données est construit sur une architecture client/serveur trois
tiers (FIG.25) :
3.1.4 Contraintes
49
Ergonomie :
Interopérabilité :
Utilisation de fichiers en entrée (données) et en sortie (règles) compatibles avec les normes et
standards courants : PMML27, fichiers CSV, etc.
Evolutivité :
Une base de données doit offrir un vaste panel de fonctionnalités : déclencheurs, fonctions
scalaires, etc. La richesse fonctionnelle des différents produits proposés par les éditeurs est
variable. Bien que l'ensemble des fonctionnalités soit rarement nécessaire. En disposer de
manière native représente un avantage pour les éventuelles évolutions futures. De nombreux
Systèmes de Gestion de Base de Données (SGBD) sont disponibles sur le marché.
Certains sont proposés par des éditeurs établis de longue date, d'autres sont le fruit du travail
de communautés de développeurs ou de nouvelles sociétés. La première catégorie regroupe
les produits tels qu’Oracle ou Microsoft SQL serveur. Dans le second groupe se classent les
acteurs du monde de l’Open Source28 où MySQL et PostgreSQL se taillent une belle place
auprès des entreprises29.
Pour le SGBD à mettre en œuvre, je me limiterai aux produits sus mentionnés et mon choix
sera guidé par les critères suivants :
3. la portabilité du code,
27
PMML, acronyme pour Predictive Model Markup Language est un langage basé sur XML définissant une
manière standard de décrire les modèles statistiques et de traitement de données au sein des applications
décisionnelles.
28
Un logiciel Open Source est défini par l’organisation Open Source Initiative comme étant un logiciel libre, la
réutilisation du code source est alors autorisée tant techniquement que légalement.
29
http://www.scribd.com/doc/26799397/Programmez-N126-Janvier-2010
50
4. la possibilité de manipuler des grands volumes de données,
MySQL30 vs PostgreSQL31
Les différences entre ces produits commencent avec les principes même qui les gouvernent,
c'est-à-dire s’ils sont ouverts ou propriétaires. Microsoft SQL serveur ou Oracle avec leurs
moteurs de stockage propriétaires et fermés sont donc fondamentalement différents des
moteurs de stockage ouverts et extensibles dont disposent MySQL ou PostgreSQL.
Fonctionnalités et performances
30
http://www-fr.mysql.com/
31
http://www.postgresql.org/
51
Fonctionnalités PostgreSQL MySQL
Ne suit que quelques
ANSI SQL conformité Très près du
standards de l’ANSI SQL
standard ANSI SQL
Rapide
Performance Lent
Sous-requêtes Oui Non
Oui, mais avec utilisation
Transactions Oui
d’une table d’InnoDB
Réplication de base de données Oui Oui
Oui Non
Support clés étrangères
Oui Non
Vues
Oui Non
Procédures stockées
Oui Incomplet
Triggers
Oui Non
Unions
32
Acronyme pour American National Standards Institute (ANSI) est un organisme privé qui supervise le
développement de normes pour les produits, les services, les procédés, les systèmes et les employés des États-
Unis
52
PostgreSQL possède les capacités de gérer de très gros volumes de données et repose sur un
modèle orienté objet, une technologie qui ouvre des horizons beaucoup plus larges qu'un
dispositif classique tel que celui de MySQL. Bien que MySQL soit plus facile et rapide à
mettre en œuvre, nous retiendrons PostgreSQL pour monter notre serveur de production de
règles.
PostgreSQL : portabilité
PostgreSQL est disponible pour de nombreuses plates-formes (Windows, Linux, Mac OS,
etc.). La librairie libpq est l'interface de programmation d'application C, de PostgreSQL. Le
ficher d’en-tête lippq-fe.h, peut être compilé pour le développement des applications clientes
et porté d’un système d’exploitation à l’autre.
Les fonctions33 disponibles pour PostgreSQL sont clairement documentées. Le code fourni est
largement commenté. L’intégration du code dans notre programme client se fera donc sans
difficultés apparentes. Les échanges de requêtes avec le serveur se feront en mode natif. La
programmation au niveau natif assure d’après ZAHER (2002), la possibilité d’exploiter toutes
les spécificités de la base de données.
L’outil d’administration pgAdmin34 (FIG.26) peut se connecter à toutes bases de données
PostgreSQL 7.3/7.4 et 8.x en utilisant la bibliothèque native libpq. L'application n'a donc pas
besoin d'une couche ODBC35ou JDBC36supplémentaire. Cet outil comporte de nombreuses
fonctionnalités (éditeur de requêtes SQL, éditeur de tables, scripts de requêtes, etc.).
J’utiliserai donc la version 8.4 de PostgreSQL et son outil d’administration pgAdmin III
v1.10.1.
33
http://www.postgresql.org/docs/manuals/
34
www.pgadmin.org/
35
Acronyme pour Open DataBase Connectivity, c’est un ensemble API/pilote défini par Microsoft permettant la
communication entre des clients de bases de données fonctionnant sous Windows et les systèmes de gestion de
base de données du marché.
36
Acronyme pour Java DataBase Connectivity, c’est une API développée pour les programmes utilisant la
plateforme Java.
53
3.2.2 Extraction des règles
Y/y ∈ {T} et y ∉ X; y ≠ x.
| X | = nx,
| Y | = ny,
| X ⋃ Y | = nx, y.
3. l’extraction de tous les itemsets qui interviennent dans les règles : relations
combinatoires entre les attributs par variables.
Pour notre étude, l’utilisateur spécifie lui-même les items et les variables. Les règles
spécifiées possèdent donc toutes le même itemset de prémisse et les règles générales seront
toutes construites à partir d’un seul item.
3.2.3 Technologie 3D
37
API acronyme pour Application Programmable Interface, traduit par interface de programmation.
54
GLUT est une bibliothèque co-existante avec OpenGL. Elle contient les routines de bas
niveau pour gérer les matrices de transformation et de projection, la facettisation des
polygones et le rendu de surface. C’est une boite à outils indépendante du système de
fenêtrage. GLUT est une bibliothèque qui simplifie plus encore la tâche de portage entre les
différents systèmes d’exploitation.
La fenêtre graphique est définie de manière unique dans un contexte d’affichage (device
context). Une procédure appelée handle permet au programme d’accéder à la fenêtre et d’y
passer les ordres de dessin directement au pipe-line de rendu (rendering context). OpenGL se
contente alors de « mixer » les informations et de les transmettre au système d’exploitation.
Cela explique la raison pour laquelle, la librairie graphique OpenGL est 100% portable.
Programme « device
OpenGL « rendering context »
context » Affichage
Gérer par le Géré par
programme l’OS
55
3. La discrétisation (rasterization) est la transformation des primitives
géométriques en fragments correspondant aux pixels de l'image. Les
opérations sur les fragments vont calculer chaque pixel de l'image en
combinant les fragments qui se trouvent à l'emplacement du pixel. On
trouve par exemple la gestion de la transparence et le Z-buffer (pour
l'élimination des surfaces cachées).
4. le Frame Buffer est une zone de la mémoire vidéo dans laquelle l'image est
écrite (sous forme d'un bitmap) avant d'être envoyée vers le moniteur
La contrainte pour le système d’exploitation est alors de pouvoir dialoguer avec OpenGL. Ces
dialogues sont nécessaires pour assurer les interactions de l’utilisateur avec les objets de la
scène 3D. Cette liaison est réalisée par exemple pour MS Windows, grâce au driver
Opengl32.dll38.
Java3D :
Java3D est une librairie de visualisation en trois dimensions développée par Sun39. Java 3D
offre tous les outils nécessaires pour la génération d’objets complexes, le rendu, l’éclairage, et
la navigation dans l’univers créé. Une scène Java3D est conçue comme une famille
arborescente d’objets graphiques. Il s’agit d’un graphe acyclique qui chaine les objets en
assurant la gestion des déplacements dans la scène et le contrôle du point de vue.
L’arborescence se construit à partir d’un nœud racine (La locale) auquel on ajoute des nœuds
enfants par des méthodes de type add (BranchGroup). Bâtir une scène 3D commence par
l’instanciation des éléments (objets 3D) qui constituerons la scène. Ces objets sont ensuite
regroupés et peuvent être modifiés (apparence, couleur, taille, etc.). Enfin, les différentes
scènes construites de façon séparée seront placées dans un conteneur commun nommé
l’univers virtuel. Java3D se charge du rendu à l’écran.
On trouve généralement un seul univers virtuel collectionnant toutes les scènes 3D (FIG.29).
La « locale » est le nom donné au système de coordonnées orthonormées directes (main
droite) dans le monde virtuel, c’est un repère pour poser une ou plusieurs scènes3D
(BranchGroup).
Un Shape 3D est un LeafNode qui possède une géométrie (forme) et une apparence (couleur,
transparence, etc.). Le « TransformGroup » défini un nouveau système de coordonnées pour
les objets dans la hiérarchie. Il permet par rapport au nœud parent de l’objet, d’effectuer une
translation, une rotation ou une homothétie.
38
DLL acronyme pour Dynamic Link Library traduit par bibliothèque de liens dynamiques.
39
http://www.javasoft.com/products/javamedia/3D/index.html
56
FIG.29 - Arborescence des objets d’un univers Java3D
Il n’existe peu d’ouvrages pour Java3D et bien que quelques sites spécialisés en infographie
s’intéressent également à cette technologie, la meilleure source actuelle reste encore le site de
Sun.
OpenGL vs Java3D
Certaines fonctionnalités de l’API pour utiliser Java3D font appel à des méthodes natives de
la DLL, Java3D/OpenGL [GL4J]. L’objectif de cette couche logicielle est d'utiliser une
bibliothèque dans un langage de programmation différent de celui avec lequel elle a été écrite.
Cela revient donc à utiliser une bibliothèque native enveloppante qui traduit la spécification
du langage de développement utilisé dans le langage supportant la bibliothèque graphique
OpenGL. L’efficacité d’une telle méthode dépend alors des capacités de cette bibliothèque à
lier les deux langages.
40
Direct 3D est un composant propriétaire de l'API Microsoft DirectX contrairement à OpenGL qui est une
spécification libre et gratuite.
57
OpenGL offre très peu de commandes haut niveau pour décrire des objets 3D. Son utilisation
nécessite de construire les modèles graphiques à partir d’un jeu restreint de formes primitives
(points, lignes, polygones, etc.). Java 3D intègre directement ces modèles d’objets dans des
méthodes. La mise en œuvre est rapide et la prise en main ne nécessite pas de posséder de
larges connaissances en programmation 3D. Nous avons vu qu’il était également nécessaire
d’utiliser une couche logicielle supplémentaire.
Toutes les fonctionnalités d’OpenGL ne sont malheureusement pas totalement supportées par
cette couche appelée binding Java-OpenGL. Par exemple JAVAGL, l’un des premiers
paquetages et maintenant abandonné supportait seulement 20% des fonctions OpenGL.
D’après ABISROR (2002), le paquetage JOGL, probablement l’un des plus avancé supporte
60 à 70% des fonctions d’OpenGL mais n’est plus mis à jour depuis décembre 1997.
2. un accès direct au pipeline de rendu et cela est vrai pour n’importe quel
binding de langage,
Java3D et la technologie VRML41 utilisée dans ARVis possèdent des commandes « haut
niveau » pour la création d’objets 3D. Ce type de commandes n’existe pas pour OpenGL mais
ne sera pas nécessaires pour notre métaphore 3D (molécule). Cette absence ne sera donc pas
délétère pour le projet.
41
VRML acronyme pour Virtual Reality Markup Language, c’est un langage interprété de description d'univers
virtuels en trois dimensions.
58
3.2.4 Langage de programmation et environnement de développement
Langage
Le prototype de fouille de donnée est développé en C/C++. Les librairies graphiques OpenGL
seront intégrées dans le code du programme. Le code est portable sur différentes plateformes
matérielles. Le développement de cette application au niveau natif nous assure d’obtenir des
performances nominales, quelque que soit le système d’exploitation utilisé. Cependant, le C
reste un langage complexe et la phase de débogage peut être longue.
Outils de travail
Fonctionnalités Outils
Compilateur wingw
Visualisation en 3D OpenGL
42
http://www.mingw.org/ /
59
3.3 Proposition d’une nouvelle métaphore 3D
D’un commun accord avec les encadrants, nous avons décidé d’utiliser la métaphore de la
molécule pour représenter les règles d’association (FIG.30). Chaque règle est symbolisée par
un graphe composé de sphères qui matérialisent les items. Nous nous intéresserons aux règles
à conclusion simple, c’est à dire ne comportant qu’un seul item. Les liaisons entre les sphères
se croisent en un point défini par le centre des coordonnées (x, y, z) des différentes sphères.
Le centre du graphe de prémisse sera relié à l’item de conclusion par un seul arc.
Rain (low)
Temp (hot)
Outlook (sunny)
Windy (yes)
o l’indice de support pour positionner les règles dans une scène 3D.
La scène est une arène inspirée de l’outil ARVis.
60
3.3.2 Calcul des indices de qualité
6. Support (X→Y)= = =
7. Confiance (X→Y)= = =
Calcul du lift
Lift (X→Y) = = = *
Le lift désigne les liens de corrélation existants entre les différents items de la prémisse. Un
lift élevé indique une corrélation forte entre deux items. Le lift n’est pas une mesure
probabiliste. Il sera donc nécessaire d’homogénéiser sa valeur vis-à-vis des autres indices
pour la représenter graphiquement. Nous utiliserons alors l’inverse du lift variant sur un
intervalle [0,1]. Une corrélation forte entre deux items sera représentée par une distance faible
qui les sépare. En prenant l’inverse du lift, la distance qui sépare deux items sera modélisable
pour toutes les règles. Nous l’appelons InvLift.
61
Pour une règle A → G, le calcul du gain informationnel InfoGain (Ai), pour chaque attribut Ai
de la prémisse s’effectue en utilisant les formules (1), (2) et (3).
L'indice « j » dans les formules (2) et (3) varie sur l'intervalle [1.. n], où « n » représente les
cardinalités des valeurs potentielles pour la variable respective de l’item en conclusion.
L'indice k dans la formule (3) varie sur l'intervalle [1.. m], où « m » est le nombre de valeurs
de l'attribut Ai dans la prémisse.
Dans (2) nous faisons une mesure d’entropie sur les attributs de la conclusion. Dans (3) cette
mesure d’entropie est conditionnée par les valeurs de Ai.
A partir du modèle de données présenté §3.1.2, nous allons mettre en application les
différentes mesures de qualité pour notre exemple de règle, que l’on rappelle :
62
Pour cette règle, on trouve également (TAB.11) les cardinalités des items et itemsets. Nous
combinons deux à deux les différents items de la prémisse entre eux (FIG.31). Nous évaluons
ensuite la mesure du lift par les associations d’items réalisées. Pour cela, nous trouvons
également les cardinalités de chacun des attributs qui interviennent dans ces règles plus
générales.
r(X) n nx ny nx,y
(O = s, T = h, W= y) → (R=l) 20 4 9 2
(O = s) → (T = h) 20 8 8 5
(O = s) → (W = y) 20 8 11 7
(T = h) → (W = y) 20 8 11 5
Lift (O = s) → (T = h) /( * ) 1.56
Lift (O = s) → (W = y) /( * ) 1.59
Lift (T = h) → (W = y) /( * ) 1.14
63
Nous détaillons la recherche du gain informationnel avec pour exemple le premier attribut de
la prémisse contenu dans la règle R1 : la variable « Outlook » associée à l’attribut « sunny ».
Le mode de calcul sera identique pour tous les autres attributs contenus dans la prémisse de la
règle R, (Temp = hot, Windy = yes).
Nous adoptons une méthode binaire pour calculer le gain informationnel de chacun des
attributs de la règle. C'est-à-dire que pour la règle R, nous considérons la variable « Rain » de
la conclusion avec les valeurs low et no_low (l ; no_l) comme attributs. Pour la variable
« Outlook » retenu en exemple, nous prendrons les valeurs sunny et no_sunny (s ; no_s).
Application numérique :
cardinalités
(Ai) (Gj) (Gj | Ai)
attributs/variables
(R = l) / 9 /
(R = no_l) / 11 /
(O = s) 8 / /
(O = no_s) 12 / /
(R = l | O = s) 8 9 4
(R = l | O = no_s) 12 9 5
(R = no_l | O = s) 8 11 4
( R= no_l | O = no_s ) 12 11 7
64
(1) Info (Rain = l ) = - [( )) + ( ))] = 0.29
+ * [- ( +( )] = 0.18
Le gain informationnel
Le gain informationnel de chacun des attributs représentera le diamètre des sphères dans
l’espace 3D. Nous observons que pour les mêmes itemsets, le gain informationnel de chacun
des attributs varie de façon significative en fonction de l’item de la conclusion. Etant donné la
nature statistique de cette mesure et dans le cas où nous serions en présence de variables
catégoriques et continues. Le gain informationnel qu’affecte cette variable pourrait alors
varier sur l’intervalle]- ∞, +∞ [.
Il sera donc nécessaire d’effectuer une normalisation de cette mesure par rapport à l’échelle
de la scène 3D. Nous limiterons ainsi la représentation des sphères dont les diamètres trop
élevés surchargeraient la représentation ou trop faible qui seraient à peine perceptibles pour
l’utilisateur. Lorsqu’un attribut de la prémisse présente un gain informationnel négatif, les
sphères sont de couleur blanche.
Le lift
Comme nous l’avons déjà spécifié, les corrélations existantes entre les items seront
représentées par les distances qui les séparent. Nous utiliserons deux lois de la physique
fondamentale pour élaborer ces distances :
FQ q Fq Q
+Q + q
| FQ q | = | Fq Q | = k
43
http://en.wikipedia.org/wiki/Coulomb's_law
65
Pour toutes les particules (sphères) de la métaphore 3D. Les charges
électriques seront de mêmes signes, donc chargées positivement ou
négativement. Le but recherché étant de créer une force de répulsion
appliquée à une charge q1 par la présence d’une autre charge q2. Cette force
est proportionnelle au produit des deux charges et inversement
proportionnelle au carré de la distance qui les séparent. La force de
répulsion de Coulomb est donnée par la formule suivante :
2. la loi de Hooke : c’est une loi de comportement des solides lorsque ceux ci
sont soumis à une déformation élastique de faible amplitude. Elle indique
que la force appliquée à un solide pour le déformer est proportionnelle à
l’extension qu’il subit. Hooke met en avant la théorie des ressorts. Deux
aspects différents sont alors importants lorsque ces ressorts sont soumis à
une force croissante :
o l’élasticité qui exprime que cet effet est réversible, c'est-à-dire que
si la force disparait, le ressort revient à sa position d’origine. Notons
que l’élasticité admet cependant une limite qui est indépendante de
la notion de linéarité. Hooke considère seulement la phase élastique
et linéaire, donc proportionnelle et réversible.
l0
l
44
http://en.wikipedia.org/wiki/Hooke's_law
66
L’objectif de la mise en œuvre de ces deux lois physique est de définir un système
d’attraction-répulsion entre les sphères (FIG.34). Nous représentons ici, la force appliquée à la
première sphère (q1) et procéderons comme suit :
1. Dans un premier temps nous attribuons des poids aux différents sommets
du graphe. Ces poids représentent la charge électrique de chacune des
sphères. Puis nous calculons un vecteur de répulsion grâce à la formule de
Coulomb pour disperser les sphères dans l’espace 3D.
Dans ce montage, la position de chacune des sphères dépend alors de la somme des forces
répulsives des autres sphères, et de la somme des forces attractives auxquelles elles sont
associées. Nous réalisons un graphe complet. En théorie des graphes, un graphe complet est
un graphe possédant n sommets tous reliés deux à deux par une arête. Le nombre d’arrêtes
pour un graphe Kn est alors donné par :
Le premier terme s'obtient par la suppression d'un premier sommet de Kn qui entraine la
suppression de n − 1 arêtes, puis la suppression d'un deuxième sommet, la suppression de n −
2 arêtes, et celle d'un i-ème sommet de n − i arêtes.
67
Afin d’insérer la notion de longueur d’arc en fonction du lift, nous disposons dans les
fonctions de répulsion (Coulomb_fonction) ou d’attraction (Hooke_fonction) de plusieurs
constantes comme la charge éclectique, la constante de Coulomb ou de raideur du ressort k,
ou encore la variable « L » qui prend en charge les étirements des ressorts. Il s’en suivra une
déformation du graphe. Pour notre métaphore nous faisons intervenir le lift en utilisant la
variable « L » et en attribuant à chaque ressort une valeur maximale pour son allongement.
68
La FIG.35 montre le déplacement des sphères effectué par l’algorithme de placement. Ces
déplacements sont effectués par rapport au centre du graphe (sphère jaune). Les sphères
rouges représentent les positions initiales respectives de chaque sphère bleue ayant subit une
transformation de coordonnées.
Remarquons que les sphères rouges sont positionnées sur les points de concours des arêtes
d’un cube. En effet, l’initialisation des coordonnées (x, y, z) des sphères devra être réalisée de
telle sorte que toutes les sphères soient équidistantes par rapport au centre du graphe qu’elles
forment. Cette distance minimum servira alors de référence aux déplacements éventuels des
sphères. Une comparaison significative des liens de corrélation par la distance inter-sphères
sera donc possible suivant ce principe. Pour ce faire, nous limitons la longueur k-itemsets de
la prémisse à huit, et positionnons les différents sommets du graphe sur les arêtes d’un cube.
Cette contrainte de limitation n’a pas d’influence sur l’applicabilité de notre prototype, les
experts métiers préfèrent en générales un nombre d’attributs faible dans la prémisse d’une
règle. Nous représentons ci-après la matrice pour les coordonnées (x, y, z) donnée par un code
Gray45des huit sphères possibles pouvant être initialisées dans notre métaphore 3D.
45
Le code Gray est fréquemment utilisé dans les capteurs angulaires ou de positionnement, mais aussi lorsque
l'on désire une progression numérique binaire sans parasite transitoire.
69
q0 :{0, 0, 0} ;
q1 :{0, 0, z} ;
q2 :{0, y, z} ;
q3 :{0, y, 0} ;
q4 :{x, y, 0} ;
q5 :{x, y, z} ;
q6 :{x, 0, z} ;
q7 :{x, 0, 0} ;
L’indice de support
-z
- x
0
+x
70
FIG.37 - Arène 3D (OpenGL)
Notons que le trièdre (0, x, y, z) dans une fenêtre OpenGL n’est pas orienté comme un repère
orthonormé classique. La direction de l’axe (z) est placée sur la profondeur de la scène 3D.
L’axe (y) exprime alors la hauteur de cette même scène. Par ailleurs, les lignes de l’arène 3D
forment un nouveau repère dans lequel il est possible d’établir un système de coordonnées
UTM46.
A partir des angles qui définissent les lignes de latitude, la hauteur de l’arène est divisée en
sept zones correspondantes à la projection des lignes de latitude dessinées par OpenGL sur
l’axe [0, y]. Les règles d’association se juxtaposerons les unes à coté des autres suivant avec
un pas fixe et incrémenté en suivant les valeurs de [– xzone , + xzone]. La première zone couverte
par les règles extraites se trouvera donc au premier plan de la scène (au plus bas de l’arène
donc disposent des supports les plus élevés).Les cordonnées correspondantes par projection
en (z) seront données par l’équation du cercle de droite [o, xzone].
Afin d’assurer une certaine lisibilité des règles, une normalisation des différentes mesures
d’intérêt sera nécessaire.
L’indice de confiance
La notion de confiance accordée à une règle d’association sera représentée par la distance qui
sépare le graphe de prémisse avec le graphe de conclusion (dans notre cas un seul item).
46
U.T.M. est l'acronyme de l’anglais Universal Transvers Mercator. C'est une méthode de découpage de la terre
pour situer un point avec précision.
71
Récapitulatif des mesures de qualité et encodages graphiques
Le gain
Diamètre et volume des sphères
informationnel
représentant la molécule.
de Freitas
Gain informationnel
Confiance
1 / Lift
72
Conservatoire National des Arts et Métiers
Centre régional associé des pays de la Loire
Chapitre 4
Réalisation
4.1 Présentation
La réalisation se décompose en deux étapes :
- Une première partie présente les différentes séquences de requêtes pour extraire les
règles en parcourant le contexte de données.
Dans ce chapitre, une réflexion spécifique est portée sur la représentation graphique des liens
de corrélation existants entre les différents items de la prémisse. Nous rappelons que ces liens
sont donnés par le lift. Nous limiterons le nombre de ses items à huit, (contrainte vue
précédemment). L’extraction des règles est supervisée par l’utilisateur qui sélectionne les
attributs de la prémisse. Les algorithmes d’extraction assujettis à cette contrainte limitent
drastiquement l’espace de recherche. Les sous-ensembles de règles obtenus sont visualisés
directement dans l’arène 3D. L’application utilise en entrée un fichier de données codé au
format CSV (tableau transaction/attributs, séparateur « ; »).
4.2 Organisation
4.2.1 Dates clés
73
4.2.2 Planification des tâches
La période de bibliographie prévoyait une durée de trois mois. cette période, s’intègre la
proposition et la rédaction du sujet de mémoire. Côté programmation, un temps d’adaptation
aux outils de développement et au langage a été nécessaire, ce temps ne figure pas (FIG.39)
puisqu’il est intégré dans l’étude de la technologie OpenGL. L’extraction des premières règles
d’association à partir du serveur fût rapide. Cependant le développement de la métaphore à été
plus long que prévu. Son développement à nécessité d’effectuer de nombreux essais pour
trouver une solution cohérente. La phase d’intégration et de débogage est partagée pour les
deux modules principaux de programmation (serveur de production de règles, métaphore3D).
Le temps restant du stage n’étant pas suffisant pour aborder et implémenter les techniques
d’interaction, nous avons donc expérimenté le système sur des données réelles fournies par
Nantes habitat.
- une base de données qui contient les données de l’étude et les tables de travail
pour optimiser le temps de réponse des requêtes,
- une heuristique qui calcule les sous-ensembles de règles extraits suivant les
souhaits de l’utilisateur. Cette heuristique travaille de façon locale sur les données.
Les mesures associées ont été présentées au chapitre précédent (voir T AB.15).
74
Le programme d’extraction de règles d’association est écrit en C/C++, il anime un jeu de
requêtes SQL pour interroger le contexte de données. L’initialisation se fait par une interface
en lignes de commande. Lorsque l’algorithme d’extraction arrive en fin de processus, le
programme ouvre une fenêtre graphique OpenGL. Le développement s’appuie sur plusieurs
librairies disponibles.
47
http://www.modeliosoft.com/
48
http ://fr.wikipedia.org/wiki/Unified_Modeling_Language
49
http : //uml.free.fr/
75
4.5 Spécification
4.5.1 Diagramme de classe simplifié
76
Pseudo-code pour la saisie des items :
1. k_itemset := nbr_items
2. n := 0
3. var [] := Ø
4. att [] := Ø
5. Prémisse [] := Ø
6. Tant que n < k_itemset
7. Faire
8. att = item
9. var = n°colonne
10. Identification_variable (n°colonne)
11. Prémisse [] := (variable/item)
12. Fin de faire
13. Fin de tant que
14. Return (Prémisse)
77
12. Tant que (j <col)
13. Faire
14. Lecture (Tab_locale)
15. att [] := item_conclusion
16. var [] := variable
17. Tant que (att ∉ Prémisse [])
18. cardL := select count(*)from Tab_locale WHERE
var = att
19. cardG := select count(*)from Tab_globale WHERE
var = att
20. sup := (cardL /t)
21. conf := (cardL /lig)
22.
23. Si (sup > seuilsup et conf > seuilconf)
24. GI := CalculGainInfo (att, cardG, cardL, lig, t)
25. Insérer_règle (Prémisse, sup, conf, GI)
26. Fin de si
27. Fin de tant que
28. Fin de Faire
29. Fin de tant que
30. Fin de tant que
78
6. nbr := 0
7. varatt [] := variable_prémisse
8. att_p [] := item_prémisse
9. Ai := 0
10. וAi := 0
11. Gi|Ai := 0
12. וGi|Ai := 0
13. Tant que nbr < k_itemset
14. Faire
15. Ai := SELECT varatt, COUNT (*) FROM
Tab_générale WHERE varatt = att_p [nbr]
16. וAi := SELECT varatt, COUNT (*) FROM
Tab_générale WHERE varatt = וatt_p [nbr]
16. Gi|Ai := SELECT varatt, COUNT (*) FROM
Tab_générale WHERE varatt = att_p [nbr] GROUP BY
att
17. וGi|Ai := SELECT varatt, COUNT (*) FROM
Tab_générale WHERE varatt = att_p [nbr] GROUP BY
וatt
18. Gi|וAi := SELECT varatt, COUNT (*) FROM
Tab_générale WHERE varatt = וatt_p [nbr] GROUP
BY att
19. Fin de Faire
20. InfoGain = InfoGain +
Ai * (-((Gi|Ai)*log(Gi|Ai)+ (וGi|Ai)*
log(וGi|Ai))+
וAi * (-( Gi|וAi)*log(Gi|וAi)+ (וGi|וAi)*
log(וGi|וAi))
21. Fin de Tant que
22. Return (InfoGain)
79
21. Faire
22. Lecture (Tab_générale)
23. item2 := Prémisse [var+1]
24. variable2 := Prémisse [var+1]
25. Card2 := SELECT COUNT(*) FROM Tab_générale
WHERE variable2 = 'item2'
26. Card := SELECT item1, COUNT (*) FROM
Tab_générale WHERE variable2 = 'item2'
GROUP BY item1
27. lift := ((Card/t)/((Card1/t)*(Card2/t)));
28. QUERY := INSERT INTO Tab_prémisse (item1,
item2, lift)
29. Envoyer(QUERY)
30. Fin de Faire
31. Fin de Tant que
32. Fin de Faire
33. Fin de Tant que
80
extraction des règles). Lorsque la cardinalité d’un attribut est
calculée, si elle n’existe pas déjà dans la table par une itération
précédente, elle y est insérée. Cette table permet d’alléger les
requêtes après une phase d’initialisation. La charge de travail de la
base de données se limitera ensuite à tester la présence du couple
attribut/variable dans la table. Ce principe améliore le temps de
réponse du système client/serveur.
81
initialisées des sphères subissent alors les transformations de coordonnées
définies par l’algorithme de placement vu § 3.3.5 du chapitre 3.
82
25. cir := -cir
26. Fin de Faire
27. Fin de si
28. cir := racine carrée (cir)
29. Tant que i < nbr_sphère
30. Faire
31. xsphère[i] := xsphère[i] + pas
32. ysphère[i] := ysphère[i] +
33. yzone[j] + zsphère[i]
34. zzone[j] := zzone[j] - cir
35. Fin de Faire
36. Fin de tant que
37. Fin de si
38. Fin de Tant que
83
zone6
zone5
zone4
zone3
zone2
zone1
zone0
84
Le programme démarre par l’ouverture d’uns boite de dialogue (FIG.45). Elle contient deux
boutons d’action. Ces boutons séparent la partie extraction de la partie visualisation.
L’interface permet également de renseigner les seuils des indices de support et de confiance
nécessaires à l’extraction des règles. La boite de dialogue est programmée avec l’API de MS-
Windows.
4.5.4 Diagramme d’activité : interface
85
Au démarrage, le programme offre le choix à l’utilisateur d’activer l’une ou l’autre des deux
fonctionnalités principales :
La fonction d’extraction de règles : le système se connecte à la base de données et
ouvre une console (Shell). La fonction prend en entrées le nombre des attributs pour
construire les règles, la syntaxe de chaque attribut et leur numéro de colonne respectif
correspondant à la variable.
la fonction de visualisation : le système se connecte à la base de données par l’objet de
connexion. Cette fonction prend en entrée les données contenues dans la table de
résultat et intègre les fonctionnalités de gestion des piles matricielles spécifiques à
OpenGL.
4.5.5 Diagramme d’activité : extraction des règles (class Main_Prog)
86
4.5.6 Comparaison des résultats d’extraction avec Tanagra
cadre 1
cadre 2
50
http://www.borgelt.net/pub2010.html
87
4.6 Placement du graphe de prémisse
4.6.1 Initialisation de l’algorithme de placement:
Les coordonnées initiales des différentes sphères sont placées dans la matrice de coordonnées
suivante.
q0 :{0, 0, 0} ;
q1 :{0, 0, 1} ;
q2 :{0, 1, 1} ;
q3 :{0, 1, 0} ;
q4 :{1, 1, 0} ;
q5 :{1, 1, 1} ;
q6 :{1, 0, 1} ;
q7 :{1, 0, 0} ;
Les déformations du graphe sont engendrées par l’ensemble des forces qui y sont appliquée
(voir FIG.37). L’algorithme effectue alors le calcul des forces d’attraction et de répulsion en
initialisant une charge électrique (poids) à chacune des sphères (sommets du graphe) et en
attribuant un allongement maximum des ressorts qui les relient entre elles. Cet allongement
est élaboré à partir de la mesure du lift. Les nouvelles positions des sphères sont ainsi
définies par l’ensemble des forces qui s’exercent à l’intérieur du graphe. Le parcours du
graphe complet par l’algorithme ne nous permet pas de fixer les coordonnées dans l’espace
3D. Pour le placement des sphères, nous forçons donc l’arrêt des itérations lorsque tous les
arcs qui les relient entre elles, ont été pris en compte.
4.6.2 Echelle graphique
Nous choisissons d’attribuer une échelle unitaire pour les cordonnées d’initialisation des
sphères dans l’arène. Ce choix facilite l’interprétation expérimentale des liens de corrélation
(lift) par rapport aux distances qui les séparent. Cette échelle assure également la lisibilité des
mesures au sein des règles lorsqu’elles celles-ci sont positionnées dans l’arène 3D (FIG.54).
La charge électrique dans le cadre de cette étude reste constante et identique pour chacune des
sphères. Nous limitons les forces de répulsion avec des charges électriques faibles. Une charge
électrique élevée a pour effet de faire sortir les sphères de l’arène. Nous attribuons également une
valeur expérimentale à la constante de Coulomb (voir §3.3.5) pour les besoins de la métaphore.
Les constantes électriques nous serviront donc à gérer le placement du graphe pour chacune des
règles en concordance avec l’échelle graphique de la fenêtre OpenGL.
88
4.6.3 Corrélations graphiques ente le lift et les distances inter-sphères
Afin d’obtenir une indication de corrélation cohérente avec les distances qui séparent les sphères
et la valeur de la mesure du lift. L’initialisation des coordonnées est une phase prépondérante. Les
coordonnées de référence pour calculer les distances dans notre métaphore sont les
coordonnées des points de concours des arêtes d’un cube. Le cube offre la possibilité
d’initialiser huit sphères positionnées à égales distances par rapport à son centre de gravité.
Dans l’exemple (FIG.49), nous montrons un nombre de cinq sphères qui nécessitent pour
l’algorithme, d’initialiser dix arcs afin de simuler les ressorts (voir § 3.3.5).
Cependant, la méthode de placement doit prendre en compte les différences existantes entre
les longueurs des arcs positionnés :
89
Nous représentons (FIG.50), un exemple pour le placement de la première sphère d’une règle,
dont les coordonnées sont traitées en premier par l’algorithme. Cet exemple met en exergue
les arcs présents dans le calcul des forces pour établir les nouvelles coordonnées de la sphère
« 2 ». Les autres sphères sont encore à leurs positions initiales.
Si l’on suppose que le lift est identique entre chacun des attributs de la prémisse, les distances
théoriques inter-sphères devraient également l’être et pouvoir interpréter de façon cohérente,
les liens de corrélation graphiques. Cependant, et à partir de la construction du cube,
l’obtention de distances en adéquation avec la mesure du lift semble a priori impossible. Cette
impossibilité est principalement due à la prise en charge des différentes diagonales du cube
pour le calcul des forces qui s’exercent entre les sphères.
Nous avons expérimenté une solution qui consiste à attribuer aux arcs de plus grande
longueur, les mesures du lift les plus faibles. Le but de la métaphore étant avant tout de
distinguer les liens de corrélation les plus élevés (lift élevé) par rapport aux plus faibles (lift
faible). Nous cherchons par ce biais, à limiter les incohérences potentielles dans
l’interprétation graphique des liens de corrélation inter-sphères.
Nous avons vu que dans une représentation 3D, l’appréciation des distances n’est pas triviale
et qu’il est souvent nécessaire pour comprendre la structure d’un objet, de devoir déplacer le
contrôle du point de vue ou l’objet lui-même. Nous avons donc relevé les valeurs numériques
réelles des distances existantes entre les cinq sphères à l’aide de notre prototype de métaphore
(TAB.16).
90
Le tableau met en évidence les arcs dont les longueurs sont les plus élevés par des cases
grisées. Notre graphe de cinq sphères comporte une diagonale du cube identifiée ici par l’arc
(6). Nous plaçons donc sur cette diagonale la valeur du lift la plus faible existante entre les
attributs. Nous procédons de façon croissante suivant ce même principe pour toutes les autres
valeurs du lift. Les arcs mentionnés dans le tableau forment un graphe connexe51. Ce graphe
non planaire est représenté (FIG.51) dans une position quelconque.
0 0 1 6.6 0.64
1 0 2 2 0.99
2 0 3 3.3 0.83
3 0 4 1.6 1.33
4 1 2 5 0.82
5 1 3 1.25 1.29
6 1 4 1.1 1.63
7 2 3 2.5 0.97
8 2 4 1.42 1.47
9 3 4 2.8 1.24
51
Un graphe est dit connexe si pour toute paire de sommets distincts il existe un arc les reliant. L’orientation des
arcs n’a pas d’importance pour qu’un graphe soit connexe.
91
Dans notre exemple, la distance la plus élevée entre les sphères se trouve donc sur l’arc [1,4]
qui correspond au plus faible lien de corrélation existant entre les sphères. La distance
théorique la moins élevée pour le lift le plus élevé est positionné sur l’arc [0,1] (une arête du
cube). Nous constatons suivant ce principe que la valeur du lift la plus grande, correspond
bien à la distance la plus petite (lift = 6.6, distance = 0.64).
Les distances inter-sphères obtenues en sortie de l’algorithme s’avèrent donc cohérentes par
rapport aux valeurs respectives de la valeur du lift attribué à chacun des arcs du graphe. Le
calcul des forces à l’intérieur du graphe forment un graphe complet52 (FIG.34).
Nous représentons (FIG.51) le graphe obtenu suivant un point de vue qui met en évidence
l’éloignement des sphères 1 et 4. Notons que l’interprétation des liens de corrélation n’est pas
triviale dans une représentation 3D et nécessite de déplacer le point de vue pour évaluer les
distances entre les sphères sous différents « angles ». La mesure du lift est normalisée afin de
contenir le graphe dans l’arène 3D, cette normalisation assure une lisibilité correcte des règles
entre elles et dans l’arène 3D (FIG.53).
Cette solution fonctionne donc pour l’élaboration des liens de corrélation graphique entre les
sphères. Elle nécessite néanmoins de gérer l’attribution des valeurs du lift en fonction des
différences de longueur pour les arcs qui interviennent dans le calcul des forces. Les liens de
corrélation graphique peuvent être interprétés. Nous avons vu que les valeurs pour la mesure
du lift sont attribuées aux arcs dont les longueurs sont les pus élevées (diagonales). Les
longueurs d’arc les plus faibles (liant les arêtes) seront réservés pour les valeurs du lift les
plus faibles. Dans ces conditions seulement, les liens de corrélation entre les différentes
sphères pourront être interprétés graphiquement.
52
Un graphe est complet si deux sommets quelconques sont reliés dans au moins une direction.
92
FIG.53 – Liens de corrélation graphiques dans une règle
93
4.7 Expérimentation sur des données réelles
Les données portent sur une enquête de satisfaction effectuée par Nantes habitat auprès des
locataires logés par l’Office HLM. Le volume des données réelles pour l’expérimentation de
l’outil d’extraction est assez significatif pour nous confronter aux problèmes de mise au point
du programme. Nous avons vu que le calcul du gain informationnel demande de nombreuses
itérations. Toutes ces itérations interrogent la base de données. Il a donc fallu modifier les
fonctions chargées du calcul de cette mesure, afin d’obtenir des temps de réponse acceptable
du programme. Ces modifications ont demandé un effort de développement supplémentaire
pour introduire les tables de cardinalités. Les premières règles apparaissent alors en quelques
secondes. Cependant le parcours de l’ensemble du contexte par l’algorithme d’extraction
prend encore plusieurs dizaines de minutes.
Notons que le parcours du contexte n’est pas nécessaire, puisque les règles qui comportent le
plus d’intérêt au sens de l’information portée par les attributs, se trouvent en avant de la
scène. Le temps de réponse du système pour extraire et afficher la centaine de règles que peut
supporter l’espace représenté par l’arène est donc acceptable pour implémenter des primitives
de navigation interactives (relations de voisinage voir FIG.21).
Par exemple (FIG.54), nous détaillons une règle et observons que les gains d’information
apportés par q2, q3 et q4 sont négatifs (sphères de couleur blanche). Leur absence
augmenterait donc la qualité de la règle. En parcourant le paysage de règles par des primitives
de navigation classique (avancer, reculer, droite, gauche, etc.), nous observons que les règles
décrites avec une valeur de support élevé comporte les gains d’information les plus élevés. La
représentation est donc cohérente par rapport à la nature entropique de cette mesure objective.
94
FIG.54 - Visualisation d’une primitive d’extraction (Nantes habitat)
95
Conservatoire National des Arts et Métiers
Centre régional associé des pays de la Loire
Chapitre 5
Conclusion
Le prototype d’extraction développé dans cette étude s’appuie sur le concept de réalité
virtuelle. Il présente à l’utilisateur un paysage de règles d’association dans une arène 3D. La
métaphore de règles est inspirée de celle de la molécule et implémente quatre mesures
d’intérêt distinctes. Elle permet une lecture graphique des deux mesures les plus utilisées, le
support et la confiance, et offre la possibilité de lire graphiquement les liens de corrélation
entre les attributs (lift). La quatrième mesure est une mesure objective de l’intérêt porté par
chacun des attributs considérés individuellement. Nous révélons ici, l’importance de la
présence ou de l’absence des attributs qui composent une règle en augmentant le niveau de
granularité de l’information portée par chacun d’eux.
5.1 Acquis
Il est difficile de résumer en quelques lignes les acquis de neufs mois passés au sein d’un
laboratoire d’informatique. J’ai découvert le monde de la recherche, totalement inconnu
jusqu’alors. Le travail des chercheurs et des doctorants, de leurs méthodes et de leur
environnement complémentaire à celui de l’entreprise. Derrière l’acronyme ECD se cachent
de nombreux concepts et en particulier lorsqu’il s’agit de découvrir de la connaissance
nouvelle, non triviale et non intuitive mais bien réelle. De l’évaluer ensuite par des mesures
d’intérêt. Je me suis documenté pour comprendre les fondements et les techniques utilisées en
ECD. Sur le plan pratique, nous avons réalisé un système client serveur pour extraire et
visualiser des règles d’association à partir d’une table de données. Il m’a fallu considérer les
aspects techniques (C/C++, OpenGL, SQL) et les méthodes sur lesquelles le développement
d’applications est basé (UML, gestion des sources). Les considérations techniques,
mathématiques et physiques pour développer ce prototype d’extraction et de visualisation de
règles ont été nombreuses. Mes travaux m’ont suscité bien des interrogations avec la nécessité
parfois, de « revisiter » avec bénéfices, mes connaissances tant théoriques que pratiques. Ce
fut le cas notamment pour la programmation en langage C et la géométrie tridimensionnelle.
96
5.2 Perspectives
Nous sommes conscients avoir exploré qu’une infime partie de ce vaste domaine que
représente la visualisation de l’information. En ECD, découvrir de la connaissance à l’aide
d’un encodage graphique spécifique pour représenter des données brutes reste une tâche
complexe. Tout d’abord parce que les variables graphiques (taille, luminosité, position, forme,
etc.) doivent traduire virtuellement à partir de données réelles une représentation intellectuelle
abstraites. Ce concept cache entre le réel et l’abstrait une multitude de scénarii possibles pour
représenter l’information. En ECD, l’utilisation de la visualisation de l’information pour la
fouille de données est un champ de recherche immense. Notre métaphore apporte une
première solution en encodant quatre mesures d’intérêt, et il est certain, que de nombreuses
améliorations ou modifications sont encore possibles :
- par des moyens de fouilles interactives qui n’ont pas pu être implémentées
dans le système par manque de temps et nécessiteraient encore de long moment
de développement.
- Naviguer dans les données. Dans l’outil de visualisation ARVis, les règles de
voisinage spécifient ou généralisent des ensembles de règles. Spécifier ou
généralisé un sous-ensemble de règles revient alors à ajouter ou respectivement
à soustraire un item de l’itemset. Ces relations étudient des phénomènes de plus
en plus particuliers ou de plus en plus globaux.
97
Enfin, nous noterons qu’en visualisation de l’information et notamment en ECD, seule une
phase d’expérimentation auprès des experts métier, permet de valider l’efficacité de l’outil
proposé. Le domaine de la visualisation de l’information associées à la fouille de donnés en
ECD sont des axes de recherche ouverts. Les possibilités de représenter l’information par des
techniques avancées n’a de limites que par l’imagination de l’homme. Les chemins restant à
explorés dans ce domaine semblent alors infinis.
98
Liste des tableaux
100
Bibliographie
ABISROR J.M., 2002. VRML97 sous Java-OpenGL. Mémoire d’Ingénieur CNAM, Juin.
url : http://cedric.cnam.fr/PUBLIS/RC396.pdf
AGGARWAL C. C., 2002. Towards effective and interpretable data mining by visual
interaction SIGKDD Explorations, 3, 11-22.
AGRAWAL R., IMIELINSKI T., SWAMI A., 1993. Mining association rules between sets of
items in large databases. In Proceedings of the ACM SIGMOD International Conference on
Management of Data, Washington D.C., 207–216.
url: http://rakesh.agrawal-family.com/papers/sigmod93assoc.pdf.
BEN-SAID Z., GUILLET F., RICHARD P., 2010. Classification des techniques de fouille
visuelle de données en 3d et réalité virtuelle. In EGC.
BEN SAID Z., GUILLET F., RICHARD P., 2010. 3D visualization and virtual reality for
visual data mining : A survey. In International Conference on Information Visualization
Theory and Applications (IVAPP'10), 2010.
BLANCHARD J., GUILLET F., BRIAND F., GRAS R., 2005. Assessing rule interestingness
with a probabilistic measure of deviation from equilibrium. In Proceedings of the 11th
international symposium on Applied Stochastic Models and Data Analysis ASMDA, 191–200.
url: http://conferences.telecom-bretagne.eu/asmda2005/IMG/pdf/proceedings/191.pdf.
BERTIN J., Sémiologie graphique. Les diagrammes. Les réseaux. Les cartes, Archives des
sciences sociales des religions, 1968, vol. 26, n° 1, p. 176-177.
CHEVRIN V., COUTURIER O., MEPHU NGUIFO E., ROUILLARD J., 2007. Recherche
anthropocentrée de règles d’association pour l’aide à la décision. Université d'Artois, CRIL
IUT de Lens, France.
101
FAYYAD U.M. GRINSTEIN G.G., WIERSE A., 2001. Information visualization in data
mining and knowledge discovery. San Francisco: Morgan Kaufmann publishers
FULE P., RODDICK J.F., 2004. Experiences in building a tool for navigating association
rule result sets. In CRPIT’04: Proceedings of the second Australasian workshop on
information security, data mining, web intelligence, and software internationalization
(HOGAN J., MONTAGE P., PURVIS M., STEKETEE C.), Eds, Computer Society, p. 103-
108.
FUCHS P., MOREAU G., PAPIN J., 2001. Le traité de la réalité virtuelle. Les presses de
l’école des Mines de Paris.
TONIC F., (2010). Base de données, choisir et optimiser, Revue Programmez, Janvier, 16-20
JOHNSON A., LEIGH J., Tele-immersive collaboration in the CAVE research network. In
Collaborative Virtual Environments digital places and spaces for interaction (E. Churchill, D.
Snowdon & A. Munro, Eds. Springer-Verlag, 2001, p. 225–243.
KLEIBERG E., VAN DE WETERING H., WIJK J. J. V., 2001. Botanical visualization of
huge hierarchies. In INFOVIS’01: Proceedings of the IEEE Symposium on Information
Visualization (INFOVIS’01), IEEE Computer Society, 87–94.
KUNTZ P., LEHN R., GUILLET F., PINAUD B., 2006. Découverte interactive de règles
d’association via une interface visuelle. Visualisation en Extraction des Connaissances. Eds,
Cépaduès, LINA-COD, 113-125.
url: http://hal.archives-ouvertes.fr/docs/00/33/59/51/PDF/visu-RNTI2611.pdf
LEHN R., 2000. Un système interactif de visualisation et de fouille de règles pour l’extraction
connaissances dans les bases de données. Thèse de docteur es-Informatique. Université de
Nantes.
102
LIU B., HSY W., CHEN S., 1997. Using general impressions to analyze discovered
classification rules. In Proceedings of the 3rd international conference on knowledge
discovery and data mining.
url: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.51.8236&rep=rep1&type=pdf.
LIU B., HSY W., MA Y. Pruning and summarizing the discovered associations. In
proceedings of the fifth ACM SIGKDD international conference on Knowledge discovery and
data mining (KDD-99), 125–134.
url: http://www.cs.uic.edu/~liub/publications/papers_topics.html
MA Y., LIU B., WRONG C.K., 2000. Web for data mining: organizing and interpreting the
discovered rules using the web. SIGKDD Explorations, 2, 16-23.
MUNZNER T., 2000. Interactive visualization of large graphs and networks, PhD thesis,
Stanford University.
TAN P.N., KUMAR V., SRIVASTAVA J., 2002. Selecting the right objective measure for
association patterns. Actes ACM SIGKDD. In international conference of knowledge
discovery and data mining. Edmonton, Canada.
TAN P.N., KUMAR V., SRIVASTAVA J., 2004. Selecting the right objective measure for
association analysis. Information Systems, 29, 293–313.
url: http://www.cse.msu.edu/~ptan/papers/IS.pdf.
WEGMAN J., SYMANZIK J., 2002. Immersive projection technology for visual data mining.
Journal of Computational and Graphical Statistics 1, 163-188.
ZAHER, M. H. Programmer en C++ avec PostgreSQL & Visual C++. Association Tunisienne
des Logiciels Libres, 2002.
ZAKI M. J., HSIAO C. J., 2002. CHARM: An efficient algorithm for closed itemset mining. In
Proceedings of the Second SIAM International Conference on Data Mining. Arlington, 1-17.
url: http://making.csie.ndhu.edu.tw/course/2008/Spring/Data_Mining/paper/sdm02-27.pdf.
103
Lexique
A
Aprori
- algorithme d’extraction de règles d’associations [Agrawal and Srikant, 1994].
ARVis
- acronyme pour Association Rules visualization : logiciel de visualisation de
règles d’association dans une scène 3D basée sur la technologie VRML.
API
- acronyme pour “Application Programming Interface”.
B
BdD
- acronyme pour “Base de données ».
C
CATIA
- acronyme pour « Conception Assistée Tridimensionnelle Interactive
Appliquée »
Confiance
- pourcentage d’itemsets contenant la prémisse d’une règle qui contiennent aussi
la conclusion.
CSV
- acronyme pour "Comma-Separated Values". Format simple de stockage de
données sous la forme d’articles et de champs délimités par des séparateurs.
E
ECD
- acronyme pour « Extraction de Connaissances dans les Données ». Également
appelée data-mining" ou "fouille de données". "Extraction non triviale de
connaissances implicites, inconnues au préalable et potentiellement
intéressantes contenues dans des données" [Frawley et al., 1992]. Domaine de
connaissance couvrant les différentes techniques de recherche de
connaissances par des moyens informatiques dans de grands volumes de
données.
I
Item
- valeur (ou modalité) particulière d’un attribut.
Itemset
- ensemble d’items.
Itemset fréquent
- itemset dont le support est supérieur au support minimal défini au préalable.
L
Lift
- mesure liée à la dépendance des liens existants entre la prémisse et la
conclusion d’une règle d’association.
O
OpenGL
- acronyme pour « Open Graphics Library » c’est une spécification qui définit
une API multiplate-forme pour la conception d'applications générant des
images 3D.
104
P
PMML
- acronyme pour "Predictive Model Markup Language". Format d’échange de
données en data-mining basé sur la syntaxe XML.
S
Support
- pour une règle : nombre de transactions qui vérifient la règle. Pour un itemset :
nombre de transactions comportant tous ses items.
R
RV
- réalité virtuelle : simulation informatique interactive, immersive, visuelle,
sonore et/ou haptique, d’environnements réels ou imaginaires.
S
SGBD
- Système de gestion de bases de données.
U
UML
- acronyme pour "Unified Modeling Langage". Norme de définition des données
et des traitements sous forme de graphes suivant une méthodologie objet.
Facilite la conception d’applications par des méthodes graphiques rendant la
communication entre les différents acteurs du projet plus aisée et par
l’intégration des concepts objet (héritage, polymorphisme).
V
VRML
- acronyme pour « Virtual Reality Modeling Language ». C’est st un langage de
description d'univers virtuels en trois dimensions.
105
Résumé
Ce mémoire s’intéresse à la visualisation de règles d’association dans une représentation
tridimensionnelle. Nous abordons une problématique en fouille de données qui consiste à faire
face aux gros volumes de règles extraites par les algorithmes classiques. Pour ce faire, nous
cherchons à insérer l’utilisateur dans la boucle de recherche de la connaissance par une
représentation graphique interactive. La visualisation de l’information diminue l’effort
cognitif de l’utilisateur pour évaluer et valider les règles. En ECD, la difficulté de la fouille
visuelle de données est alors de traduire les données brutes abstraites sous formes graphiques
concrètes, compréhensibles et porteuses de sens. Ce concept relève de la métaphore. La partie
bibliographique décrit l’outillage théorique et technique disponible : les algorithmes
d’extraction et les différentes méthodes de visualisation de l’information empruntées aux
techniques de réalité virtuelle.
La partie réalisation décrit l’outil d’extraction qui interroge une base de données PostgreSQL.
La partie sur la visualisation 3D présente la nouvelle métaphore de règles et les mesures qui la
définissent. Nous implémentons une mesure objective FREITAS A .A, (1998) qui montre
l’importance de l’interaction entre les attributs. Cette notion cruciale dans la recherche de la
connaissance n’est pas très répandue dans la littérature. Dans notre métaphore, elle offre une
lecture directe des différents types de règles qui portent de l’intérêt, en mesurant le gain
d’information apporté par chacun des attributs qu’elle comporte.
Abstract
The purpose of this report is to provide a three-dimensional graphic representation solution
for association rules. The principal disadvantage in the process of rule generation from
databases is the huge volumes of rules extracted by classic algorithms. Our approach aims at
integrating the human in the data exploration process. To do it, we try to insert the user like a
decision-maker into a search loop for the knowledge discovering by an interactive graphic
representation. The information visualization greatly reduces the cognitive effort for user in
charge of estimate and validation rules extracted. In ECD, the difficulty of the visual data
mining is then to translate raw abstract data into concrete shapes graphic. This concept is
based on metaphor. The related works part presents the available tools and techniques: extract
association rules algorithms and methods to display information on screen or using virtual
reality.
The realization part describes the extraction tool using a PostgreSQL database. The
visualization part presents a new metaphor for rules description and measures. We implement
an objective measure FREITAS A .A, (1998) which shows the importance of the interaction
between the attributes belonging to the rule antecedent. This key concept of data mining has
been relatively little investigated in the literature. Our metaphor offers a direct reading of the
various kinds of rules who carry interest by measuring the information gain through each
individual attributes.
106