UNIVERSITE DU QUEBEC EN OUTAOUAIS
VISUALISATION DES RESULTATS D’UNE FOUILLE DE DONNEES DANS
LES TREILLIS DE CONCEPTS
MEMOIRE
PRESENTE
COMME EXIGENCE PARTIELLE
DE LA MAITRISE EN INFORMATIQUE
PAR
GENEVIEVE ROBERGE
JUIN 2007
UNIVERSITE DU QUEBEC EN OUTAOUAIS
Departement d’informatique et d’ingenierie
Ce memoire intitule :
VISUALISATION DES RESULTATS D’UNE FOUILLE DE DONNEES DANS
LES TREILLIS DE CONCEPTS
presente par
Genevieve Roberge
pour l’obtention du grade de maıtre es science (M.Sc.)
a ete evalue par un jury compose des personnes suivantes :
Dr. Rokia Missaoui . . . . . . . . . . . . . . . . . . . . . . . . . . . Directeur de recherche
Dr. Jurek Czyzowicz . . . . . . . . . . . . . . . . . . . . . . . Codirecteur de recherche
Dr. Karim El Guemhoui . . . . . . . . . . . . . . . . . . . . . . . . . . . President du jury
Dr. Alain Charbonneau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Membre du jury
Memoire accepte le : 15 juin 2007
Remerciements
Je tiens a remercier mes superviseurs Rokia Missaoui et Jurek Czyzowicz pour leur
soutien dans mon travail au cours des deux annees pendant lesquelles j’ai travaille
sur ce memoire. Leur expertise et leurs conseils m’ont ete fort utiles.
Merci aussi a Alain Charbonneau et Karim El Guemhioui pour le temps qu’ils m’ont
consacre en tant que membres de mon jury et pour leurs commentaires pertinents.
Je veux aussi remercier le Conseil de recherches en sciences naturelles et en genie
du Canada (CRSNG) pour le support financier genereux dont j’ai beneficie et qui
m’a permis de me consacrer pleinement a ma maıtrise.
Le Canadian Distributed Mentor Project (CDMP) a aussi toute ma reconnaissance
pour la bourse qu’il m’a accordee lors d’une phase preliminaire a ce travail, qui m’a
servi de tremplin pour l’elaboration de ce memoire.
Enfin, je remercie egalement ma famille et mes amis qui ont su me soutenir et etre
presents au cours des deux dernieres annees.
Table des matieres
Remerciements i
Liste des figures v
Liste des tableaux vii
Resume viii
1 Introduction 1
1.1 Problematique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Methode de representation . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Methode de decomposition . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Methodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3.1 Methode de representation . . . . . . . . . . . . . . . . . . . . . . 3
1.3.2 Methode de decomposition . . . . . . . . . . . . . . . . . . . . . . 4
1.3.3 Prototype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
iii
2 Fouille de donnees 5
2.1 Taches de la fouille de donnees . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Regroupement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.2 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.3 Regle d’association . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.4 Analyse en composantes principales . . . . . . . . . . . . . . . . . 8
2.2 Analyse formelle de concepts . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.1 Contexte formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.2 Concept formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.3 Treillis de concepts . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3 Etat de l’art 14
3.1 Visualisation de l’information . . . . . . . . . . . . . . . . . . . . . . . . 14
3.1.1 Attributs visuels preattentifs . . . . . . . . . . . . . . . . . . . . . 15
3.1.2 Recherche visuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1.3 Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2 Representation des treillis de concepts . . . . . . . . . . . . . . . . . . . 27
3.2.1 Affichage de treillis . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2.2 Decomposition de treillis de concepts . . . . . . . . . . . . . . . . 30
3.2.3 Outils de visualisation des treillis de concepts . . . . . . . . . . . 34
4 Methode de representation 37
4.1 Selection des elements de visualisation . . . . . . . . . . . . . . . . . . . 37
4.1.1 Informations ciblees pour la visualisation . . . . . . . . . . . . . . 37
4.1.2 Attributs visuels choisis . . . . . . . . . . . . . . . . . . . . . . . 38
4.1.3 Methodes de navigation choisies . . . . . . . . . . . . . . . . . . . 40
4.2 Experimentation par des utilisateurs . . . . . . . . . . . . . . . . . . . . 44
iv
4.2.1 Deroulement des tests . . . . . . . . . . . . . . . . . . . . . . . . 45
4.2.2 Resultats et analyse des resultats . . . . . . . . . . . . . . . . . . 45
4.3 Affichage des treillis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.3.1 Limites rencontrees . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.3.2 Structures particulieres . . . . . . . . . . . . . . . . . . . . . . . . 54
4.3.3 Affichage general . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5 Methode de decomposition 62
5.1 Contextes utilises pour l’experimentation . . . . . . . . . . . . . . . . . . 62
5.2 Experimentation d’algorithmes existants . . . . . . . . . . . . . . . . . . 63
5.2.1 Decomposition sous-directe . . . . . . . . . . . . . . . . . . . . . 63
5.2.2 Decomposition par parcours en largeur . . . . . . . . . . . . . . . 64
5.2.3 Decomposition par analyse en composantes principales . . . . . . 64
5.3 Proposition d’une methode de decomposition . . . . . . . . . . . . . . . . 65
5.3.1 Caracteristiques souhaitees . . . . . . . . . . . . . . . . . . . . . . 65
5.3.2 Description de l’algorithme . . . . . . . . . . . . . . . . . . . . . . 66
5.3.3 Experimentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.4 Proposition d’une methode d’ordonnancement . . . . . . . . . . . . . . . 76
5.4.1 Conversion des donnees . . . . . . . . . . . . . . . . . . . . . . . . 77
5.4.2 Ordonnancement . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6 Conclusion 80
A Lattice Miner : Impressions d’ecran 82
Bibliographie 90
Liste des figures
2.1 Exemple : Clients d’une banque . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Arbre de decision quant au niveau de risque . . . . . . . . . . . . . . . . 8
2.3 Calcul des composantes principales . . . . . . . . . . . . . . . . . . . . . 9
2.4 Exemple d’un contexte [22] . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.5 Treillis de concepts associe au contexte de la figure 2.4 . . . . . . . . . . 12
3.1 Faible contraste [51] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2 12 couleurs plus faciles a distinguer [51] . . . . . . . . . . . . . . . . . . . 16
3.3 Proprietes des formes [51] . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.4 Illustration de la loi de la continuite . . . . . . . . . . . . . . . . . . . . . 18
3.5 Illustration de la loi de la fermeture . . . . . . . . . . . . . . . . . . . . . 18
3.6 Mauvaise combinaison d’attributs visuels [51] . . . . . . . . . . . . . . . 20
3.7 Integration des attributs : cartes d’attributs et carte globale . . . . . . . 21
3.8 Exemple montrant l’efficacite de la recherche . . . . . . . . . . . . . . . . 23
3.9 Exemples de geons [7] . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.10 Utilisation des geons (gauche) pour representer un diagramme UML (droite)
[25] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.11 Vue fisheye appliquee a un graphe [40] . . . . . . . . . . . . . . . . . . . 25
3.12 Mur de perspective [32] . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.13 Profondeur de champ semantique [31] . . . . . . . . . . . . . . . . . . . . 27
vi
3.14 Diagrammes additifs [13] . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.15 Construction d’un diagramme imbrique . . . . . . . . . . . . . . . . . . . 30
3.16 Exemple d’une decomposition sous-directe . . . . . . . . . . . . . . . . . 31
3.17 Exemple d’une decomposition par atlas . . . . . . . . . . . . . . . . . . . 32
3.18 Exemple d’une decomposition horizontale . . . . . . . . . . . . . . . . . . 33
4.1 Ensemble des couleurs choisies . . . . . . . . . . . . . . . . . . . . . . . . 38
4.2 Vue entiere d’un concept et vue en coupe . . . . . . . . . . . . . . . . . . 39
4.3 Utilisation du flou pour montrer les concepts lies . . . . . . . . . . . . . . 41
4.4 Structure cubique d’un treillis booleen a quatre attributs . . . . . . . . . 55
4.5 Structures cubiques incompletes de treillis a cinq attributs . . . . . . . . 56
4.6 Positionnement des concepts : plus haut niveau possible (gauche) et selon
la cardinalite de l’intention (droite) . . . . . . . . . . . . . . . . . . . . . 57
4.7 Structures fixees pour les treillis a quatre niveaux . . . . . . . . . . . . . 58
4.8 Disposition des concepts dirigee par la position des parents . . . . . . . . 61
5.1 Contexte concernant les clients d’une banque . . . . . . . . . . . . . . . . 69
5.2 Execution de l’algorithme de decomposition pour diagrammes imbriques . 70
5.3 Treillis resultant d’une decomposition non ideale . . . . . . . . . . . . . . 71
5.4 Treillis resulant d’une decomposition ideale . . . . . . . . . . . . . . . . . 72
A.1 Editeur de contextes binaires . . . . . . . . . . . . . . . . . . . . . . . . . 82
A.2 Editeur de contextes pour diagrammes imbriques . . . . . . . . . . . . . 83
A.3 Fenetre de visualisation des treillis de concepts . . . . . . . . . . . . . . . 84
A.4 Vue de l’interieur d’un concept . . . . . . . . . . . . . . . . . . . . . . . . 85
A.5 Vue arborescente du diagramme imbrique . . . . . . . . . . . . . . . . . . 86
A.6 Outil de projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
A.7 Outil de recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
A.8 Outil de modification de la structure du treillis . . . . . . . . . . . . . . . 89
Liste des tableaux
4.1 Resultats des tests d’utilisateurs . . . . . . . . . . . . . . . . . . . . . . . 46
5.1 Composition des contextes . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2 Details des decompositions non ideales . . . . . . . . . . . . . . . . . . . 76
5.3 Contexte divise en deux sous-contextes . . . . . . . . . . . . . . . . . . . 77
5.4 Conversion de deux sous-contextes en attributs multivalues . . . . . . . . 78
Resume
Les treillis de concepts (Galois) offrent un cadre theorique interessant pour la decou-
verte de connaissances sous forme de regroupements et de regles d’association a partir
d’un ensemble de donnees. Cependant, leur affichage peut s’averer encombrant et illisible
en presence de donnees meme en quantite modeste. Cela entraıne une grande perte de
temps et de ressources puisqu’un etre humain, meme s’il est expert en treillis de concepts
ou familier avec le domaine d’application, ne peut valablement profiter de la force des
treillis de concepts qu’au prix de manipulations longues et fastidieuses.
De nombreux travaux ont ete effectues, surtout dans le domaine de la psychologie, dans
le but de decouvrir le fonctionnement de l’appareil visuel humain et ainsi comprendre
ce qui capte l’attention et de quelle facon l’information est acquise dans une image.
Plusieurs liens ont bien sur ete faits avec le domaine de la visualisation de l’information
et pourraient tres certainement etre appliques a la visualisation des treillis de concepts.
L’objectif de cette recherche est d’etablir ce lien souvent insuffisant par l’elabora-
tion d’un ensemble de mecanismes de representation visuelle et conviviale des treillis de
concepts. Des elements visuels de base ont bien sur ete traites, comme des techniques
d’affichage bien adaptees aux processus cognitifs de l’etre humain. De meme, des ope-
rations de decomposition et de reconstruction de treillis de concepts ont ete exploitees
pour faciliter la visualisation et l’interpretation de treillis complexes.
Chapitre 1
Introduction
1.1 Problematique
La fouille de donnees, sous toutes ses facettes, permet certainement de decouvrir,
dans un ensemble volumineux de donnees, des connaissances fort interessantes qu’un
etre humain aurait ete dans l’impossibilite de trouver par lui-meme. Toutefois, si les
connaissances produites sont a leur tour en tres grande quantite, elles resteront difficile
a apprehender et pourront en ce sens ne pas etre transmises aux personnes interessees.
Les treillis de concepts ne sont pas a l’abri de ce probleme. Un treillis de concepts
representant un grand ensemble de donnees peut posseder des centaines de noeuds et
donc des centaines d’arcs entre ses noeuds. Il suffit de regarder la taille du treillis de
la figure 2.5 (cf. chapitre 2), qui est produit par un ensemble de donnees de tres petite
taille, pour avoir une bonne idee de l’ampleur que peut avoir le treillis associe a un
grand ensemble de donnees. Une personne pourra ainsi etre tres habituee a la structure
de donnees et tout de meme avoir beaucoup de mal a voir les relations importantes dans
le graphe.
A ce jour, quelques outils ont ete developpes pour permettre de visualiser des treillis
de concepts, mais la plupart d’entre eux n’accordent pas une tres grande importance au
probleme de la visualisation des treillis volumineux. De plus, ces applications sont en
general complexes et seraient difficiles a utiliser par un utilisateur non averti, bien que
les treillis de concepts aient le potentiel de servir un eventail de domaines tres varie.
Enfin, un grand manque a combler dans les outils existants provient du fait qu’ils ne
Chapitre 1 : Introduction 2
profitent que tres peu des techniques de visualisation efficace qui permettent de faire
mieux ressortir l’information pertinente et qui ont ete proposees par des experts du
domaine.
Un outil interessant en serait certainement un qui etablirait le lien manquant entre les
travaux effectues dans le domaine de la visualisation de l’information et ceux effectues
dans le domaine de l’analyse formelle de concepts. Ainsi, l’information qui doit retenir
l’attention de l’utilisateur, en particulier les relations et regroupements dans les donnees,
serait efficacement mise en evidence et la quantite de temps investie dans la navigation
du treillis pour trouver cette information pourrait etre reduite de maniere significative.
1.2 Objectifs
Comme suggere dans la presentation de la problematique, l’objectif principal de ce
memoire est d’etablir une methode de visualisation des treillis de concepts qui soit plus
conviviale et qui rende plus efficace le processus de decouverte d’information. D’apres les
recherches effectuees, deux objectifs secondaires s’imposent pour y parvenir. D’abord,
un lien doit etre fait entre les principes de visualisation efficace et la visualisation de
treillis. Nous avons egalement juge necessaire d’etablir une methode de decomposition
de treillis automatisee pour permettre l’imbrication de treillis d’une maniere efficace et
conviviale.
1.2.1 Methode de representation
La methode de representation proposee doit permettre a une personne de reperer
rapidement l’information interessante dans un treillis. La methode doit donc etre basee
sur les principes de visualisation preattentive, de sorte a diriger l’attention aux bons
endroits de l’image : cela concerne certainement le choix des elements visuels et aussi
leur agencement. Il est egalement souhaitable que le graphe affiche soit le plus esthetique
possible, puisque cela a un impact sur la facilite qu’a un etre humain a comprendre un
graphe. Enfin, comme le treillis de concepts est une structure permettant la fouille de
donnees, nous devons suggerer une methode de representation qui sait mettre en valeur
les elements importants de la fouille de donnees, c’est-a-dire les regroupements et les
liens presents dans les donnees.
Chapitre 1 : Introduction 3
1.2.2 Methode de decomposition
En se basant sur le principe de “diviser pour regner”, qui vise a decomposer un pro-
bleme complexe en sous-problemes, l’utilisation des diagrammes imbriques s’est montree
utile pour l’affichage de treillis volumineux. Ainsi, la quantite d’information presente
a chaque niveau d’imbrication se trouve reduite, ce qui diminue l’effort requis pour la
comprehension du diagramme affiche. Il s’est donc avere necessaire de proposer, utiliser
et valider quelques techniques de decomposition de treillis. Bien sur, il aurait ete possible
de ne pas se soucier de cet aspect et toujours laisser l’utilisateur determiner la facon de
partitionner le treillis, mais cela aurait ete a l’encontre de notre objectif principal qui
est de rendre plus conviviale l’utilisation des treillis de concepts dans la visualisation
des resultats d’une fouille de donnees. Ainsi, la methode de decomposition de treillis
doit calculer elle-meme les treillis partiels necessaires a la construction du diagramme
imbrique et suggerer un ordre d’imbrication de ces treillis pour faire ressortir le plus
d’informations interessantes possibles. Ceci dit, la decomposition manuelle du treillis
doit rester possible pour les utilisateurs (plus a l’aise avec le domaine d’application) qui
voudraient eux-memes partionner le treillis initial.
1.3 Methodologie
Les methodes ciblees pour atteindre nos objectifs se separent en trois categories. Bien
sur, des methodes distinctes ont ete prevues pour les deux objectifs secondaires (c’est-
a-dire la methode de representation et la methode de decomposition), mais nous avons
egalement eu a mettre sur pied un prototype servant a supporter notre demarche.
1.3.1 Methode de representation
Une evaluation des besoins d’utilisateurs potentiels devait certainement etre effectuee
afin (1) d’etablir les elements importants a ajouter aux methodes existantes et (2) de
decouvrir les elements a mettre en valeur dans un environnement de visualisation des
treillis de concepts. Puis, pour chacun des elements releves, il fallait faire le parallele
avec les techniques de visualisation efficace les plus appropriees pour chaque situation.
Certains tests ont donc du etre faits pour selectionner les meilleures techniques. L’evalua-
tion de la qualite de la methode de representation de l’information a ensuite ete conduite
Chapitre 1 : Introduction 4
aupres d’un ensemble d’utilisateurs constitue des deux groupes disjoints suivants : ceux
qui ont connaissance du domaine de l’analyse formelle de concepts et ceux qui n’en ont
pas.
1.3.2 Methode de decomposition
La premiere etape a effectuer en ce qui concerne la methode de decomposition de
treillis de concepts a ete d’implementer les algorithmes de decomposition les plus im-
portants. Des tests comparatifs ont alors pu etre effectues afin de determiner si une
methode etait plus interessante qu’une autre. Nous avions determine qu’une methode
de decomposition serait tres interessante si elle permettait de partitionner un treillis en
groupes semantiquement interpretables. Une autre mesure d’interet etait egalement la
capacite de partitionner les ensembles de donnees de diverses natures (ex. densite des
donnees). Egalement, la taille des treillis partiels obtenus etait a considerer puisqu’il est
desirable d’avoir des treillis de petite taille. Enfin un dernier critere d’evaluation etait la
possibilite ou non de choisir le nombre de treillis partiels qui resultent de la decomposi-
tion. Nous nous sommes concentre egalement sur le developpement et l’experimentation
d’une nouvelle methode de decomposition qui tient compte des correlations existantes
entre les attributs.
1.3.3 Prototype
Afin de verifier les hypotheses que nous avons avancees, surtout en ce qui concerne
la methode de representation a proposer, nous avons eu a construire un prototype, que
nous avons nomme Lattice Miner. Cette application est specialisee dans l’affichage de
diagrammes imbriques et elle supporte les operations de base pour la saisie des donnees
initiales. Bien sur, elle permet aussi l’evaluation des differentes methodes retenues pour
la decomposition d’un treillis.
Chapitre 2
Fouille de donnees
L’analyse des donnees contenues dans une base de donnees volumineuse est en general
une tache ardue, voire impossible, pour un etre humain. L’ordinateur, par sa puissance
de calcul, est beaucoup plus apte a resumer les grandes quantites d’information. Il peut y
extraire des regles, des motifs et regroupements frequents ; en bref, il arrive plus efficace-
ment que l’humain a decouvrir les relations entre les donnees. Une fois ces connaissances
extraites des donnees, l’etre humain peut alors proceder a la recherche des connaissances
pertinentes, une activite pour laquelle il est cette fois-ci souvent plus efficace que l’ordina-
teur. Ce processus d’extraction de connaissances a partir de grandes masses de donnees
est precisement l’objet de la fouille de donnees.
2.1 Taches de la fouille de donnees
Les taches que l’on voudra accomplir par fouille de donnees sont, entre autres, la de-
couverte de regroupements, la classification des donnees ainsi que la recherche de regles
d’association. Ces differentes taches sont explicitees dans les sections qui suivent. Nous
presenterons egalement l’analyse en composantes principales qui est une methode utilisee
pour reduire la taille des donnees de sorte a les rendre plus facile a gerer lors de l’analyse.
Chapitre 2 : Fouille de donnees 6
2.1.1 Regroupement
Definition 2.1. Un regroupement est une repartition des donnees en groupes ( clusters)
ou les elements d’un meme groupe sont lies par un haut niveau de similarite. Les elements
de deux groupes distincts doivent presenter un haut niveau de divergence.
Le regroupement des donnees vise donc a separer les enregistrements d’un ensemble
de donnees en differents groupes non necessairement disjoints, selon une mesure de simi-
litude entre ceux-ci. Il est important de construire des groupes contenant des elements
les plus semblables possible tandis que les elements issus de groupes differents sont aussi
differents que possible. La similitude entre deux enregistrements est alors calculee en
fonction de la valeur associee aux differents attributs qui les caracterisent.
On dit que la decouverte de regroupements est une methode non supervisee. Cela
signifie qu’aucune intervention de l’utilisateur n’est demandee : le processus comparera
les donnees entre elles afin de creer les differents groupes.
2.1.2 Classification
Definition 2.2. La classification est une technique qui vise a predire, pour un enre-
gistrement donne, la valeur d’un attribut de classification en fonction de la valeur des
autres attributs de l’enregistrement.
La classification est donc une methode similaire a la recherche de regroupements en ce
sens qu’elle vise a separer les donnees en differents groupes - ou classes. Dans ce cas-ci
toutefois, la methode est dite supervisee : l’utilisateur devra intervenir pour indiquer
quelles sont les classes possibles. L’information quant a l’appartenance a une classe ou a
une autre constitue alors la valeur d’un attribut special nomme l’attribut de classification.
Le but de la classification sera alors de determiner quelles sont les conditions, selon les
donnees existantes, pour qu’un enregistrement soit associe a une classe donnee. Une fois
ces conditions etablies, la classe associee a un nouvel enregistrement pourra etre predite
sur la base de la valeur des autres attributs.
Une methode utilisee pour faire la classification est la construction d’arbres de decision.
Ces arbres sont construits en attribuant un ordre entre les attributs, selon leur pouvoir
Chapitre 2 : Fouille de donnees 7
de prediction de la valeur de l’attribut de classification. Chaque attribut est egalement
partitionne en divers ensembles de valeurs qui constituent les etapes de decision quant
a la classe d’un enregistrement. Ainsi, selon l’appartenance d’un enregistrement a un
certain ensemble de valeurs pour le premier attribut, on pourra verifier a quel ensemble
de valeurs du deuxieme attribut il correspond et ainsi de suite jusqu’a parvenir a la
valeur de l’attribut de classification.
La figure 2.2 montre l’exemple d’un arbre de decision construit a partir des donnees
de la figure 2.1 et en prenant l’attribut Risque comme attribut de classification.
No Revenu Passe financier Dette Risque
1 < 15K mauvais elevee haut2 15K - 35K inconnu elevee haut3 15K - 35K inconnu faible moyen4 < 15K inconnu faible haut5 > 35K inconnu faible faible6 > 35K inconnu faible faible7 < 15K mauvais faible haut8 > 35K mauvais faible moyen9 > 35K bon faible faible10 > 35K bon elevee faible11 < 15K bon elevee haut12 15K - 35K bon elevee moyen13 > 35K bon elevee faible14 15K - 35K mauvais elevee haut
Fig. 2.1 – Exemple : Clients d’une banque
2.1.3 Regle d’association
Definition 2.3. Une regle d’association est une regle d’implication de la forme Y1 ⇒ Y2
ou Y1 et Y2 sont des ensembles de valeurs d’attributs. Une telle regle est egalement
caracterisee par un support et une confiance. Le support est la probabilite d’avoir a la
fois Y1 et Y2 et la confiance est la probabilite d’avoir Y2 lorsque Y1 est present.
Dans l’exemple de la figure 2.1, on retrouve entre autres la regle d’association suivante :
{(Revenu ∈ [15K - 35K])} ⇒ {(Risque = moyen)}. Le support de cette regle est 2/14 car
deux individus sur les quatorze de l’ensemble de donnees possedent les valeurs d’attributs
Chapitre 2 : Fouille de donnees 8
Fig. 2.2 – Arbre de decision quant au niveau de risque
presentes dans la regle. Quant a la confiance, elle est de 2/4 car deux des quatre individus
qui ont la valeur [Revenu ∈ [15K - 35K]] ont aussi la valeur [Risque = moyen].
2.1.4 Analyse en composantes principales
L’un des problemes qui peut survenir lors de l’analyse des donnees, souvent au mo-
ment de representer graphiquement les donnees, est le nombre trop eleve d’attributs. Par
exemple, pour representer un ensemble de donnees sous forme d’un nuage de points, on
peut retenir uniquement un petit nombre de facteurs. Il convient alors de reduire la di-
mension initiale des donnees (nombre d’attributs) pour obtenir le nombre de dimensions
voulues.
Une technique utilisee pour y parvenir est l’analyse en composantes principales. De
maniere generale, cette technique fonctionne de la maniere suivante. Tout d’abord, la
valeur des donnees de chaque attribut est ajustee en soustrayant a chaque valeur la
valeur moyenne pour l’attribut traite. Ensuite, la covariance de chaque paire d’attributs
(d’apres les donnees ajustees) est calculee et stockee dans une matrice carree. Cette
matrice montre alors les correlations existant entre les attributs. A partir de la matrice
creee, les vecteurs propres sont calcules. Chaque vecteur contient les coefficients d’une
combinaison lineaire des attributs initiaux : c’est une composante decrivant les donnees.
En calculant les valeurs propres associees aux vecteurs trouves, on peut alors determiner
les composantes les plus significatives. Ces composantes sont les vecteurs ayant les plus
Chapitre 2 : Fouille de donnees 9
grandes valeurs propres. Une fois les composantes choisies, il est alors possible de projeter
les donnees initiales sur ces composantes, afin d’obtenir un ensemble de donnees de
dimension reduite.
La figure 2.3 montre le resultat des etapes consecutives accomplies pour calculer les
composantes d’un petit ensemble de donnees. On constate dans cet exemple que la
composante C2 est la composante la plus significative.
Fig. 2.3 – Calcul des composantes principales
2.2 Analyse formelle de concepts
Parmi les differentes techniques de fouille de donnees se trouve l’analyse formelle de
concepts, une discipline plutot jeune qui a ete introduite en 1982 par Rudolf Wille et qui
trouve ses fondements dans la theorie des treillis. Dans le cadre de ce projet, ce qui nous
interesse particulierement de l’analyse formelle de concepts est le treillis de concepts,
une structure importante de cette discipline. Nous allons donc definir dans cette section
les notions essentielles pour la comprehension de cette structure.
2.2.1 Contexte formel
Definition 2.4. Un contexte formel K = (O,A, I) est constitue d’un ensemble d’objets
O, d’un ensemble d’attributs A et d’une relation binaire I ⊆ O × A.
Chapitre 2 : Fouille de donnees 10
Un contexte formel (ou plus simplement un contexte), est normalement represente
sous la forme d’un tableau, comme celui de la figure 2.4, dans lequel les objets sont
representes par les rangees et les attributs (ou proprietes) sont representes par les co-
lonnes. A l’intersection de la rangee i et de la colonne j, une valeur booleenne indique
si (i, j) ∈ I. Lorsque (i, j) ∈ I, on dit que l’objet i possede l’attribut j.
abes
oin
d’e
au
vit
dan
sl’ea
u
vit
sur
late
rre
abes
oin
de
chlo
rophylle
grai
nes
sur
2fe
uille
s
grai
nes
sur
1fe
uille
peu
tbou
ger
ades
jam
bes
oubra
s
alla
ite
ses
enfa
nts
sangsue × × ×breme × × × ×grenouille × × × × ×chien × × × × ×pissenlit × × × ×roseau × × × × ×haricot × × × ×maıs × × × ×
Fig. 2.4 – Exemple d’un contexte [22]
2.2.2 Concept formel
Definition 2.5. La fonction f permet de determiner l’ensemble des attributs qui sont
possedes par un ensemble donne d’objets et, inversement, la fonction g permet de deter-
miner l’ensemble d’objets qui possedent un ensemble donne d’attributs :
f : ℘(O)→ ℘(A), f(X) = {a ∈ A|∀o ∈ X, oIa},
g : ℘(A)→ ℘(O), g(Y ) = {o ∈ O|∀a ∈ Y, oIa}.
Par exemple, en se basant sur le contexte de la figure 2.4, on peut dire que f({chien,
maıs}) = {a besoin d’eau, vit sur la terre}.
Chapitre 2 : Fouille de donnees 11
Definition 2.6. Un concept formel est un couple (X, Y ) ou X ⊆ O et Y ⊆ A, et tel
que X = g(Y ) et Y = f(X).
Cette definition nous indique qu’un concept formel est compose de deux ensembles
fermes sur les operations f et g. Ainsi, si on prend comme ensemble d’objets X1 = {chien,
maıs}, la fonction f nous indique que les attributs possedes par ces deux objets sont
Y = {a besoin d’eau, vit sur la terre}. Par contre, la fonction g appliquee a Y retourne
X2 = {grenouille, chien, roseau, haricot, maıs}. Enfin, comme f(X2) = Y , on en conclut
que (X1, Y ) n’est pas un concept formel, mais que (X2, Y ) en est un. On dit alors que
l’intention de ce concept est X2 et que son extension est Y .
2.2.3 Treillis de concepts
Definition 2.7. Un treillis de concepts B(O,A, I) est un treillis complet resultant de
l’ordre partiel qui existe entre les concepts du contexte K = (O,A, I) :
(X1, Y1) ≤ (X2, Y2)⇔ X1 ⊆ X2 et Y2 ⊆ Y1.
Toujours en utilisant le meme exemple (figure 2.4), on peut illustrer cette definition en
disant que le concept C1 = ({grenouille, chien, roseau, haricot, maıs}, {a besoin d’eau,
vit sur la terre}) est superieur au concept C2 = ({grenouille, roseau}, {a besoin d’eau,
vit dans l’eau, vit sur la terre}) car l’extension de C2 est incluse dans l’extension de C1.
Dans le treillis de concepts de la figure 2.51, les concepts C1 et C2 sont respectivement
representes par le concept #4 et le concept #8. On peut alors facilement voir la relation
d’ordre entre C1 et C2. Lorsque deux concepts sont ainsi en relation dans l’ordre partiel
du treillis (l’un est superieur a l’autre), on dit qu’ils sont comparables.
Definition 2.8. Une borne inferieure (meet) d’un ensemble de concepts est le plus
grand de leurs descendants communs et elle est representee par le symbole ∧. De la
meme maniere, une borne superieure ( join) d’un ensemble de concepts est le plus petit
de leurs ancetres communs et elle est representee par le symbole ∨.1Pour alleger les etiquettes, un attribut est indique seulement la premiere fois qu’il est rencontre a
partir haut du treillis et un objet est indique seulement la premiere fois qu’il est rencontre a partir dubas du treillis. Aussi, le nom des attributs et des objets a ete simplifie.
Chapitre 2 : Fouille de donnees 12
Fig. 2.5 – Treillis de concepts associe au contexte de la figure 2.4
Chapitre 2 : Fouille de donnees 13
Un treillis etant un graphe qui possede une borne superieure ainsi qu’une borne infe-
rieure pour tous ses noeuds, il en est certainement de meme pour un treillis de concepts.
La borne superieure absolue se nomme le supremum et la borne inferieure absolue se
nomme l’infimum. Lorsqu’un concept n’est la borne inferieure d’aucun sous-ensemble
de concepts (contenant plus d’un concept), on le dit irreductible en supremum (join-
irreducible). De la meme maniere, lorsqu’un concept n’est la borne superieure d’aucun
sous-ensemble de concepts (contenant plus d’un concept), on le dit irreductible en in-
fimum (meet-irreducible). Dans le treillis de la figure 2.5, les concepts #6 et #11 sont
respectivement irreductibles en infimum et en supremum.
Il est a noter qu’il est possible d’extraire les regles d’association directement a partir
du treillis, grace a l’ordre partiel qui le constitue. On voit alors, toujours dans l’exemple
de la figure 2.5, que le concept {a besoin d’eau, vit dans l’eau, peut bouger} a comme
parent le concept {a besoin d’eau, peut bouger}, ce qui nous permet d’en deduire la regle
d’association {a besoin d’eau, peut bouger} ⇒ {vit dans l’eau}. Le support (3/8) et la
confiance (3/4) pourront alors etre calcules a l’aide de la cardinalite de l’extension des
deux concepts. En effet, le concept {a besoin d’eau, vit dans l’eau, peut bouger} concerne
trois objets sur les huit du contexte, et il concerne trois des quatre objets du concept {abesoin d’eau, peut bouger}.
Chapitre 3
Etat de l’art
Les travaux importants relies a notre travail sont ceux portant sur la visualisation de
l’information, l’affichage de treillis, la decomposition de treillis de concepts et les outils
existants pour la visualisation des treillis de concepts. Nous presenterons donc dans ce
chapitre un apercu de ce qui a ete fait jusqu’a maintenant dans ces quatre domaines.
3.1 Visualisation de l’information
Avant de presenter les differents travaux les plus pertinents pour ce memoire dans le
domaine de la visualisation de l’information, il importe de preciser en quoi les aspects
de visualisation sont essentiels dans notre travail. Tout d’abord, nous rappelons que le
probleme a resoudre est la difficulte d’exploitation d’un treillis de concepts de taille
relativement grande. Or, lorsqu’il est question d’exploitation d’un treillis de concepts,
il s’agit de voir des relations, des correlations et des structures cachees (patterns). Il
s’agit egalement de rechercher des elements particuliers et de reperer rapidement les
informations les plus pertinentes. Tous ces elements reposent bien sur sur la recherche
visuelle et nous verrons dans les prochaines sections comment celle-ci sera facilitee par
une methode de visualisation efficace.
Chapitre 3 : Etat de l’art 15
3.1.1 Attributs visuels preattentifs
Une notion importante a connaıtre dans le domaine de la visualisation de l’informa-
tion est que le systeme visuel traite l’information en deux phases. Tout d’abord, un
traitement preattentif1 est effectue dans les premieres 200 a 250 millisecondes d’exposi-
tion a une image, suite a quoi la mise au point (focus) s’etablit sur differentes regions
de l’image, nous permettant alors de percevoir distinctement les proprietes particulieres
de chacune d’elles. Pendant le traitement preattentif, un certain nombre de caracteris-
tiques de l’image sont detectees et orientent le traitement focal qui a lieu immediatement
apres. L’utilisation de caracteristiques visuelles preattentives est donc tout a fait appro-
priee dans un environnement concu pour la recherche visuelle puisqu’elles permettent
d’accelerer la recherche en faisant ressortir certains elements d’une image. Un travail tres
etoffe sur ce sujet a ete fait par Ware [51] et a ete utilise comme base pour constituer
les sections qui suivent. Les attributs visuels que nous allons presenter sont : la couleur,
la forme, le mouvement et la position spatiale.
Couleur
La couleur est tres certainement l’attribut visuel preattentif le mieux connu et le plus
utilise. Elle est caracterisee par une teinte et une intensite qui doivent etre maniees avec
soin. Par exemple, on peut imaginer que bleu et jaune sont des couleurs tres distinctes,
pourtant lorsqu’elles ont la meme intensite, elles peuvent ne presenter qu’un tres faible
contraste, comme on peut le voir a la figure 3.1. Aussi, on definit deux canaux chroma-
tiques : le jaune-bleu et le rouge-vert. Les autres couleurs existent autour de ces axes et
aucune relation d’ordre entre elles n’a pu etre etablie, c’est-a-dire que deux personnes
pourront leur attribuer un ordre different et donc donner un sens different a une image
ou une sequence ordonnee de couleurs a ete utilisee. Ainsi, lorsqu’une sequence ordonnee
est requise, il est preferable de faire varier la couleur par sa teinte sur un seul des deux
canaux ou encore par son intensite. Enfin, il est pratique de savoir que la couleur est
particulierement efficace pour etiqueter des elements ou les classer en differents groupes
et pour montrer les variations dans les valeurs successives d’un attribut. Toutefois, lors-
qu’un ensemble de couleurs doit etre choisi, il est approprie de se referer a la charte de
1Le traitement preattentif est le traitement visuel inconscient qui precede la vision attentive. Ilpermet entre autres de determiner les elements de l’image qui attireront ensuite notre attention.
Chapitre 3 : Etat de l’art 16
douze couleurs, presentee a la figure 3.2, qui ont ete determinees comme plus facilement
distinguables2 [6, 51] tout en etant conscient du fait que, en general, entre cinq et dix
couleurs seulement sont correctement percues comme differentes.
Fig. 3.1 – Faible contraste [51]
Fig. 3.2 – 12 couleurs plus faciles a distinguer [51]
Forme
La forme est une autre caracteristique visuelle bien connue. Differentes techniques se
sont montrees efficaces pour distinguer preattentivement deux formes (plusieurs d’entre
elles sont illustrees a la figure 3.33) : une variation de l’orientation, de la longueur, de la
largeur, de la taille ou de la nettete d’une meme forme ; une differenciation des formes
par leur droiture (courbe vs. droit) ; ou l’ajout de marques sur une forme (par exemple,
un cadre). D’autres techniques par contre se sont revelees etre de faible qualite. C’est
le cas de la conjonction ou separation des parties d’une forme et du parallelisme qui ne
2Dans [6] (le document de base), on presente onze couleurs, c’est-a-dire qu’on retrouve une seuleteinte de bleu, mais dans [51], on reprend les memes couleurs et on y ajoute une teinte de bleu.
3Les titres associes aux differentes images ont la signification suivante : Orientation pour orientation,Curved/straight pour droiture, Shape pour forme, Size pour taille, Number pour nombre, Gray/valuepour teinte de gris, Enclosure pour entourage/contour, Convexity/concavity pour convexite/concavite,Addition pour ajout de marques, Juncture pour conjonction/separation, Parallelism pour parallelisme.
Chapitre 3 : Etat de l’art 17
Fig. 3.3 – Proprietes des formes [51]
Chapitre 3 : Etat de l’art 18
sont pas percus facilement par l’oeil humain. Encore ici, on voit qu’il importe de bien
selectionner la technique a utiliser pour bien faire ressortir l’information d’une image.
Un dernier element a mentionner au sujet de la forme est l’existence des proprietes de
continuite et de fermeture mentionnees parmi les lois de Gestalt [30, 52] produites par
un groupe de chercheurs allemands en ce qui concerne la perception de motifs (patterns)
dans une image. La loi de la continuite indique que l’etre humain tend a lier des elements
qui sont presentes selon une trajectoire douce. Par exemple, la figure 3.4 presente deux
interpretations possibles de l’image (a). Cette figure montre qu’il est plus naturel de
considerer l’existence d’une courbe traversant un rectangle (b) plutot que de supposer
la presence de formes plus angulaires (c).
Fig. 3.4 – Illustration de la loi de la continuite
La loi de la fermeture indique quant a elle que l’etre humain a tendance a completer
mentalement les contours et lignes brises pour se representer une image complete. La
figure 3.5 presente deux exemples de figures incompletes qui sont completees mentale-
ment : la lettre B et un triangle.
Fig. 3.5 – Illustration de la loi de la fermeture
Mouvement
Un autre element visuel, qui est trop peu mis a profit vu sa grande efficacite, est le
mouvement. En effet, la perception humaine est tres sensible aux elements qui bougent,
Chapitre 3 : Etat de l’art 19
cela fait partie d’un entraınement de notre appareil visuel qui a debute a la naissance.
En ce sens, si on peut parfois ne pas reperer un carre parmi un groupe de cercles, il sera
tres difficile de ne pas voir un element anime d’un mouvement parmi d’autres elements
animes d’un mouvement different. De la meme maniere, il sera presque impossible de ne
pas voir un element qui clignote parmi des elements stables. Le mouvement peut donc
evidement etre utilise pour montrer un certain dynamisme d’un attribut dans une image
ou encore une relation de cause a effet entre deux elements, mais il se montre egalement
particulierement efficace pour representer l’appartenance a un groupe et ainsi reveler des
modeles (patterns) dans les donnees. De plus, le mouvement est une excellente solution
pour attirer l’attention en dehors de la zone de fixation puisque, si un objet statique est
facilement ignore par le systeme visuel lorsqu’il s’eloigne de plus de quatre degres de la
ligne de fixation, un objet en mouvement est encore percu dans un angle de vingt degres
[36].
Position spatiale
La derniere caracteristique visuelle dont il sera question ici est la position spatiale des
objets. Il a effectivement ete determine que la position des elements dans un systeme a
deux dimensions, leur profondeur stereoscopique ainsi que la perception de leur conca-
vite ou convexite sont traitees de maniere preattentive. En ce sens, un ensemble d’objets
places a proximite les uns des autres par rapport a un ensemble plus grand seront rapide-
ment percus comme un groupe relie. Aussi, pour donner un autre exemple d’utilisation
de la position spatiale, on pourra utiliser des demi-spheres courbees vers l’interieur et
d’autres courbees vers l’exterieur pour former deux ensembles faciles a distinguer.
Limites de la perception
Les differents elements de visualisation presentes precedemment peuvent certainement
etre combines pour faire ressortir plusieurs elements a la fois. Par contre, il serait mal-
adroit d’utiliser ensemble n’importe lesquels de ces elements. Par exemple, l’utilisation
de cercles et de carres separe bien deux groupes d’objets. L’utilisation des couleurs noir et
gris aussi. Cependant, lorsque ces deux caracteristiques sont combinees (figure 3.6), elles
ne permettent plus de bien distinguer les quatre groupes possibles d’objets. Toutefois,
certaines combinaisons ont ete definies comme correctes : l’emplacement et la couleur ;
Chapitre 3 : Etat de l’art 20
la convexite et la couleur ; le mouvement et la forme ; etc. Aussi, certains attributs d’une
image peuvent etre mal interpretes par l’appareil visuel humain et ainsi induire en erreur.
C’est le cas notamment de certaines illusions connues causees par des contrastes de cou-
leurs ou de textures. Cette connaissance doit donc nous amener a porter une attention
particuliere aux couleurs et textures de fond qui sont choisies.
Fig. 3.6 – Mauvaise combinaison d’attributs visuels [51]
3.1.2 Recherche visuelle
Dans le but de bien comprendre comment l’appareil visuel fonctionne lorsqu’il re-
cherche de l’information dans une image, beaucoup de recherches ont ete effectuees dans
les quarante dernieres annees. Nous en presentons six qui se sont demarquees.
Theorie de la recherche simple
La premiere theorie sur la recherche visuelle a avoir marque le domaine a ete la theorie
de la recherche simple, publiee en 1963 par Neisser [34], et qui explique que la recherche
d’un element dans une image se fait tout simplement en accordant l’attention a chacun
des objets presents jusqu’a trouver l’objet recherche. Cette idee n’est malheureusement
pas satisfaisante puisqu’elle ne permet pas d’expliquer plusieurs situations, en particulier
toutes celles ou un element est percu de maniere preattentive et ne demande aucune
strategie de recherche.
Theorie de l’integration des attributs
Le traitement preattentif du systeme visuel a ete pris en consideration de maniere
significative pour la premiere fois par Treisman [47], en 1985, dans sa theorie de l’in-
tegration des attributs (illustree de maniere simplifiee a la figure 3.7). Selon Treisman,
Chapitre 3 : Etat de l’art 21
le traitement preattentif de la recherche visuelle se fait en deux etapes. Tout d’abord,
des cartes d’attributs sont construites pour chacun des attributs de base (couleur, taille,
orientation, etc.) presents dans l’image et cela de maniere parallele. Puis, une carte glo-
bale est construite pour regrouper les cartes d’attributs. C’est dans cette derniere carte
que la recherche focale (fixation sur differents elements) sera effectuee. Ainsi, si un objet
de l’image possede un attribut preattentif, il sera localise directement dans une carte
d’attributs et il ne sera pas necessaire de le chercher attentivement.
Fig. 3.7 – Integration des attributs : cartes d’attributs et carte globale
Theorie de la recherche guidee
Une theorie semblable a celle de Treisman est la theorie de la recherche guidee de Cave
et Wolfe [10] qui considere qu’une carte d’activation est construite en attribuant un score
a chacun des elements d’une image, dans un traitement preattentif et parallele. Le score
d’un objet est calcule en fonction de deux dimensions : la premiere est la ressemblance de
ses attributs visuels avec les attributs de l’objet recherche et la seconde est la difference
de ses attributs visuels avec ceux des objets avoisinants. L’attention est ensuite donnee
aux differents elements de l’image en ordre decroissant de leur score. Ceci explique a la
fois pourquoi des attributs recherches attirent l’attention et pourquoi un objet different
de ses voisins attire lui aussi l’attention.
Chapitre 3 : Etat de l’art 22
Theorie des textons
Une recherche un peu differente faite par Juliesz [26, 27, 28] est plutot orientee sur
la texture d’une image et a mene a la theorie des textons. Un texton est ici un objet
fondamental d’une image qui peut etre une forme avec des caracteristiques visuelles, une
extremite de segment ou encore un croisement de segments. Ce qui est percu dans le
traitement preattentif, selon Juliesz, est la difference entre les textons et les changements
de densite uniquement. La position des textons et les relations de voisinage quant a elles
ne peuvent etre percues que dans le traitement focal. Cette theorie amene donc a croire
que ce qui importe pour faire ressortir un element d’une image est vraiment sa difference
avec son environnement.
Theorie de la similarite
La theorie de la similarite de Quinlan et Humphreys [38] nous informe quant a elle
plus directement sur ce qui influence le temps de recherche dans une image. Selon les
auteurs, le temps de recherche est affecte par deux criteres : (1) la similarite entre les
elements recherches et les elements distracteurs4 et (2) la similarite entre les elements
distracteurs entre eux. Comme l’indique la figure 3.8.a, il est plus difficile de reperer un
element qui ressemble aux distracteurs (en haut : recherche du L) que de reperer un
element qui differe des distracteurs (en bas : recherche du O). La figure 3.8.b illustre
pour sa part le fait qu’il est plus facile de reperer un element quand les distracteurs
se ressemblent (en haut : recherche du carre vert) que lorsque les distracteurs sont tres
differents (en bas : recherche du carre bleu).
De plus, la theorie de la similarite stipule que le processus de recherche visuelle est se-
pare en trois phases. Dans la premiere phase, le champ visuel est separe en une structure
hierarchique d’unites de l’image qui sont caracterisees par des attributs visuels com-
muns. Ensuite, une portion de la memoire a court terme est attribuee a chaque unite
proportionnellement a sa ressemblance avec les caracteristiques de la cible. En dernier
lieu, la mise au point est faite sur chaque unite en ordre decroissant de la quantite de
memoire qui lui a ete assignee.
4Un element distracteur est un element d’une image qui n’est pas un element recherche.
Chapitre 3 : Etat de l’art 23
Fig. 3.8 – Exemple montrant l’efficacite de la recherche
Theorie des geons
Enfin, nous presentons la theorie des geons de Biederman [7] qui se rapproche de l’idee
de la reconnaissance de la parole par les etres humains. Les geons sont des volumes geo-
metriques simples (figure 3.9) : une sphere, un cone, un cylindre, un cube, etc. Biederman
avance l’idee qu’il existe 36 geons qui sont les primitives de base de la visualisation, tout
comme les phonemes sont consideres comme les primitives de base de la parole. Selon
cette theorie, lorsque l’etre humain observe un objet (les objets sont ici des volumes 3D
puisque c’est ce qu’on trouve dans la nature), il le decompose en ses primitives et peut
alors l’identifier d’apres les liens existants entre celles-ci.
Fig. 3.9 – Exemples de geons [7]
Irani et Ware [25] reprennent cette theorie pour justifier l’utilisation de formes 3D
dans l’affichage de diagrammes. En considerant que le systeme visuel a des mecanismes
d’extraction des primitives 3D, une telle representation facilite selon eux l’interpretation
et la reconnaissance des elements d’une image, tout en ameliorant les capacites de me-
morisation d’une structure visuelle. La figure 3.10 montre un exemple d’un diagramme
UML represente a l’aide des geons. Les auteurs affirment ainsi que le diagramme presente
Chapitre 3 : Etat de l’art 24
dans la partie gauche, lorsque compare a celui de la partie droite, permet de reperer plus
rapidement un element recherche (par exemple une classe simple - notee Class) et de
mieux memoriser la structure du diagramme.
Fig. 3.10 – Utilisation des geons (gauche) pour representer un diagramme UML (droite)[25]
3.1.3 Navigation
Maintenant, pour permettre une visualisation efficace d’une grande quantite d’infor-
mation, il ne suffit pas de savoir comment fonctionne l’appareil visuel humain. Certaines
operations de navigation vont aussi permettre d’obtenir une meilleure connaissance de
l’information presentee. De maniere generale, ce qu’on voudra offrir a l’utilisateur est non
seulement la possibilite de mettre l’information en contexte, mais aussi de la voir dans
ses details les plus fins. L’idee generale a suivre sera alors : “Overview first, zoom and
filter, then details-on-demand” [42] (traduction : donner une vue d’ensemble d’abord,
agrandir et filtrer, puis detailler a la demande).
Les operations et vues principales a offrir dans un outil de visualisation d’information
sont, selon Shneiderman [42] : la vue d’ensemble, l’agrandissement (zoom) d’une portion
de l’image, l’elimination des elements non pertinents, les details a la demande, les rela-
tions entre les elements, l’historique des operations effectuees (pour permettre de defaire
et refaire des operations) et l’extraction d’un sous-ensemble d’elements. Ces principes
ont ete repris par plusieurs auteurs qui ont propose des cadres d’application specialises
reconnus comme suivant le paradigme Focus & Context.
Chapitre 3 : Etat de l’art 25
Vues fisheye
Un premier cadre d’application est l’idee des vues fisheye amenee par Furnas [21].
Ce type de vue reprend le principe des lentilles fisheye, connues en photographie, qui
permettent de donner une allure courbee a une image, avec une alteration de la taille
des elements selon qu’ils sont dans le point de mire ou non. Dans le domaine de la
visualisation de l’information, ce qui altere la taille d’un element n’est plus la proximite
avec le point de mire de la lentille, mais plutot le degre d’interet de l’element pour
l’utilisateur. Ainsi, les elements plus interessants ont une taille superieure aux autres et
peuvent posseder plus de details, tout en conservant leur contexte. Une specialisation
de ce principe pour afficher des graphes a ete presentee par Sarkar et Brown [40]. Cette
methode fournit les formules necessaires pour l’affichage d’un graphe qui met l’accent sur
les noeuds interessants et reduit progressivement la taille des noeuds jusqu’aux noeuds
moins interessants les plus eloignes. Un exemple de cette technique est fourni a la figure
3.11.
Fig. 3.11 – Vue fisheye appliquee a un graphe [40]
Mur de perspective
Mackinlay, Robertson et Card ont plutot imagine une structure visuelle, qu’ils ont
appelee un mur de perspective [32], et qui tente d’imiter le comportement de la vision
humaine en ce qui concerne la mise au point sur une portion de l’image. En effet, la
physionomie de l’oeil fait en sorte que beaucoup de details sont percus sur une image
a l’endroit ou la mise au point est etablie et que le contexte environnant cet endroit
reste perceptible mais de maniere beaucoup moins detaillee. Pour imiter ce phenomene,
le mur de perspective se presente comme une surface en deux dimensions qui est pliee
Chapitre 3 : Etat de l’art 26
de sorte a avoir ses extremites gauche et droite en perspective, donc fuyant vers l’arriere
de l’image (figure 3.12). De cette facon, l’information interessante pour la mise au point
est vue correctement, a plat, et le contexte est vu en perspective.
Fig. 3.12 – Mur de perspective [32]
Utilisation de lentilles
Une autre idee qui est tres utilisee dans differents domaines est l’application de lentilles
(aussi appelees lentilles magiques) qui, positionnees sur une portion precise de l’image par
l’utilisateur, donnent une vue differente de cette portion [8]. La vue sous la lentille peut
donner une grande variete d’informations differentes : un agrandissement de l’image, un
raffinement des details affiches, un changement dans la technique d’affichage (couleurs,
formes, tailles, etc.). La version en trois dimensions de cette technique permet de voir
a l’interieur d’un objet positionne sous la lentille [50]. L’utilisation de lentilles est donc
une autre technique de Focus & Context puisqu’elle permet de visualiser une portion de
l’image en detail tout en conservant une vue de l’environnement de cette portion choisie.
Profondeur de champ semantique
Plus recemment, l’equipe de Kosara [31] a apporte une idee innovatrice tres efficace
car tres intuitive. Ces chercheurs proposent de diriger l’attention sur les elements impor-
tants d’une image en reproduisant le fonctionnement de la mise au point visuelle, par
l’utilisation du flou. Ainsi, les elements qui doivent etre presents dans la ligne de fixa-
tion sont clairs et leur contexte est brouille. La raison de l’efficacite de cette technique
s’explique certainement par le fait que la distinction entre les objets clairs et les objets
flous se fait de maniere preattentive, donc les objets qui doivent attirer l’attention sont
ici reperes tres rapidement, comme on peut le constater en regardant la figure 3.13.
Chapitre 3 : Etat de l’art 27
Fig. 3.13 – Profondeur de champ semantique [31]
3.2 Representation des treillis de concepts
3.2.1 Affichage de treillis
De maniere generale, pour faciliter la comprehension d’un graphe, on voudrait l’afficher
de maniere esthetique. Toutefois, ce n’est pas une tache aisee que de determiner les
bases fondamentales qui font qu’un diagramme est plaisant ou non a regarder et ceci
a amene la production de nombreux travaux dans ce domaine. Les criteres esthetiques
pour un graphe sont, entre autres : la symetrie, la reduction du nombre d’intersections
d’aretes et la reduction du nombre de pentes [39, 37]. Plus particulierement, l’affichage
de treillis est une specialisation du domaine de l’affichage de graphes qui presente cette
contrainte precise : un treillis etant une structure semi-ordonnee, certains noeuds doivent
etre positionnes plus haut ou plus bas que d’autres dans l’image. Cette exigence ajoute
un defi important a l’affichage automatise d’un treillis.
Diagrammes additifs
Le principe d’affichage de treillis qui revient le plus souvent dans la litterature est
certainement l’affichage sous la forme d’un diagramme additif, une idee qui a ete intro-
duite par Ganter et Wille [22], precisement pour l’affichage de treillis de concepts. Un tel
diagramme (figure 3.14), est obtenu en assignant un vecteur a chacun des attributs du
Chapitre 3 : Etat de l’art 28
contexte initial. Chaque concept aura alors une position equivalente a la somme des vec-
teurs associes aux attributs qu’il possede. Les diagrammes produits par cette methode
presentent l’avantage d’avoir beaucoup de parallelisme dans leurs arcs, une propriete qui
est reconnue pour faciliter la lecture d’un graphe. De plus, ce positionnement supporte
l’interpretation semantique du treillis en reliant le positionnement d’un noeud avec sa
signification.
Fig. 3.14 – Diagrammes additifs [13]
Adaptations des diagrammes additifs
Les diagrammes additifs sont sans contredit un excellent point de depart pour affi-
cher un treillis de concepts. Toutefois, selon le vecteur associe initialement a chacun des
attributs du contexte, le treillis resultant pourra etre tres different. C’est sur cette proble-
matique que s’est concentre Cole dans plusieurs travaux [11, 12, 13]. Une des methodes
qu’il a apportees a ete la construction d’un diagramme hybride, a mi-chemin entre le
diagramme hierarchique (layered diagram) [17] et le diagramme additif. Les autres idees
qu’il a apportees pour afficher un bon diagramme sont toutes des methodes adaptatives.
L’une utilise le principe d’affichage selon un champ de forces [17], connu dans le domaine
de l’affichage des graphes, et ajuste le resultat de sorte a obtenir un diagramme addi-
tif. Une autre idee suggeree par Cole [11] consiste a utiliser les algorithmes genetiques
ainsi que certaines caracteristiques choisies d’un bon graphe (symetrie, reduction du
croisement d’aretes, etc.) pour calculer progressivement un bon diagramme. Enfin, une
derniere methode [13] construit plusieurs diagrammes additifs, de maniere incrementale,
puis calcule un score de qualite de sorte a presenter a l’utilisateur un choix parmi les
meilleurs diagrammes produits.
Chapitre 3 : Etat de l’art 29
Placement dirige par un champ de forces
Freese quant a lui s’est penche sur le probleme d’affichage de treillis en proposant une
methode qui utilise trois dimensions [20]. Sa methode est basee sur un champ de forces
qui impose une repulsion entre les elements tres differents et une attraction entre les
elements semblables. Les noeuds sont donc places initialement sur un niveau satisfaisant
la relation d’ordre dans le treillis, avec une distance egale entre les noeuds d’un meme
niveau, et les forces sont appliquees en trois phases : la repulsion, l’attraction et une
combinaison des deux forces. Ces trois phases sont repetees jusqu’a ce que la position
des noeuds devienne stable, suite a quoi une projection en deux dimensions est calculee
pour afficher le graphe final. L’inconvenient d’une telle methode est sans aucun doute le
fait que la projection de trois dimensions dans deux dimensions accroıt le risque d’avoir
plus d’un noeud avec une meme coordonnee, ce qui n’est jamais souhaitable dans un
graphe.
Diagrammes imbriques
Les methodes presentees precedemment ont cependant toutes une meme faiblesse.
Lorsque le treillis a afficher devient volumineux, il est alors tres difficile de le visualiser.
Ganter et Wille ont suggere cinquante noeuds comme borne maximale pour qu’un dia-
gramme additif reste lisible [22]. Pour cette raison, ils ont aussi presente une technique
d’affichage d’un treillis dans une structure imbriquee (figure 3.15) qui permet de diviser
un treillis en plusieurs treillis partiels de taille plus petite. De cette facon, il reste pos-
sible d’obtenir une taille acceptable pour chacun des treillis partiels, tout en conservant
la totalite des concepts du treillis initial, qui sont retrouves a l’aide de certains calculs
d’union et d’intersection. Les treillis partiels sont ainsi places l’un dans l’autre, a la ma-
niere de poupees russes, en assignant a chaque treillis partiel un niveau d’imbrication. De
cette facon, chaque noeud du niveau 1 (niveau externe) contiendra le treillis de niveau 2,
chaque noeud du niveau 2 contiendra le treillis de niveau 3 et ainsi de suite pour chaque
treillis partiel. Il est a noter que cet affichage est tres interessant puisqu’il s’inscrit dans
le paradigme de Focus & Context en permettant de s’attarder uniquement aux portions
interessantes d’une image tout en conservant le contexte general.
La construction des diagrammes imbriques demande la resolution de certains pro-
blemes : (1) la maniere de faire la decomposition d’un contexte formel (ou d’un treillis
Chapitre 3 : Etat de l’art 30
Fig. 3.15 – Construction d’un diagramme imbrique
global) en sous-contextes (decrits par des treillis partiels) ; (2) le nombre de niveaux
d’imbrication a considerer ; (3) l’ordre d’imbrication des treillis partiels. Dans ce qui
suit, nous allons traiter du premier probleme.
3.2.2 Decomposition de treillis de concepts
Etant donne que, dans une situation reelle, un treillis de concepts possedera tres pro-
bablement plus de cinquante concepts, les methodes de decomposition d’un treillis en
treillis partiels prennent toute leur importance car une bonne methode de decomposi-
tion permettra de construire un diagramme imbrique interessant. Ganter et Wille [22]
presentent quatre methodes de decomposition qui possedent chacune leurs forces dis-
tinctives. Nous en presenterons ici trois qui se sont averees utiles dans certains travaux
precis, notamment dans le domaine du genie logiciel, puis nous enchaınerons avec la
decomposition horizontale souvent mentionnee par Snelting [44, 43, 45]. Nous verrons
ensuite la decomposition verticale utilisee dans l’operation d’assemblage [49] et nous ter-
minerons avec la decomposition par parcours en largeur amenee par l’equipe d’Abello
[1]. Les figures presentees dans cette section ont toutes ete puisees dans [3].
Decomposition sous-directe
La decomposition sous-directe d’un treillis [22] se fait a partir du contexte, en separant
les attributs et objets selon les relations de perspectivite faible (weak perspectivity) et
de projectivite faible (weak projectivity). La perspectivite faible d’un objet o envers un
Chapitre 3 : Etat de l’art 31
attribut a, notee o ↗ a, indique que a n’est pas en relation avec o, mais que tous les
parents de o le sont. De meme, la perspectivite faible d’un attribut a envers un objet o,
notee a↘ o, indique que o n’est pas en relation avec a, mais que tous les enfants de a le
sont. Un attribut et un objet sont dans une relation de projectivite faible (notee a↗↙ o)
lorsque o ↗ a et a ↘ o. En calculant la fermeture transitive des relations de projecti-
vite faible dans l’ensemble issu de l’union des attributs et objets, on retrouve un certain
nombre de partitions du contexte initial. Ces partitions forment les sous-contextes re-
cherches pour calculer les treillis partiels nommes facteurs. La figure 3.16 presente un
exemple de deux treillis facteurs (a gauche) d’un treillis global (a droite). Toutefois,
selon nos experimentations preliminaires, on constate que cette forme de decomposition
n’aboutit pas necessairement a une reelle decomposition et qu’elle n’offre pas de meca-
nisme d’interpretation de la semantique associee aux treillis partiels produits. Snelting
confirme d’ailleurs le premier point dans [45].
Fig. 3.16 – Exemple d’une decomposition sous-directe
Decomposition par atlas
Pour ce qui est de la decomposition par atlas [22], on cherche ici les plus petites
congruences possibles dans le treillis initial. Selon [15], une congruence dans un treillis est
une relation d’equivalence θ pour laquelle, en considerant que a, b et c sont des noeuds :
(a ≡ b(mod θ)) et (c ≡ d(mod θ))⇒ (a∨c ≡ b∨d(mod θ)) et (a∧c ≡ b∧d(mod θ)). Plus
simplement, une congruence dans un treillis peut etre vue comme un groupe maximal
de noeuds qui possedent un meme infimum et un meme supremum. Les congruences
vont donc faire ressortir les sous-treillis minimaux presents dans le treillis initial. Ces
sous-treillis vont se chevaucher en ce sens que certains concepts feront partie de plus
d’un sous-treillis, comme on peut le voir a la figure 3.17 (la partie droite presente la
decomposition de la partie gauche). Chacune de ces parties sera reliee avec les autres
en conservant la relation d’ordre entre les treillis. Ainsi, le graphe reliant chacune des
Chapitre 3 : Etat de l’art 32
parties sera lui aussi un treillis qu’on appellera l’atlas. Au moment de reconstituer le
treillis initial, on pourra consulter l’atlas pour retrouver les relations de voisinage dans
la decomposition et ainsi souder ensemble les concepts identiques de sorte a recoller le
treillis.
Fig. 3.17 – Exemple d’une decomposition par atlas
Decomposition sous-tensorielle
Avant d’expliquer ce qu’est la decomposition sous-tensorielle [22], nous devons presen-
ter deux operations : le produit direct et le produit tensoriel. Considerons deux contextes
K1 = (O1, A1, I) et K2 = (O2, A2, J). Le produit direct de K1 et K2 est obtenu en creant
un contexte pour lequel l’ensemble des attributs est A1×A2 et l’ensemble des objets est
O1 ×O2. Un attribut a et un objet o du produit direct seront en relation si aIo ou aJo.
Sachant cela, il est possible de simplifier l’explication du produit tensoriel en affirmant
que le produit tensoriel de deux treillis L1 et L2 correspond au treillis associe au produit
direct de leurs contextes. Le produit sous-tensoriel de L1 et L2 est quant a lui un facteur
du produit tensoriel dans lequel on retrouve encore chacun des concepts de L1 et de L2.
Deux proprietes importantes de ce produit sont (1) qu’il est equivalent a l’union de ses
facteurs et (2) que chaque paire de concepts issue du produit cartesien des facteurs est
faiblement distributive. La decomposition sous-tensorielle d’un treillis consistera donc a
trouver des facteurs qui correspondent a ces conditions. Il est egalement a noter qu’une
decomposition sous-tensorielle est equivalente a une decomposition sous-directe, mais
que l’inverse n’est pas toujours vrai.
Chapitre 3 : Etat de l’art 33
Decomposition horizontale
L’idee d’une decomposition horizontale [44, 43, 45] s’impose dans une structure, telle
un treillis, qui possede un infimum et un supremum. On voudra donc separer le treillis
en parties qui restent liees en l’absence de ces deux extremites. La figure 3.18 presente
un treillis qui a pu etre decompose horizontalement. De maniere generale, si le treillis
possede un infimum sans objet et un supremum sans attribut (ce qui est le cas dans la
plupart des situations), un simple parcours en largeur sur le treillis, sans considerer les
noeuds superieur et inferieur, suffira a distinguer les composantes de la decomposition :
ces composantes seront les composantes connexes trouvees. Il est egalement possible
d’affiner la decomposition en supprimant les interferences de connectivite minimale dans
les composantes trouvees. Il y a une interference entre deux concepts s’ils ont des objets
en commun, donc s’ils sont relies par un predecesseur (enfant) commun qui n’est pas
l’infimum. C’est ce predecesseur qui constitue alors l’interference. La connectivite d’une
interference entre deux sous-treillis represente le nombre d’aretes impliquees dans celle-ci.
On supprimera donc toujours en premier lieu les interferences avec la plus petite connec-
tivite dans un ensemble de sous-treillis. On pourra ensuite supprimer les interferences
avec la prochaine plus petite connectivite jusqu’a l’obtention d’un resultat satisfaisant.
Fig. 3.18 – Exemple d’une decomposition horizontale
Decomposition verticale
La decomposition verticale retrouvee dans [49] est utilisee dans le but de construire un
treillis plutot que dans un objectif de decomposition. Ainsi, l’algorithme de decomposi-
tion presente se resume en une partition arbitraire des attributs d’un contexte, de sorte
a construire les treillis partiels correspondants. L’interet de cette decomposition pour
Chapitre 3 : Etat de l’art 34
notre travail se trouve dans le fait que les diagrammes imbriques presentes dans [46], et
de maniere generale en ce qui concerne ce type de diagrammes, utilisent justement une
partition des attributs d’un contexte global pour construire les differents treillis partiels.
Toutefois, dans notre cas particuler, cette decomposition gagnerait beaucoup en interet
si elle pouvait etre faite de maniere automatisee, tout en conservant un lien semantique
entre les attributs d’une meme partition.
Decomposition par parcours en largeur
Le dernier type de decomposition que nous allons presenter (decrit dans [1]) est base
sur une technique de decomposition de graphes bipartis : le parcours en largeur par
niveau (level-aware breadth first search). Pour obtenir le graphe biparti correspondant
au contexte d’un treillis, un noeud est cree pour chaque attribut et aussi pour chaque
objet, puis un arc est trace entre un attribut et un objet qui sont en relation dans le
contexte. Le graphe est bien sur biparti car aucune relation n’existe dans le contexte
entre deux objets ou entre deux attributs. Afin d’obtenir la decomposition, une racine
arbitraire r doit d’abord etre choisie. Puis, a partir de r, une partition est composee
et elle contient r ainsi que tous les noeuds qui lui sont visibles. Les nouveaux noeuds
decouverts a cette iteration sont alors pris comme base et une nouvelle partition est
formee, contenant ces derniers noeuds et les noeuds non visites qui leur sont visibles.
Ce processus est repete jusqu’a ce que tous les noeuds aient ete visites. Evidemment,
certaines etapes supplementaires devront etre ajoutees si le graphe biparti n’est pas
connexe. De plus, il est necessaire de mentionner que le resultat de la decomposition
obtenue sera tres dependant de la racine choisie initialement. Il convient donc de choisir
adequatement la racine.
3.2.3 Outils de visualisation des treillis de concepts
Les treillis de concepts ont beaucoup attire l’attention ces dernieres annees et sont
parvenus a passer la barriere des applications theoriques. Ainsi, certains prototypes ont
ete developpes pour la recherche de documents, tel Docco [4], et pour la recherche de
messages dans un logiciel de courriels, tel Mail-Sleuth [19]. Toutefois, ce qui nous interesse
ici est vraiment la visualisation de treillis de concepts sans orientation specifique pour un
Chapitre 3 : Etat de l’art 35
type d’application precis. Nous presenterons donc dans cette section trois outils existants
qui font ce travail.
Galicia
Galicia [48] est une plate-forme du domaine public qui a ete developpee dans le but de
regrouper dans une meme application les operations de base qui peuvent etre effectuees
sur un contexte. Elle offre ainsi la possibilite d’executer une grande variete d’algorithmes
de construction de treillis ou de parties de treillis. Sa methode d’affichage initiale de
treillis n’est par contre pas tres sophistiquee : elle affiche les concepts sur une couche
qui convient a l’ordre partiel, mais sur une meme couche, les concepts sont positionnes
l’un apres l’autre dans leur ordre d’arrivee. Aussi, les operations possibles sur le treillis
affiche se limitent a trois techniques pour repositionner les noeuds (utilisation d’un champ
de forces, reduction du nombre d’intersections, et affichage en trois dimensions avec
rotations possibles) et la possibilite d’agrandir ou reduire l’image. L’interet principal
de Galicia est certainement dans la possibilite d’effectuer des tests comparatifs entre
les differents algorithmes disponibles pour la construction de treillis, et aussi entre les
algorithmes de construction de regles d’association.
Concept Explorer
Concept Explorer [41] est une application traitant les treillis de concepts qui est de loin
moins riche en fonctionnalites et moins complexe que Galicia. Elle permet d’executer les
operations de base visant a produire un treillis, mais elle tient sa force selon nous dans
la foule d’options qu’elle rend disponibles pour manipuler les treillis affiches. En ce sens,
elle inclut une fonctionnalite de projection sur les objets et les attributs du contexte.
Elle inclut egalement diverses options pour montrer les noeuds relies a un noeud choisi
et elle offre plusieurs facons d’afficher les noeuds et les etiquettes des noeuds pour faire
ressortir differents types d’information. Concept Explorer est donc assez interessante
pour l’affichage de treillis de petite taille mais presente une faiblesse importante (du
moins pour la version 1.2, la plus recente lors de l’etude des logiciels existants) lorsqu’on
lui soumet un contexte de taille relativement grande : elle positionne alors les concepts
les uns sur les autres ce qui le rend inutilisable dans ce cas.
Chapitre 3 : Etat de l’art 36
ToscanaJ
ToscanaJ [5] pour sa part est une application toute dediee a l’affichage des diagrammes
imbriques. Elle ne permet pas la saisie d’un contexte et ne s’occupe pas de la construc-
tion du treillis ni du positionnement des noeuds du treillis. Une application externe, en
l’occurrence Sienna, doit donc etre utilisee pour creer les differents treillis partiels qui
sont affiches sous forme de diagrammes additifs. Toutefois, elle a l’avantage de permettre
l’affichage des treillis avec une structure imbriquee. Elle permet egalement de montrer les
noeuds ayant certains liens d’interet avec un noeud choisi et de selectionner un format
d’etiquettes voulu pour documenter les concepts. Elle offre cependant une possibilite
d’agrandissement limitee du fait que l’agrandissement d’un noeud permet certainement
de voir son contenu, mais le contexte est alors perdu, ce qui va a l’encontre du paradigme
Focus & Context.
Chapitre 4
Methode de representation
La proposition d’une methode de representation a necessite de s’interesser a deux
dimensions distinctes de la visualisation : le choix des elements visuels (attributs visuels
de base et methodes de navigation) et l’affichage des treillis. Ce chapitre presente et
justifie les choix qui ont ete faits a ces niveaux.
4.1 Selection des elements de visualisation
4.1.1 Informations ciblees pour la visualisation
Avant de s’attarder sur les elements de visualisation retenus, il importe de s’interesser
aux informations ciblees pour etre mises en evidence. Cela nous amene donc a preciser
les operations prevues sur un treillis.
La liste suivante presente certaines operations qui ont ete ciblees pour etre incluses
dans le module de visualisation des treillis du prototype :
– Changement d’echelle (zoom) ;
– Deplacement manuel du treillis ;
– Visualisation de l’interieur d’un concept ;
– Recherche d’une intention ou d’une extension ;
– Selection d’un concept du treillis a partir d’une liste hierarchisee (en fonction de
l’imbrication) des concepts ;
Chapitre 4 : Methode de representation 38
– Affichage des concepts lies a un concept donne : parents, enfants, ancetres, descen-
dants, etc ;
– Affichage des informations concernant un concept : objets, attributs, nombre d’ob-
jets, pourcentage des objets concernes, etc. ;
– Visualisation des regles d’association ;
– Projection sur les attributs ou les objets ;
– Modification de la structure du treillis ;
– Navigation en parallele de differentes portions du treillis ;
– Possibilite de defaire et refaire des operations.
Il fallait egalement penser de facon generale a la representation visuelle d’un dia-
gramme imbrique ainsi qu’a la representation d’un concept.
Les deux prochaines sections indiquent les solutions visuelles apportees pour repondre
a ces besoins, autant du point de vue des attributs visuels selectionnes que des methodes
de navigation choisies.
4.1.2 Attributs visuels choisis
Affichage general du treillis
Nous avons vu precedemment que l’appartenance a un groupe est clairement mise
en evidence par l’utilisation des couleurs. Il a donc ete naturel de choisir cet attribut
visuel pour distinguer les differents niveaux d’un diagramme imbrique. En ce sens, une
couleur est associee a chaque sous-contexte et cette couleur est celle qui est associee
a chacun des treillis du niveau concerne par le sous-contexte donne. Un total de cinq
couleurs, montrees a la figure 4.1, ont ete utilisees pour differencier les niveaux (bleu,
jaune, rose, vert et orange) et ces couleurs sont utilisees de maniere cyclique. La raison
de ce choix est que l’utilisateur n’aura qu’a se rappeler d’un maximum de cinq couleurs
et que s’il depasse cinq niveaux d’imbrication, la seconde rencontre d’une meme couleur
sera suffisamment eloignee pour ne pas creer de confusion.
Fig. 4.1 – Ensemble des couleurs choisies
Chapitre 4 : Methode de representation 39
Quantite d’objets dans les concepts
La couleur a de plus ete utilisee pour montrer les differences quant a la quantite d’ob-
jets compris dans chacun des concepts. Ici, comme il existe un ordre dans l’information a
afficher (de 0% des objets jusqu’a 100% des objets) deux options etaient envisageables :
faire varier les couleurs sur un canal chromatique ou faire varier l’intensite des couleurs.
Toutefois, comme des couleurs etaient deja attribuees aux treillis, une variation sur un
canal chromatique aurait certainement cree de la confusion. Pour cette raison, le choix
s’est arrete sur la variation d’intensite. Ainsi, un concept voit sa couleur etre plus intense
s’il a une grande quantite d’objets et moins intense dans le cas inverse.
Une autre solution semblait initialement interessante pour representer visuellement la
quantite d’objets compris dans un concept : la variation de la taille du concept. Il semble
d’ailleurs assez naturel que si un element a un contenu plus important qu’un autre il soit
de plus grande taille. Par contre, dans notre cas precis, comme un concept peut contenir
un treillis interne, la variation de la taille aurait risque de reduire la lisibilite du treillis
interne. Cette idee a donc rapidement ete eliminee.
Forme des concepts
Pour representer les concepts, les formes 3D ont ete preferees aux formes 2D, suivant
l’idee qu’un etre humain se fait une image mentale plus claire d’un diagramme lorsque
celui-ci est constitue de volumes plutot que de figures planes et que la memorisation
de la structure d’un diagramme est ainsi facilitee [25]. Un concept est donc represente
par une sphere et lorsque l’interieur de la sphere doit etre affiche, une demi-sphere est
presentee pour montrer l’interieur du volume (voir la figure 4.2).
Fig. 4.2 – Vue entiere d’un concept et vue en coupe
Chapitre 4 : Methode de representation 40
Recherche de concepts
Le mouvement s’est quant a lui impose pour attirer l’attention sur un concept recher-
che puisqu’il a ete cible comme etant l’une des methodes les plus efficaces pour diriger
le regard sur une partie d’une image. Ainsi, lorsque l’utilisateur choisit un concept dans
une liste (hierarchisee en fonction de l’imbrication des treillis) ou qu’il lance une re-
cherche pour des caracteristiques donnees, le concept vise est rapidement repere dans
l’image grace a un leger mouvement de gauche a droite. Un concept ainsi selectionne
se voit egalement entoure d’un coutour rouge, de sorte a le laisser en evidence, tout en
permettant de cesser le mouvement qui continuerait de capter vivement l’attention apres
que l’utilisateur ait repere le concept.
Une autre option a egalement ete rendue disponible : l’utilisateur peut choisir de faire
clignoter le contour rouge du concept recherche. Le clignotement etant une technique
visuelle dans la categorie du mouvement, il se posait bien comme alternative au depla-
cement d’un concept.
4.1.3 Methodes de navigation choisies
Pour ce qui est de la navigation, le paradigme Focus & Context a bien sur ete pris en
consideration. Il se trouve a la base de la navigation. Ainsi, l’environnement est toujours
visible et diverses methodes ont ete utilisees pour permettre les differentes manipulation
du treillis.
Changement d’echelle et deplacement du treillis
Le changement d’echelle est certainement une operation incontournable pour ce qui
est de la visualisation d’un diagramme imbrique. Cela amene comme consequence la
necessite de pouvoir se deplacer dans le treillis qui peut alors etre plus volumineux
que la taille de l’ecran. Une petite carte globale a donc ete prevue dans une portion
de l’image pour permettre a l’utilisateur de situer le cadre de visualisation actuel par
rapport a l’ensemble du treillis.
Aussi, les operations de changement d’echelle sont animees, de sorte a garder le suivi
entre l’image initiale et l’image finale. En ce sens, lorsqu’un concept est recherche par
Chapitre 4 : Methode de representation 41
exemple, il se peut qu’il soit visible seulement a une echelle differente ou meme a une
position differente dans l’image. Une animation montre alors le chemin parcouru pour
arriver au concept recherche, ce qui permet de bien situer ce concept par rapport a
l’environnement global.
Visualisation des concepts lies
La profondeur de champ semantique (ou utilisation du flou) est une methode efficace
pour faire ressortir certains elements tout en conservant les elements environnants. Cette
methode s’est donc montree tout a fait appropriee pour mettre en evidence les concepts
lies a un autre concept, tels ses enfants, ses parents, ses ancetres ou ses descendants.
Les concepts lies a une regle d’association (choisie dans une liste) sont egalement mis
en evidence par cette technique. Ainsi, lorsqu’une information de ce type est demandee,
les concepts pertinents restent nets, mais tous les autres concepts de l’image deviennent
flous. Un exemple est montre a la figure 4.3.
Fig. 4.3 – Utilisation du flou pour montrer les concepts lies
L’utilisateur a egalement le choix de modifier la taille des concepts pour mettre en
evidence ceux qui sont lies au concept choisi. Ainsi, les concepts lies se trouvent a etre
de plus grande taille que les concepts non lies. Cette methode a ete inspiree des vues
fisheye, mais comme dans ce cas-ci il n’etait pas pertinent de reduire progressivement la
taille des concepts en fonction de leur proximite avec le concept choisi, uniquement deux
formats de concepts ont ete retenus. Nous avons mentionne, au moment d’aborder la
representation du nombre d’objets dans un concept, que la modification de la taille des
Chapitre 4 : Methode de representation 42
concepts aurait reduit la lisibilite des treillis internes. Ici, ce probleme ne se pose plus
puisque justement, l’attention ne doit pas etre portee sur les concepts non lies, donc la
lisibilite des treillis internes n’a plus la meme importance.
Il aurait ete possible, pour montrer la meme information, d’ajouter un attribut visuel
aux concepts concernes (ex. un contour colore), mais cela aurait eu pour effet d’alourdir
l’image plutot que de l’alleger comme c’est le cas avec l’utilisation de la profondeur de
champ semantique ou la modification de la taille des concepts.
Affichage des informations detaillees d’un concept
Le paradigme Focus & Context souligne bien l’importance de ne pas mettre trop d’in-
formation dans une image. Ainsi, on suggere de ne fournir des details qu’a la demande.
C’est la raison pour laquelle les informations concernant un concept sont presentees dans
une petite etiquette qui ne s’affiche qu’a la demande de l’utilisateur. Cette etiquette peut
contenir differents details choisis par l’utilisateur : une liste complete ou reduite des at-
tributs, une liste complete ou reduite des objets, le nombre ou le pourcentage des objets
representes, ainsi que les regles d’association contenant les attributs du concept.
L’utilisation des lentilles pour montrer les details d’une portion de l’image s’est mon-
tree a premiere vue comme une solution interessante pour ce probleme. Cependant,
comme l’analyse des informations contenues dans un treillis implique souvent la compa-
raison d’un groupe de concepts qui ne sont pas necessairement a proximite, les lentilles
deviennent moins efficaces. Il est donc preferable dans notre cas d’utiliser un moyen
d’affichage des details qui soit moins volatile, comme c’est le cas pour les etiquettes.
Projection sur un sous-ensemble des objets ou des attributs
Pour permettre a l’utilisateur de faire l’analyse d’un sous-ensemble de ses donnees,
sans redefinir le contexte utilise, un mecanisme de projection des donnees a ete prevu.
Il est donc possible de choisir un sous-ensemble des attributs, un sous-ensemble des
objets, ou de reduire a la fois l’ensemble des attributs et celui des objets pour generer un
nouveau treillis. Les elements voulus sont alors selectionnes dans une liste et le nouveau
treillis est ensuite calcule.
Il aurait ete possible de proceder a la maniere de Concept Explorer et de permettre la
reduction du treillis a la volee. En effet, dans Concept Explorer, aussitot qu’un element
Chapitre 4 : Methode de representation 43
(attribut ou objet) est choisi pour etre ajoute ou retire, le treillis est recalcule. Nous
avons par contre prefere retarder cette modification au moment ou l’utilisateur signale
qu’il a termine sa selection. Cette methode est certainement un peu plus lourde a utiliser
(elle necessite une operation supplementaire pour indiquer la fin des selections), mais elle
a l’avantage de ne pas provoquer de calculs intermediaires inutiles.
Modification de la structure du treillis
En ce qui concerne la disposition des concepts du treillis, il nous a semble necessaire
de permettre un moyen de modifier la structure initialement suggeree. Le logiciel veille
certainement a proposer un premier affichage convenable, mais un utilisateur pourrait
preferer une autre disposition des concepts.
Un outil de modification de la structure du treillis a donc ete inclus. Cet outil offre
differentes options predefinies d’affichage (telles que la structure cubique, la reduction
des intersections, la disposition dirigee par la position des parents, etc. qui sont definies
plus loin) et permet aussi de deplacer les noeuds individuellement, pour les treillis de
chaque niveau du diagramme imbrique. Les concepts sont positionnes sur une grille,
permettant ainsi de faciliter la restructuration du treillis sans perdre la regularite des
positions.
La raison pour laquelle les concepts ne peuvent pas etre deplaces directement dans
la fenetre principale, et qu’il faut plutot faire appel a un outil de restructuration, est
liee a la presence des diagrammes imbriques. Dans de tels diagrammes, il importe que
la structure des treillis d’un meme niveau soit la meme pour chacun. Sinon, il devient
difficile de faire le parallele entre les informations vehiculees par les differents treillis d’un
meme niveau. La modification de la position des concepts directement dans la fenetre
principale aurait alors demande la mise a jour simultanee de tous les treillis internes
pour tout changement de position dans un treillis. Du point de vue des performances,
cette solution n’etait pas acceptable.
Navigation parallele
L’analyse faite dans les diagrammes imbriques peut impliquer de visualiser en paral-
lele l’information contenue dans deux treillis internes de meme niveau. Par exemple, il
Chapitre 4 : Methode de representation 44
pourrait etre interessant d’observer la difference de distribution des objets lorsque les
objets possedent l’attribut A d’un treillis externe comparativement a lorsqu’ils possedent
l’attribut B d’un treillis externe. Toutefois, si le treillis externe est suffisamment volu-
mineux, les treillis a l’etude peuvent se retrouver a une trop grande distance pour etre
affiches en meme temps dans la fenetre de navigation.
Pour pallier a ce probleme, nous avons donc prevu une fonctionalite permettant de
dupliquer la fenetre de navigation. Suite a la duplication, les deux fenetres sont exac-
tement dans le meme etat. Toutefois, elles sont ensuite traitees de manieres totalement
independantes et permettent ainsi toute analyse parallele, que ce soit par exemple la
visualisation de differents treillis de meme niveau ou la visualisation des concepts lies a
differents concepts.
Gestion de l’historique
Enfin, pour couvrir l’ensemble des operations de navigation necessaires dans un logiciel
de visualisation de l’information, selon Shneiderman [42], il faillait inclure un mecanisme
de gestion de l’historique permettant de defaire (undo) et refaire (redo) les actions ef-
fectuees.
Les actions de l’utilisateur a l’interieur d’une meme fenetre de visualisation sont donc
enregistrees (modification de l’echelle, deplacement du treillis, selection d’un concept,
modification des options d’affichage, modification de la structure du treillis, etc.) et
l’utilisateur peut revenir a un etat anterieur de la fenetre, suite a quoi il lui est possible
de refaire le chemin jusqu’au dernier etat de la fenetre.
4.2 Experimentation par des utilisateurs
L’utilisation d’une methode objective pour determiner la qualite d’un choix esthetique
ou d’un choix de navigation n’etant pas possible, il a ete necessaire de proceder a des tests
d’utilisateurs pour justifier la pertinence des choix faits en ce qui concerne la visualisation
des treillis de concepts. Cette section presente la methode d’evaluation qui a ete utilisee
ainsi que les resultats et conclusions qui ont ete produits par ces tests.
Chapitre 4 : Methode de representation 45
4.2.1 Deroulement des tests
Un total de quatorze utilisateurs ont participe aux tests d’utilisateurs. Parmi eux,
cinq avaient initialement une bonne connaissance des treillis des concepts (chercheurs et
etudiants) et neuf ne les connaissaient que peu ou pas du tout avant l’experimentation.
Ces derniers ont eu une breve explication de ce qu’est un treillis de concepts avant
d’effectuer le test.
Pour permettre l’evaluation de differentes options de visualisation, trois logiciels ont
ete utilises : Lattice Miner (le prototype developpe dans le cadre de ce memoire), Concept
Explorer ainsi que ToscanaJ. Dans le cas de Lattice Miner, differentes options ont ete
evaluees lorsque l’etendue des choix disponibles ne suffisait pas pour tester les differentes
fonctionalites voulues. En tout, quinze elements ont etes juges par les utilisateurs, en ce
qui concerne les choix d’elements visuels ainsi que les choix de fonctionnalites pour la
navigation dans le treillis.
Les contextes utilises etaient des contextes simples, concernant des elements com-
prehensibles par tous (proprietes d’animaux et de plantes ; et caracteristiques de base
des clients d’une banque), et generaient des treillis de petite taille. Un premier contexte
contenait huit objets et huit attributs. Il a permis de creer un treillis de dix-huit concepts.
Un deuxieme contexte a ete utilise pour tester les fonctionalites propres aux treillis im-
briques. Il etait constitue de quatorze objets et quatre niveaux, lesquels contenaient deux
attributs (quatre concepts) pour le premier niveau et trois attributs (cinq concepts) pour
les trois autres niveaux.
4.2.2 Resultats et analyse des resultats
Le tableau 4.1 presente les resultats obtenus. Les pointages en rouge indiquent la
preference pour un logiciel par rapport a chaque critere et cela pour chaque groupe
d’utilisateurs. Les abreviations sont les suivantes : LM pour Lattice Miner (les chiffres
entre parenthese indiquent la presence d’options pour ce logiciel), CE pour Concept
Explorer et TJ pour ToscanaJ. On constate d’apres ces resultats que les utilisateurs
connaissant bien les treillis ont souvent une opinion differente des utilisateurs connaissant
peu ou pas les treillis. Dans l’analyse des resultats qui suit, nous allons donc tenir compte
de cette divergence.
Chapitre 4 : Methode de representation 46
Logiciel Debutants Experimentes Moyenne1. Forme LM 4.33 3.6 3.97
CE 3.11 3.8 3.46TJ 3.89 3.8 3.84
2. Taille LM (1) 3.25 3.6 3.43LM (2) 3.13 3.4 3.26
CE 3.38 3.6 3.49TJ 3.13 3.2 3.16
3. Couleur LM (1) 3.78 4 3.89LM (2) 1.89 3 2.44
CE 2.67 3.6 3.13TJ 4.33 3.4 3.87
4. Etiquettes LM 4 3.8 3.9CE 3 3.6 3.3TJ 3.67 3.6 3.63
5. Recherche LM (1) 4.67 3.4 4.03LM (2) 3.94 4 3.97
6. Liens LM (1) 3.72 4.2 3.96LM (2) 3.94 4.3 4.12
CE 3.33 2.8 3.07TJ 4.72 4.2 4.46
7. Projection LM 3.78 4.2 3.99CE 4 5 4.5
8. Modif. structure LM 3.56 3.6 3.58CE 4.11 3.7 3.91
9. Modif. echelle LM (1) 4.83 3.4 4.12LM (2) 3.11 3.4 3.26
CE 2.67 3.6 3.1310. Ensemble/details LM 3.22 3.2 3.21
CE 3.29 3.8 3.54TJ 3.71 3.75 3.73
11. Menus LM 4.29 3.8 4.04CE 3 4 3.5TJ 4.14 3 3.57
12. Facilite acces LM 4 4.2 4.1CE 3.5 4.2 3.85TJ 2.75 2.8 2.78
13. Navigation (imbr.) LM 4.5 3.9 4.2TJ 2.61 3.8 3.21
14. Apparence (imbr.) LM 4.56 4.1 4.33TJ 2.94 3.8 3.37
15. Historique LM 4 3.6 3.8TJ 2.28 3 2.64
Tab. 4.1 – Resultats des tests d’utilisateurs
Chapitre 4 : Methode de representation 47
1. Forme des concepts
Les formes a l’etude, en ce qui concerne la visualisation des concepts, etaient le cercle
et la sphere. Les utilisateurs non experimentes ont montre une forte preference pour la
sphere, tandis que les utilisateurs experimentes ont montre une legere preference pour
les cercles. Ainsi, globalement, les spheres ont ete plus appreciees.
2. Taille des concepts
En ce qui concerne la taille des concepts, de maniere generale, les logiciels se placent en
ordre croissant de taille comme suit : Lattice Miner option 2, ToscanaJ, Concept Explorer
et Lattice Miner option 1. Toutefois, Concept Explorer propose differentes options pour
faire varier la taille des concepts. Les concepts ne representant pas un nouvel objet (avec
tous ses attributs) peuvent etre affiches sous la forme d’un point, la taille peut varier en
fonction du nombre d’objets presents dans le concept ou les concepts peuvent etre tous
de la meme taille.
Concept Explorer a ainsi ete favorise en ce qui concerne la taille par les utilisateurs
des deux groupes, suivi de tres pres par l’option 1 de Lattice Miner (concepts de plus
grande taille). Nous en deduisons donc que les utilisateurs ont une preference pour la
taille la plus grande evaluee, mais qu’ils apprecient la presence d’options. La version
finale du prototype a donc ete modifiee pour inclure certaines options a ce niveau, lors
de la visualisation de diagrammes non imbriques.
3. Couleur des concepts
Dans ToscanaJ, la couleur vehicule la meme information que dans Lattice Miner.
Toutefois, dans ce cas-ci, plutot que de modifier l’intensite de la couleur en fonction du
nombre d’objets presents dans un concept (option 1 de Lattice Miner), c’est la teinte
de la couleur qui varie, sur le canal chromatique jaune-bleu. Dans Concept Explorer,
la couleur est utilisee pour montrer l’apparition d’un nouvel objet dans l’ordre partiel
(a partir de l’infimum) et pour montrer l’apparition d’un nouvel attribut dans l’ordre
partiel (a partir du supremum).
Les utilisateurs ont en grande majorite accorde leur preference a l’utilisation de la
couleur pour refleter la quantite d’objets dans un concept. Pour ce qui est de ceux qui
Chapitre 4 : Methode de representation 48
connaissaient peu ou pas les treillis, ils ont prefere une variation sur un canal chroma-
tique. Les autres ont prefere une variation d’intensite.
4. Contenu des etiquettes
Dans ToscanaJ et Concept Explorer, les informations sur les attributs et les objets
sont presentees dans des etiquettes differentes pour un meme concept. Pour ce qui est de
Lattice Miner une seule etiquette est associee a chaque concept et elle contient a la fois
les informations sur les attributs et les objets. Aussi, dans ToscanaJ, les attributs sont
toujours affiches selon l’etiquetage reduit (affichage uniquement la premiere fois qu’un
element apparaıt dans le treillis) et l’information concernant les objets peut etre sous
forme d’etiquetage reduit, de liste complete ou de pourcentage par rapport au nombre
total d’objets. Les deux autres applications presentent une variete d’options d’affichage
autant pour les attributs que pour les objets. Les tests ont montre une preference pour
le type d’etiquettes present dans notre prototype, et cela, de la part des deux groupes
d’utilisateurs.
5. Recherche d’un concept
Pour ce qui est des techniques visuelles utilisees pour attirer l’attention sur un concept
recherche dans le treillis, seules les options presentes dans Lattice Miner ont ete evaluees,
les autres applications n’offrant pas un tel mecanisme. Les utilisateurs non experimentes
ont de loin favorise le mouvement de gauche a droite d’un concept (option 1), tandis que
les utilisateurs experimentes ont clairement favorise le clignotement (option 2). Ainsi,
les deux techniques ont obtenu globalement a peu pres le meme score, avec un avantage
negligeable pour le mouvement (0.06/5 points de difference). Les deux options sont donc
maintenues dans la version finale du prototype.
6. Liens entre les concepts
Les liens entre les concepts (filtre, ideal, parents, enfants, etc.) sont mis en evidence
dans Concept Explorer en mettant les elements pertinents en bleu vif et les autres en
gris pale. ToscanaJ pour sa part utilise le principe des coutours en placant un trait gras
Chapitre 4 : Methode de representation 49
et noir autour des elements pertinents. De plus, les elements non pertinents deviennent
plus pales.
ToscanaJ obtient un score presque parfait chez les utilisateurs debutants et un score
tres eleve chez les utilisateurs avertis, qui ont toutefois prefere la deuxieme option de
Lattice Miner. Cette option utilise le flou, mais reduit egalement la taille des concepts
non pertinents. De maniere generale donc, c’est la presence de contours, combinee avec
la difference de nettete, qui l’emporte. La version finale du prototype a donc ete modifiee
pour ajouter des contours aux concepts pertinents.
7. Projection sur les attributs et les objets
Dans Concept Explorer, la projection sur les attributs et les objets est faite a la volee,
c’est-a-dire qu’aussitot qu’un element est retire par l’utilisateur, il est egalement retire
du treillis. De plus, la fenetre de selection et deselection des elements est presente dans
une portion de la fenetre principale. Dans Lattice Miner, la modification du treillis est
faite une fois que l’utilisateur a termine de selectionner les elements qui l’interessent et
la fenetre de selection des elements doit etre ouverte a l’exterieur de la fenetre princi-
pale. Les deux groupes d’utilisateurs ont prefere la fonctionnalite offerte dans Concept
Explorer.
8. Modification de la structure du treillis
Encore ici, Concept Explorer offre la possibilite de modifier la structure du treillis
directement a l’interieur de la fenetre principale tandis que Lattice Miner demande l’ou-
verture d’une fenetre externe. Les deux applications offrent la possibilite de modifier
manuellement la position des concepts et presentent egalement des mecanismes de mo-
dification automatique de la structure du treillis (utilisation de modeles predefinis ou
“templates”). Toutefois, Concept Explorer offre deux options pour le deplacement ma-
nuel des concepts : ils peuvent etre deplaces un a la fois, ou le deplacement d’un concept
peut entraıner le deplacement equivalent de tous ses descendants.
La fonctionnalite favorisee a ete pour les deux groupes celle presente dans Concept
Explorer, les utilisateurs experimentes accordant toutefois un score assez rapproche a
la fonctionnalite de Lattice Miner. D’apres ce resultat et celui obtenu au point prece-
dent, nous en concluons que les fonctionnalites sont plus appreciees lorsqu’elles sont
Chapitre 4 : Methode de representation 50
directement accessibles dans la fenetre principale. Sinon, le fonctionnement de la fonc-
tionnalite semble avoir ete apprecie. La version finale du prototype a donc ete ajustee
consequemment, pour ce qui est des fonctionnalites de recherche de concept et de pro-
jection. Concernant la modification de la structure du treillis, la fonctionnalite a ete
maintenue telle que presentee lors de l’evaluation, pour des questions de performance
mentionnees precedemment.
9. Agrandissement / reduction du treillis
L’option 1 de Lattice Miner offre des animations lors du changement d’echelle du
treillis (le changement se fait graduellement) tandis que l’option 2 passe d’une taille a
l’autre directement, sans montrer l’evolution de l’image. Diverses options sont disponibles
dans les deux cas : agrandissement, reduction, vue entiere du treillis, ajustement de
l’echelle pour voir une portion choisie de l’image. Concept Explorer ne propose pas
d’animation, mais offre les fonctionnalites suivantes : agrandissement, reduction, vue
entiere du treillis. Aussi, le pas de changement d’echelle dans Concept Explorer est plus
petit que celui du prototype.
Les utilisateurs debutants ont accorde une preference tres nette (1.72/5 points de
difference) a la presence d’animations pour la modification de l’echelle, tandis que le
second groupe a prefere la fonctionnalite offerte dans Concept Explorer. Ils ont aussi
ete indifferents par rapport a la presence d’animations ou non dans le prototype. Il
ressort donc qu’il faut modifier le pas du changement d’echelle dans Lattice Miner pour
permettre un changement plus fin de l’echelle, ce qui est inclus dans la version finale.
10. Vue d’ensemble vs. vue des details
Nous nous sommes egalement interesse a l’appreciation de la vue d’ensemble ainsi que
la vue des details dans les trois applications testees. Lattice Miner propose une petite
carte pour situer la portion visualisee du treillis par rapport a l’ensemble du treillis, et
les etiquettes peuvent etre affichees une a une dans les concepts en plus de presenter
toutes les informations d’un concept dans une seule etiquette. Aussi, les etiquettes sont
cachees lorsque les concepts sont rendus flous. Ces fonctionnalites ne sont pas presentes
dans les autres applications.
Chapitre 4 : Methode de representation 51
Les utilisateurs non experimentes ont tout de meme prefere ToscanaJ a ce sujet et
les utilisateurs experimentes ont prefere Concept Explorer. Ces deux applications fonc-
tionnent de maniere tres semblable a ce niveau, a l’exception que, par defaut, ToscanaJ
presente le nombre d’objets contenus dans un concept tandis que Concept Explorer pre-
sente l’etiquetage reduit pour les objets. La premiere option prend un espace reduit dans
l’image. Il est egalement a noter que Lattice Miner affiche les etiquettes, lors de l’etique-
tage reduit, meme si les ensembles d’objets et d’attributs sont vides, ce qui n’est pas le
cas dans les autres applications. Une autre difference est que le mecanisme d’affichage
de toutes les etiquettes a la fois est moins direct dans Lattice Miner. Nous avons donc
modifie la version finale du prototype pour faciliter l’affichage de toutes les etiquettes a
la fois, en supprimant les etiquettes contenant des ensembles vides lors de l’etiquetage
reduit. Aussi, la possibilite de cacher les etiquettes des concepts flous a ete mise comme
option seulement.
11. Convivialite des menus
La convivialite des menus n’est certes pas directement liee aux choix visuels a l’etude
dans ce travail, mais elle est fortement liee a la facilite d’utilisation d’un logiciel de
visualisation des treillis des concepts. Nous avons donc inclus ce critere d’evaluation
dans les tests d’utilisateurs. Sans entrer dans les details, nous pouvons constater que
les menus presents dans Lattice Miner ont ete les plus apprecies par les utilisateurs
debutants et les menus presents dans Concept Explorer ont ete plus apprecies par les
utilisateurs experimentes, qui ont toutefois accorde un bon score aux menus du prototype.
Ces derniers ont donc ete favorises de maniere generale.
12. Facilite d’acces aux fonctionnalites
Dans le meme ordre d’idees, la facilite d’acces aux fonctionnalites jugees les plus utiles
a egalement ete evaluee, pour tenir compte des fonctionnalites accessibles a l’exterieur
des menus, dans les barres d’outils entre autres. Les utilisateurs peu habitues aux treillis
ont prefere l’acces aux fonctionnalites presente dans Lattice Miner tandis que le deuxieme
groupe a autant apprecie Concept Explorer que le prototype a ce sujet. Ainsi, Lattice
Miner a ete prefere globalement a ce niveau.
Chapitre 4 : Methode de representation 52
13. Navigation dans les diagrammes imbriques
Dans ToscanaJ, la navigation dans les diagrammes imbriques se fait en double-cliquant
sur un concept pour visualiser son contenu plus en detail. Le treillis externe est alors
supprime de l’image et on peut y revenir en utilisant un bouton prevu a cet effet : “Go
back one diagram”. Pour ce qui est de Lattice Miner, on peut egalement double-cliquer
sur un concept pour voir son contenu, mais les autres concepts du treillis restent pre-
sents. Il s’agit donc simplement d’un changement d’echelle et, en ce sens, le changement
d’echelle et le deplacement du treillis dans l’ecran peuvent etre utilises pour la navigation
dans le diagramme imbrique. Nous rappelons egalement la presence de la fonctionnalite
permettant de dupliquer la fenetre de visualisation dans le but d’analyser en parallele
differentes parties du treillis. Lattice Miner a ete prefere sans equivoque (1.89/5 points
de difference) par les utilisateurs non experimentes et il a ete legerement prefere (0.1/5
points de difference) par les utilisateurs experimentes.
14. Apparence des diagrammes imbriques
Les diagrammes imbriques sont presentes, dans ToscanaJ, deux niveaux a la fois, peu
importe l’echelle des treillis. Dans le cas de Lattice Miner, les treillis internes s’affichent
aussitot que l’echelle du treillis permet d’afficher un diagramme de taille suffisamment
grande a l’interieur d’un concept. Aussi, ToscanaJ presente les concepts externes comme
un ovale contenant un treillis et Lattice Miner presente les concepts externes comme
une sphere ouverte, ou une demi-sphere, contenant un treillis. Encore ici, les utilisateurs
debutants ont montre une claire preference pour le prototype, et les utilisateurs du second
groupe on montre une legere preference pour le prototype.
15. Gestion de l’historique
L’historique dans ToscanaJ permet de conserver la trace quant aux etapes de navi-
gation ayant permis d’en arriver au concept presentement a l’etude. Il se presente donc
sous la forme d’une liste textuelle des concepts sur lesquels l’utilisateur a double-clique et
indique quel concept est presentement visualise ainsi que le treillis interne qu’il contient
lorsque cela s’applique. Pour ce qui est de Lattice Miner, l’historique est gere en me-
morisant chacune des actions faites par l’utilisateur. Ces actions peuvent ensuite etre
Chapitre 4 : Methode de representation 53
defaites et refaites a l’aide des boutons rendus disponibles a cet effet. Sous cet aspect,
les deux groupes d’utilisateurs ont grandement apprecie le prototype et ont peu apprecie
ToscanaJ.
Conclusion de l’analyse des resultats
Nous retenons de cette analyse des resultats que les utilisateurs preferent les fonc-
tionnalites presentes dans la fenetre principale d’une application et qu’ils apprecient
peu devoir utiliser un outil externe. Aussi, nous constatons que si les utilisateurs debu-
tants aiment les attributs visuels plus complexes (animations, mouvement des concepts,
formes spheriques, contours marquants, diversite des teintes de couleurs), les utilisateurs
experimentes preferent souvent les attributs visuels plus simples (absence d’animation,
clignotement des concepts, formes circulaires, flou, modification de l’intensite de la cou-
leur). Il a donc semble interessant d’integrer dans la derniere version de Lattice Miner
la possibilite de choisir parmi deux ensembles de valeurs predefinies pour les options
concernant les attributs visuels.
4.3 Affichage des treillis
La prochaine section traite des choix qui ont ete faits en ce qui concerne la disposition
des concepts d’un treillis. L’objectif principal etait certainement d’afficher un treillis qui
soit esthetique, en tenant compte des criteres etablis tels la reduction du nombre de
croisements d’aretes et la reduction du nombre de pentes parmi les aretes. Toutefois,
certains criteres esthetiques peuvent entrer en contradiction avec d’autres et cela rend
difficile la mesure objective de la qualite d’un graphe. Nous avons donc du faire plusieurs
essais et se fier largement au jugement humain pour etablir la superiorite d’un affichage
sur un autre. Nous ajoutons egalement que, dans cette section, lorsqu’il est question
d’un niveau, il s’agit d’une position des noeuds d’un graphe sur l’axe vertical, ce qui ne
doit pas etre confondu avec les niveaux d’imbrication d’un diagramme imbrique.
4.3.1 Limites rencontrees
Dans certains cas, il aurait certainement ete interessant de calculer de nombreuses
possibilites de disposition des noeuds, pour pouvoir choisir la meilleure, de maniere au-
Chapitre 4 : Methode de representation 54
tomatique, selon des criteres fixes. Un tel travail aurait toutefois ete tres couteux en
temps d’execution et aurait rendu l’utilisation de l’application developpee moins interes-
sante. Pour cette raison, les diagrammes additifs n’ont pas pu etre employes. En effet,
cette technique demande precisement de generer une grande quantite de graphes pour
ensuite choisir celui qui obtient le meilleur score d’apres des criteres predefinis. L’une
des critiques negatives de cette technique est justement qu’elle est tres longue a executer
[53].
De la meme maniere, une technique naıve de minimisation des intersections entre
les aretes n’etait pas envisageable. Il existe certainement des algorithmes qui traitent le
probleme plus efficacement, mais ceux-ci demandent l’insertion de nouveaux noeuds dans
le graphe de sorte a n’avoir aucune arete qui traverse plus d’un niveau [18, 35, 16, 17, 33].
Ces noeuds se traduisent ensuite a l’affichage par des angles dans les aretes, ce qui n’etait
pas desirable dans notre cas, pour differentes raisons. D’une part, cela aurait rendu plus
complexes les manipulations manuelles de la structure du treillis, ce qui va a l’encontre
de notre objectif de convivialite. D’autre part, cela aurait risque d’amener de la confusion
dans la representation graphique, vu la taille des noeuds obligee par l’imbrication des
treillis. Par contre, avec des aretes sans angle, il est plus aise de deduire la provenance
d’une arete qui serait partiellement cachee par un noeud (voir la continuite et la fermeture
dans les lois de Gestalt [30, 52]).
Ces limites quant aux algorithmes utilisables et quant au temps d’execution souhaite
nous ont donc amene a nous interesser plus particulierement a l’etablissement de cer-
taines heuristiques d’affichage de treillis. Aussi, comme nous visons l’affichage de treillis
de taille reduite, en passant par une methode de decomposition, il etait realiste de s’at-
tarder a la representation la plus esthetique pour certaines structures de treillis possibles.
4.3.2 Structures particulieres
Certains treillis se pretent bien a un affichage selon une structure donnee. Par exemple,
un treillis booleen est clairement represente par un treillis de forme cubique. Un utili-
sateur pourrait egalement etre interesse, a des fins d’analyse, a positionner les concepts
d’un treillis selon la cardinalite de leur intention.
De plus, des treillis avec peu de niveaux et peu de liens entre les niveaux presentent des
possibilites d’affichage suffisamment restreintes pour etres traites individuellement. Dans
Chapitre 4 : Methode de representation 55
le cadre de ce travail, nous nous sommes limite aux treillis a trois et a quatre niveaux, ce
qui est parfaitement raisonnable vu l’explosion combinatoire des possibilites d’affichage
lorsque le nombre de niveaux et le nombre de liens entre les niveaux augmentent.
La suite de cette section decrit les structures particulieres qui ont ete retenues.
Structure cubique
Lorsqu’un treillis contient a son premier niveau trois concepts et qu’au second niveau
se trouvent les trois jointures possibles entre ces concepts, il s’agit d’un treillis booleen. Il
est bien sur possible de generaliser ce type de treillis, en ajoutant un niveau de jointures
possibles par concept additionnel situe au premier niveau. Ce type de treillis s’affiche de
maniere esthetique sous une forme cubique, comme presente a la figure 4.4.
Fig. 4.4 – Structure cubique d’un treillis booleen a quatre attributs
La forme cubique peut etre utilisee, lorsque la structure du treillis le permet, meme si
toutes les jointures ne sont pas presentes. Toutefois, plus il y a de jointures manquantes,
plus la regularite du treillis en devient reduite (voir les differents exemples de la figure
4.5), ce qui diminue l’interet de la structure. Dans Lattice Miner, nous avons donc fixe un
seuil pour que la structure cubique reste interessante : le treillis doit contenir au moins
les 23
des concepts contenus dans le treillis booleen complet correspondant. L’utilisateur
reste toutefois libre d’afficher cette structure s’il le desire meme si ce seuil n’est pas
atteint.
Positionnement selon la cardinalite de l’intention des concepts
Si la structure cubique et le diagramme additif ne sont pas toujours une solution
utilisable pour afficher un treillis, le positionnement des concepts selon la cardinalite
Chapitre 4 : Methode de representation 56
Fig. 4.5 – Structures cubiques incompletes de treillis a cinq attributs
de leur intention est quant a lui toujours possible. Les concepts sont alors regroupes en
fonction du nombre d’attributs qu’ils contiennent et chaque groupe de concepts est situe
sur un niveau distinct, en allant des concepts avec le moins d’attributs vers les concepts
avec le plus d’attributs.
Vu l’ordre partiel etabli sur les attributs du treillis, un tel positionnement respecte
necessairement la relation d’ordre entre les concepts. Toutefois, il a le desavantage de
produire, dans de nombreux cas, des treillis etroits et avec beaucoup de niveaux. Une
telle disposition amene la presence de longues aretes qui traversent plusieurs niveaux,
ce qui reduit la clarte du graphe. La figure 4.6 montre un exemple d’un treillis qui est
de toute evidence mieux represente en positionnant les concepts au niveau le plus haut
possible plutot qu’au niveau qui correspond a la cardinalite de leur intention. Ce type
d’affichage n’est donc jamais choisi automatiquement par Lattice Miner, mais il reste
une option possible pour l’utilisateur.
Treillis a trois niveaux
Les treillis qui ne possedent que trois niveaux ne presentent aucune difficulte d’affi-
chage : les concepts entre le supremum et l’infimum peuvent etre places a egale distance
sur une meme ligne horizontale et il n’y aura ainsi aucun croisement d’aretes dans le
graphe. Ces treillis indiquent aussi cette information particuliere : si un objet a un at-
tribut en commun avec un autre objet, alors il possede exactement le meme ensemble
d’attributs que cet autre objet.
Chapitre 4 : Methode de representation 57
Fig. 4.6 – Positionnement des concepts : plus haut niveau possible (gauche) et selon lacardinalite de l’intention (droite)
Dans certains cas, chaque objet possedera ainsi, au maximum, un seul attribut parmi
tous les attributs du contexte et il n’y aura donc aucune jointure entre les concepts, en
excluant bien sur l’infimum. Dans une telle situation, pour permettre une correspondance
directe avec les donnees du contexte, il a ete choisi d’afficher les concepts du treillis selon
le meme ordre que celui des attributs dans le contexte. Ainsi, si le contexte presente les
attributs a, b, c et d (dans cet ordre), le treillis affichera les concepts avec les intentions
{a}, {b}, {c} et {d}, dans le meme ordre.
Treillis a quatre niveaux
Les treillis qui possedent quatre niveaux offrent certainement plus de possibilites d’af-
fichage : il s’agit ici de determiner l’ordre dans lequel les concepts du premier niveau
doivent etre affiches ainsi que la position des enfants (predecesseurs) de ces concepts,
lorsque ceux-ci existent. Il serait alors souhaitable de placer les noeuds enfants pres de
leurs parents (successeurs), de minimiser les intersections d’aretes et aussi d’afficher une
structure la plus reguliere possible, ce qui se concretise souvent par une minimisation du
nombre de pentes pour les aretes et une augmentation de la symetrie du graphe.
Il est possible de distinguer deux groupes de concepts parmi ceux du premier niveau :
les concepts parents (ceux qui ne sont pas directement lies a l’infimum) et les concepts
directement lies a l’infimum. De maniere generale, en separant bien les concepts parents
des autres, il est alors possible d’eviter certaines intersections. Suivant cette idee, nous
Chapitre 4 : Methode de representation 58
nous sommes interesse a certains treillis particuliers pour proposer une disposition fixe
des concepts. Il s’agit des treillis ayant de un a trois parents et de un a deux enfants.
Pour chaque cas, differentes dispositions des concepts ont ete suggerees et celle qui
paraissait la plus interessante, d’un point de vue subjectif, a ete retenue. Les structures
ainsi fixees sont presentees a la figure 4.7. Le nombre de concepts directs represente dans
ces structures peut certainement etre augmente. Si les parents et enfants sont au centre,
les concepts directs sont positionnes en quantite environ egale (la difference maximale
est de un) aux extremites gauche et droite. Si les parents et enfants sont aux extremites,
les concepts directs sont regroupes au centre ou a l’autre extremite, selon le cas.
Il aurait bien sur ete possible de traiter un plus grand nombre de structures indivi-
duelles, mais comme il existe une quantite infinie de ces structures, il a fallu se borner a
un nombre restreint que nous avons fixe arbitrairement. Tous les autres cas seront traites
par la methode generale decrite plus loin dans cette section.
Fig. 4.7 – Structures fixees pour les treillis a quatre niveaux
4.3.3 Affichage general
Nous venons de voir quelles sont les differentes structures particulieres ciblees pour
etre associees aux treillis. Il reste maintenant a determiner sur quelle base une structure
Chapitre 4 : Methode de representation 59
sera preferee a une autre pour un treillis donne et quelle solution est appliquee dans le
cas d’un treillis qui ne peut etre associe a aucune de ces structures.
En premier lieu, les concepts sont tous places sur le niveau le plus haut qui peut
leur etre attribue, selon l’ordre partiel etabli. Ensuite, si le treillis ne possede que trois
niveaux, la structure de treillis a trois niveaux est appliquee. Pour les treillis avec plus
de trois niveaux, si la structure cubique se montre interessante (le treillis contient au
moins les 23
des concepts du treillis booleen correspondant), c’est cette structure qui est
employee. Le choix suivant pour un treillis a quatre niveaux est la structure de treillis
a quatre niveaux. Dans tous les autres cas, si le treillis est suffisamment petit (aucun
niveau du treillis ne possede plus de sept concepts) et qu’un graphe planaire est trouve
a l’interieur des cent premieres solutions produites par une procedure de reduction des
intersections, c’est cette disposition des concepts qui est choisie. Sinon, la disposition
dirigee par la position des parents (decrite plus loin) est appliquee.
Reduction du nombre d’intersections d’aretes
En ce qui concerne la reduction du nombre d’intersections d’aretes dans un treillis, il
est a noter qu’il n’est pas question ici de la minimisation du nombre d’intersections, ce qui
demanderait de generer beaucoup trop de solutions et depasserait le temps d’execution
acceptable dans plusieurs cas. Nous avons donc choisi de minimiser les intersections
apparaissant entre deux niveaux consecutifs, pour une permutation donnee du premier
niveau apres le supremum. Au maximum, 500 permutations sont generees. Cette limite
a ete fixee suite a differents essais, de sorte a obtenir un compromis acceptable entre
le temps d’execution et la qualite du resultat obtenu. Pour borner les permutations a
ce nombre, un maximum de permutations est alloue a chaque niveau pour s’assurer de
ne jamais depasser le total de permutations permises. Les solutions obtenues sont alors
comparees pour retenir la solution produisant le moins d’intersections au total (incluant
les aretes traversant plus d’un niveau). La methode s’assure egalement qu’il n’y a pas
de concept centre sur une arete qui ne lui appartient pas, ce qui est clairement a eviter
pour permettre une lecture non erronee du treillis.
Cette methode presente comme avantage le fait que les treillis de petite taille, qui ont
plus de chance d’offrir une representation claire avec une minimisation des intersections,
parviendront a la solution optimale a l’interieur des 500 permutations produites. Dans le
cas des treillis plus volumineux, ce qu’on constate, c’est que meme avec une minimisation
Chapitre 4 : Methode de representation 60
des intersections, le treillis reste souvent difficile a lire, ce qui rend inutile l’effort fourni
a trouver la meilleure solution. De plus, vu l’objectif de la deuxieme partie de ce travail
qui vise a produire des treillis de taille reduite, les treillis que nous visons plus particu-
lierement sont justement ceux qui parviendront a la solution optimale a l’interieur d’un
maximum de 500 permutations.
Disposition dirigee par la position des parents
Si les diagrammes additifs n’ont pas pu etre retenus, ils ont tout de meme servi d’ins-
piration au developpement d’une methode heuristique de disposition des concepts. La
methode est donc elle aussi dirigee par la position des parents, mais ne demande pas
l’evaluation de la qualite des solutions produites.
Tout d’abord, comme dans le cas de la reduction des intersections, un maximum
de 500 permutations sont produites, mais ces permutations s’appliquent dans ce cas-
ci uniquement au premier niveau apres le supremum. Pour chaque concept du niveau
suivant, la position horizontale du parent le plus a gauche ainsi que la position horizontale
du parent le plus a droite sont utilisees pour calculer la position milieu sur l’abscisse.
C’est cette position qui est initialement la position assignee au concept.
Ensuite, la position des enfants est verifiee pour s’assurer qu’aucun concept n’occupe
la meme position. Si deux concepts occupent la meme position, un decalage est d’abord
fait d’une position a gauche, puis d’une a droite, puis de deux a gauche et ainsi de suite
jusqu’a la decouverte d’une position libre. Suite a ce repositionnement, si le niveau traite
contient plus de concepts que le niveau parent, un decalage progressif de chaque concept
est fait pour permettre au niveau de s’etendre au dela de la largeur du niveau parent.
Le decalage est progressif dans le sens que plus un concept est proche d’une extremite,
plus son decalage sera grand vers son extremite assignee (la moite gauche des concepts
est attiree vers la gauche et la moite droite est attiree vers la droite). Le decalage des
extremites est aussi calcule en fonction du nombre de concepts supplementaires dans le
niveau enfant par rapport au niveau parent.
Finalement, les concepts aux extremites sont une fois de plus decales, permettant ainsi
de les separer de leur voisin dans le cas ou ceux-ci seraient a la position immediatement
juxtaposee. Comme les extremites ont plus de liberte de mouvement, cela permet d’aerer
le graphe. Ces decalages auront un impact direct sur le reste de la procedure puisque les
Chapitre 4 : Methode de representation 61
niveaux subsequents seront calcules de la meme maniere, en positionnant les concepts
d’un niveau en fonction de la position de leurs parents du niveau precedent.
Fig. 4.8 – Disposition des concepts dirigee par la position des parents
Comme nous l’avons mentionne au debut de cette section, les 500 premieres permuta-
tions du premier niveau apres le supremum sont generees et produisent ensuite chacune
une solution. Les 500 solutions ainsi obtenues sont alors comparees pour retenir celle qui
produit le moins d’intersections. Comme resultat, les treillis produits par cette methode
contiennent peu d’intersections et presentent dans plusieurs cas un haut niveau de sy-
metrie, lorsqu’il y a possibilite d’en obtenir. Aussi, cette technique permet de mettre en
relief les noeuds relies en les placant a des positions dependantes de leurs relations. La
figure 4.8 montre deux exemples d’affichage de treillis generes a l’aide de cette methode.
Chapitre 5
Methode de decomposition
Ce chapitre presente les experimentations qui ont ete menees dans le but de prendre
connaissance des forces et faiblesses de differents algorithmes de decomposition existants.
Ensuite, la methode de decomposition proposee est expliquee en detail.
5.1 Contextes utilises pour l’experimentation
Pour les tests preliminaires, quatre contextes de taille petite a moyenne (dix objets
a 214 objets), crees manuellement, ont ete utilises. Parmis ces contextes, trois etaient
issus de la conversion d’un tableau contenant des valeurs numeriques ou nominales pour
chacun de ses attributs en un tableau contenant des valeurs binaires. En ce sens, un
attribut du tableau initial qui aurait eu trois modalites differentes pour ses valeurs
aurait ete traduit par trois attributs (un representant chaque modalite) dans le contexte
binaire pour indiquer la modalite associee a chacun des objets. Les contextes binaires
issus d’une telle conversion ont cette particularite qu’ils presentent un regroupement
semantique evident des attributs. En effet, les attributs binaires provenant d’un meme
attribut value forment une classe d’elements fortement relies du point de vue semantique.
Des tests plus nombreux ont aussi pu etre faits sur un total de cent contextes generes
aleatoirement, en faisant varier trois parametres, soient le nombre d’attributs, le nombre
d’objets ainsi que la densite du contexte. Le nombre d’attributs a varie entre trente et
250, le nombre d’objets a varie entre 250 et mille et la densite des contextes a varie entre
une moyenne de 10% a 70% des attributs par objet. Plus precisement, vingt combinaisons
Chapitre 5 : Methode de decomposition 63
des trois parametres ont ete composees et cinq instances de chacune de ces combinaisons
ont ete produites.
Enfin, pour verifier le lien semantique entre les attributs regroupes dans une meme
classe suite a une decomposition, des contextes de type attribut/valeur ont ete utilises.
Ces contextes ont du etre prealablement convertis en contextes binaires par une methode
automatisee de discretisation des donnees. Pour ces experimentations, dix contextes ont
ete puises dans la banque UCI [9], qui contient des donnees de domaines divers et utilisee
dans la communaute de l’apprentissage machine. Un autre contexte, nomme Gouver-
nance, a ete obtenu d’une source non publique.
5.2 Experimentation d’algorithmes existants
Les algorithmes qui ont ete implementes se limitent a la decomposition sous-directe, la
decomposition par parcours en largeur et une decomposition par adaptation de l’analyse
en composantes principales. Les algorithmes de decomposition horizontale et par atlas
ont ete rejetes a la base vu leur incapacite a fournir une decomposition pouvant etre
representee dans un diagramme imbrique. La decomposition sous-tensorielle a aussi ete
rejetee puisqu’elle produit un sous-ensemble des decompositions possibles par decompo-
sition sous-directe et, comme nous le verrons, la decomposition sous-directe ne s’est pas
montree utilisable dans notre cas. En ce qui concerne la decomposition verticale, elle est
restee plus simplement un guide pour adapter les autres algorithmes puisque notre objec-
tif etait bien de partitionner l’ensemble initial des attributs, mais qu’un partitionnement
arbitraire ne convenait aucunement a notre objectif de regroupement semantique.
5.2.1 Decomposition sous-directe
La decomposition sous-directe [22] a ete appliquee initialement aux quatre contextes
generes manuellement. Le resultat a ete identique dans les quatre cas : la decomposition
n’a pas ete possible et a mene a un seul facteur, soit le contexte initial. Nous avons
ensuite applique cet algorithme de decomposition aux cent contextes generes de maniere
aleatoire, ce qui n’a pas ete plus concluant. Aucun des cent contextes n’a produit plus
d’un facteur, donc nous n’avons obtenu aucune decomposition. Ceci nous a montre que
Chapitre 5 : Methode de decomposition 64
ni dans le cas de contextes ayant un sens, ni dans le cas de contextes quelconques, nous
ne pouvions produire par decomposition sous-directe un partitionnement des attributs.
5.2.2 Decomposition par parcours en largeur
La decomposition par parcours en largeur [1] s’est aussi montree inefficace pour le par-
titionnement des attributs d’un contexte. Dans seulement 36 cas parmi les 104 contextes,
elle a produit plus de deux classes d’attributs, et parmi ces 36 cas, trente n’avaient que
trois classes d’attributs. Vu le fonctionnement de l’algorithme, un partitionnement en
deux classes est le plus petit partitionnement pouvant etre obtenu. Une classe contiendra
un seul attribut (la racine) et l’autre classe contiendra tous les autres attributs, ce qui
n’est pas une decomposition valable etant donne que la racine est choisie arbitrairement
pour demarrer l’algorithme. On constate aussi que dans le cas d’un contexte dense, la
plupart des attributs pourront etre accedes a partir des objets qui possedent l’attribut
racine, vu la nature de l’algorithme.
5.2.3 Decomposition par analyse en composantes principales
L’analyse en composantes principales a ete utilisee de la maniere habituelle jusqu’a la
decouverte des composantes principales. Toutefois, a partir de cette etape, les donnees
n’ont pas ete projetees sur ces composantes. Les attributs ont plutot ete regroupes en
fonction de la composante qui les decrivait le mieux. Les groupes ainsi composes ont
constitue le partitionnement voulu des attributs.
Cette methode s’est montree plus interessante que les precedantes en ce sens qu’elle
a permis de partitionner l’ensemble initial des attributs pour 103 contextes parmi les
104 contextes utilises pour les tests. Toutefois, les regroupements obtenus, s’il montrent
certainement un regroupement semantique des attributs, ne presentent pas un regroupe-
ment interessant pour les diagrammes imbriques que nous voulons construire. En effet,
vu le fonctionnement de la methode, les attributs regroupes sont les attributs les plus cor-
reles entre eux. Ainsi, dans le cas d’un contexte contenant des donnees sur un ensemble
d’ordinateurs (ex. trois modalites de prix, cinq modalites de poids, quatre modalites pour
la quantite de memoire et quatre modalites pour la vitesse du processeur), on obtient
des regroupements contenant, par exemple, un prix, un poids, une quantite de memoire
Chapitre 5 : Methode de decomposition 65
et une vitesse de processeur. Le resultat est donc l’obtention de certains profils plus
frequents pour les objets, tandis que ce que nous voulions obtenir etait plutot un regrou-
pement des attributs de nature semblable (ex. un regroupement de toutes les vitesses de
processeurs).
5.3 Proposition d’une methode de decomposition
Cette section presente en premier lieu les caracteristiques qui se sont averees sou-
haitables suite aux experimentations avec les algorithmes existants. Elle decrit ensuite
l’algorithme qui a ete developpe pour resoudre la problematique initiale de decompo-
sition d’un contexte, tout en repondant aux nouveaux besoins decouverts. En dernier
lieu, une methode d’ordonnancement des sous-contextes produits par decomposition est
proposee.
5.3.1 Caracteristiques souhaitees
A la lumiere des resultats obtenus avec les methodes de decomposition implementees,
nous pouvons faire ressortir quelques elements souhaitables pour notre methode de de-
composition. En premier lieu, nous avons constate avec la decomposition par analyse
en composantes principales qu’un regroupement semantique des attributs n’etait pas
une condition suffisante pour composer des classes d’attributs interessantes en vue de
construire un diagramme imbrique. Le type de regroupement que nous desirons obtenir
en est un dans lequel la grande majorite des objets pourra etre representee dans chacune
des classes d’attributs creees, de sorte a pouvoir situer, dans le meilleur cas, chaque objet
par rapport a chacune des classes. Nous ne voudrions pas, par exemple, que la majorite
des objets se retrouve dans le supremum d’un treillis facteur, ce qui signifierait que la
majorite des objets ne possede aucun attribut de la classe donnee. Dans le cas de classes
formant des profils d’attributs, seuls les objets correspondant en partie a un profil seront
representes dans la classe correspondante et les autres se retrouveront dans le supremum.
Nous voudrons donc eviter ce type de regroupement.
Egalement, suite aux experimentations faites sur la decomposition par fouille en lar-
geur, nous constatons qu’une decomposition peut etre composee, par exemple, de trois
facteurs, avec un facteur possedant un seul attribut, un autre facteur possedant la grande
Chapitre 5 : Methode de decomposition 66
majorite des attributs et un dernier possedant une tres faible proportion des attributs.
Ce type de decomposition n’est pas souhaitable dans notre cas particulier, puisque le
but de la separation d’un contexte en plusieurs sous-contextes est de reduire la quantite
d’information presentee dans chacun des niveaux d’un diagramme imbrique. Or, si une
classe d’attributs contient la majorite des attributs du contexte, l’objectif de reduction
de la quantite d’information presentee dans chaque niveau n’est que faiblement atteint.
Il serait donc souhaitable d’obtenir une decomposition qui partage plus adequatement
les attributs en differentes classes, dans le cas general.
5.3.2 Description de l’algorithme
L’algorithme que nous proposons a ete construit de sorte a repondre a ces deux cri-
teres : il amene la representation d’une majorite des objets dans chacune des classes
d’attributs et il partitionne les attributs en classes de tailles relativement uniformes
(selon la nature des donnees).
La methode presentee est inspiree par l’idee de couverture de contenants (bin cove-
ring) [14]. Dans ce genre de problemes, un nombre d’elements possedant chacun un
poids est connu, ainsi que la capacite d’un nombre donne de contenants. Le but est
de maximiser le nombre de contenants qui seront remplis a pleine capacite. Toutefois,
dans notre probleme particulier, l’ajout de deux elements identiques (les objets) dans
un contenant (les classes d’attributs), n’ajoutera qu’un seul element au contenant. Nous
devons donc travailler avec des ensembles plutot qu’avec des collections d’elements. Cela
nous rapproche d’un type de problemes que l’on appelle la couverture de vecteurs [2].
Ainsi, de maniere generale, cette methode tente de remplir le plus possible un nombre
k de classes d’attributs avec tous les objets d’un contexte donne. Une classe est remplie
avec les objets qui possedent les attributs qu’elle represente et, dans le cas ideal d’un
contexte de type attribut/valeur converti en un contexte binaire, chaque objet ne serait
lie (dans la solution optimale) qu’a un seul attribut par classe.
Cependant, la recherche de cette solution optimale s’avere un probleme NP-difficile.
Le probleme a resoudre est equivalent a rechercher les ensembles maximaux d’attributs
qui ne sont possedes par aucun objet commun. Soit un graphe G contenant les attributs
du contexte comme ensemble de sommets et reliant deux sommets si les attributs qu’ils
representent ne sont possedes par aucun objet commun. La solution de notre probleme
Chapitre 5 : Methode de decomposition 67
consiste alors a trouver les cliques maximales dans G. Ce probleme est NP-difficile et
n’admet ainsi pas d’algorithme s’executant en temps polynomial [23]. Dans un objectif
d’efficacite de la recherche d’une solution, on s’interessera donc plus simplement a se
rapprocher de la solution optimale.
Afin de simplifier la description de l’algorithme developpe, nous definissons d’abord
un type de relation entre attributs, note Rc, pour une classe donnee c. Cette relation
indique l’existence d’au moins un objet possedant a la fois l’attribut x et l’attribut y
presents dans la classe c. Les attributs x et y sont alors lies par la presence d’au moins
un objet qui les possede tous les deux. Nous rappelons que la fonction g(x) retourne les
objets d’un contexte qui possedent l’attribut x.
Definition 5.1. Soient x et y des attributs presents dans la classe c. Si g(x)∩g(y) 6= 0,
alors x Rc y.
L’algorithme developpe fonctionne en trois etapes que voici.
Premiere etape : Choix du nombre de classes (k)
La premiere etape est le choix du nombre k de classes voulues. Ce nombre peut etre
specifie en entree ou ne pas l’etre. S’il n’est pas specifie, la valeur de k est fixee a l’entier
le plus pres du nombre moyen d’attributs possedes par les objets du contexte.
Deuxieme etape : Construction des classes
A la deuxieme etape, les classes sont construites. L’idee est alors de trouver la meilleure
classe possible pour chaque attribut, de sorte a minimiser le nombre d’objets qu’il a en
commun avec les attributs de la classe a laquelle il sera assigne. Initialement, chacune
des k classes est vide.
Les attributs a classer sont d’abord tries en ordre decroissant du nombre d’objets qui
les possedent, afin de traiter en premier lieu les attributs qui vont remplir le plus pos-
sible l’ensemble d’objets d’une classe. Ensuite, chaque attribut est associe a la premiere
classe trouvee qui ne concerne aucun des objets qui le possedent. Si aucune classe ne
correspond a cette exigence, un score est calcule pour chaque classe. Ce score est calcule
en fonction du nombre d’objets communs parmi ceux qui possedent le nouvel attribut
Chapitre 5 : Methode de decomposition 68
et ceux representes dans la classe concernee c. Il est aussi calcule en fonction du nombre
d’attributs de c avec lequel le nouvel attribut est lie par la relation Rc. Dans le cas ou
plus d’une classe obtient le meme score, on choisit la classe qui a le moins d’attributs.
Ce choix est fait de sorte a equilibrer le nombre d’attributs par classe et ainsi permettre
d’obtenir des treillis de concepts de tailles plus restreintes.
Une fois l’attribut place dans sa classe, les classes sont reordonnees en ordre decroissant
du nombre d’objets qu’elles representent. Puisque l’algorithme place un attribut dans la
premiere classe trouvee qui lui convient, cela permet de rencontrer d’abord les classes
presentant la plus grande contrainte, c’est-a-dire les classes dont l’ensemble d’objets a la
plus grande cardinalite. De cette facon, l’attribut sera place dans une classe plus difficile
a satisfaire mais qui lui convient, plutot que dans une classe moins remplie qui a ainsi
plus de chance de convenir a differents attributs.
Troisieme etape : Ajustement des classes
L’algorithme utilise etant un algorithme non optimal, les classes generees ne presentent
pas toujours la meilleure decomposition possible. En effet, si un attribut est place au
tout debut de l’algorithme, alors que les classes sont encore tres peu remplies, il se peut
qu’il soit place dans une classe qui, finalement, lui convient moins bien qu’une autre. Un
post-traitement a donc ete prevu pour replacer certains attributs qui, en fin de travail,
pourraient etre places dans une classe plus convenable.
Le nombre de relations Rc d’un attribut avec les autres attributs de sa classe c est
donc calcule. Les attributs qui ont un nombre de relations plus eleve que la moyenne
sont alors tous retires de leur classe. Ils sont ensuite replaces, selon la meme methode
que celle utilisee precedemment. Cette procedure est repetee jusqu’a ce que le nombre
de relations moyen par attribut se stabilise.
Exemples
Pour illustrer le fonctionnement de l’algorithme, nous utiliserons un contexte concer-
nant les clients d’une banque. Pour chacun d’eux, nous connaissons la categorie de sa-
laire (trois attributs : inf 15k, 15k-35k et sup 35k), le passe financier (trois attributs :
pf inconnu, pf mauvais et pf bon) ainsi que la dette (deux attributs : dette faible et
dette haute). Ce contexte est presente a la figure 5.1.
Chapitre 5 : Methode de decomposition 69
inf
15k
15k-3
5k
sup
35k
pf
inco
nnu
pf
mau
vais
pf
bon
det
tefa
ible
det
tehau
te
1 × × ×2 × × ×3 × × ×4 × × ×5 × × ×6 × × ×7 × × ×8 × × ×9 × × ×10 × × ×11 × × ×12 × × ×13 × × ×14 × × ×
Fig. 5.1 – Contexte concernant les clients d’une banque
Supposons que nous ne specifions pas le nombre de classes d’attributs que nous voulons
obtenir. La valeur de k fixee par l’algorithme est donc k = 3 puisque chaque objet
possede trois attributs (ou plus precisement, une modalite pour chacun des trois groupes
d’attributs). L’algorithme debute donc avec trois classes vides : c1 = {}, c2 = {} et
c3 = {}.
Les attributs sont ensuite tries en ordre decroissant du nombre d’objets qui les pos-
sedent : dette haute, dette faible, sup 35k, pf inconnu, pf bon, pf mauvais, 15k-35k,
inf 15k. Puis, ils sont places dans la meilleure classe possible (selon les criteres donnes
lors de la description de la deuxieme etape de l’algorithme) d’apres la configuration des
classes au moment d’etre places. Les classes sont egalement replacees en ordre decroissant
du nombre d’objets qu’elles representent chaque fois qu’un nouvel attribut est ajoute.
L’evolution des classes est montree a la figure 5.2. On voit a la premiere operation
les objets qui sont places dans la classe c1 (en gris fonce) lors de l’ajout de l’attribut
dette haute. A la deuxieme operation, on voit les nouveaux objets amenes dans la classe
c1 lors de l’ajout de dette faible. La classe c1 est a nouveau choisie puisqu’elle est la
premiere qui ne concerne aucun des objets associes a dette faible. L’etat et l’ordre des
Chapitre 5 : Methode de decomposition 70
classes sont ainsi montres suite a l’ajout de chacun des attributs. On note a la cinquieme
operation que l’ordre des classes est modifie, placant c3 avant c2 puisque la classe c3
concerne alors plus d’objets que c2. A la fin de l’execution de la decomposition, chaque
classe represente la totalite des objets et il n’y a aucun objet qui possede deux attributs
d’une meme classe. La decomposition est donc ideale.
Fig. 5.2 – Execution de l’algorithme de decomposition pour diagrammes imbriques
Il aurait pu se produire une situation ou, a la fin de l’execution de la phase de creation
des classes, celles-ci auraient eu besoin d’etre ajustees. Par exemple, prenons le contexte
Flags de la banque UCI. Il contient 113 attributs, 194 objets et 29 classes d’attributs.
Parmi ces classes, trois contiennent certains attributs qui n’ont pu etre places de maniere
ideale lors de la phase de creation des classes. Ces classes sont notees a, b et c. Pour une
classe x, les n attributs qu’elle contient dans la decomposition ideale sont notes x1...xn.
Chapitre 5 : Methode de decomposition 71
Les treillis de concepts associes a ces classes sont montres a la figure 5.3. On voit
dans cette figure que trois attributs (b5, c3 et c4) ont ete places de maniere non ideale.
Dans le treillis de la classe a on retrouve l’attribut c3 (qui a des objets en commun avec
les attributs a1..a8), dans le treillis de la classe b on retrouve l’attribut c4 (qui a des
objets en commun avec les attributs b2 et b4) et dans le treillis de la classe c on retrouve
l’attribut b5 (qui a des objets en commun avec l’attribut c6). Ici, la moyenne des relations
entre attributs est inferieure a un. Les attributs qui ont au moins une relation avec un
autre attribut sont donc tous retires de leur classe. Ce sont les attributs mentionnes
precedemment : a1..a8, b2, b4, b5, c3, c4 et c6.
Fig. 5.3 – Treillis resultant d’une decomposition non ideale
Les attributs retires sont ensuite replaces selon la methode utilisee lors de la creation
des classes. Comme la decomposition ideale est ici possible, les attributs parviendront a
etre places dans une classe qui ne contient aucun des objets qui les possedent. Le resulat
obtenu sera alors des classes qui produisent des treillis dans lequels aucun attribut n’a
d’objet en commun avec un autre attribut. Ces treillis sont donc plus simples, comme le
montre la figure 5.4.
Pseudo-code de l’algorithme
Le pseudo-code de la methode de decomposition est presente a l’algorithme 1 et les
algorithmes 2 et 3 definissent des fonctions utilisees a l’interieur de ce pseudo-code. Il est
Chapitre 5 : Methode de decomposition 72
Fig. 5.4 – Treillis resulant d’une decomposition ideale
a noter que l’algorithme de la methode de decomposition prend en entree le parametre
k representant le nombre de classes desirees en sortie. Le calcul du nombre de classes
(dans le cas ou il n’aurait pas ete specifie) doit donc deja avoir ete fait. Nous ajoutons
egalement que si ce nombre est specifie, il reste une limite superieure au nombre de
classes produites. En effet, dans le cas d’un contexte de type attribut/valeur converti en
un contexte binaire, la decomposition produira, dans la majorite des cas, un nombre de
classes equivalent au nombre d’attributs du contexte initial meme si un nombre superieur
de classes a ete specifie.
Pour faciliter la lecture des algorithmes presentes, nous apportons les quelques preci-
sions qui suivent. Nous avons ajoute les fonctions Attributs(c) et Objets(c). Ce sont des
fonctions utilitaires qui retournent respectivement (1) les attributs de la classe c et (2)
les objets possedant au moins un attribut de la classe c. Pour ce qui est des fonctions
TrierAttributs(Att) et TrierClasses(Cls), elles effectuent un tri en ordre decroissant
du nombre d’objets que possedent la liste d’attributs Att ou la liste de classes Cls.
La fonction CalculerMoyenneRelations(Cls) compte pour chaque classe c de Cls le
nombre de relations Rc parmi ses attributs et retourne le nombre moyen de relations par
classe. Enfin, la fonction RetirerAttributs(Cls, m) supprime de leur classe c les attributs
avec un nombre de relations Rc superieur a m et les retourne.
Chapitre 5 : Methode de decomposition 73
Entrees : Le contexte binaire Ctx = (O,A, I) et le nombre k de classes desirees
Sorties : Une liste de classes d’attributs
Cls ← [ ];1
pour i=1 to k faire2
Cls ← Cls + ({},{}) /*Ajout initial d’ensembles vides pour les objets et les3
attributs de la classe*/;
fin4
A ← TrierAttributs(A);5
pour chaque a dans A faire6
clsA ← TrouverClasse (Cls, a);7
Attributs(clsA) ← Attributs(clsA) ∪ a;8
Objets(clsA) ← Objets(clsA) ∪ g(a);9
TrierClasses(Cls);10
fin11
M ← [|O|,|O|,|O|,|O|,|O|];12
moyenne ← CalculerMoyenneRelations(Cls);13
tant que moyenne < au moins un element dans M faire14
M[5] ← M[4] ; M[4] ← M[3] ; M[3] ← M[2] ; M[2] ← M[1];15
M[1] ← moyenne;16
Att ← RetirerAttributs(Cls, m);17
Att ← TrierAttributs(Att);18
pour chaque a dans Att faire19
clsA ← TrouverClasse (Cls, a);20
Attributs(clsA) ← Attributs(clsA) ∪ a;21
Objets(clsA) ← Objets(clsA) ∪ g(a);22
TrierClasses(Cls);23
fin24
moyenne ← CalculerMoyenneRelations(Cls);25
fin26
retourner Cls ;27
Algorithme 1 : Decomposition
Chapitre 5 : Methode de decomposition 74
Entrees : La liste Cls des classes existantes et l’attribut a a placer
Sorties : La classe attribuee a l’attribut a
clsA ← NULL;1
score ← VALEUR MAX;2
pour chaque c dans Cls faire3
si Objets(c) ∩ g(a) = ∅ alors4
clsA ← c;5
terminer boucle ;6
sinon7
tempScore ← CalculerScore(a,c);8
si tempScore < score alors9
clsA ← c;10
score ← tempScore;11
fin12
sinon si tempScore = score et |Objets(c)| < |Objets(clsA)| alors13
clsA ← c;14
score ← tempScore;15
fin16
fin17
fin18
retourner clsA;19
Algorithme 2 : TrouverClasse
Entrees : L’attribut att et la classe cls pour lesquels le score est calcule
Sorties : Le score calcule
nbRel ← 0;1
pour chaque a dans Attributs(cls) faire2
si |g(a) ∩ g(att)| > 0 alors3
nbRel ← nbRel + 1;4
fin5
fin6
retourner ← nbRel3 ∗ |g(att) ∩ Objets(cls)|;7
Algorithme 3 : CalculerScore
Chapitre 5 : Methode de decomposition 75
5.3.3 Experimentation
Vu le fonctionnement de l’algorithme, la decomposition en differents sous-contextes est
assuree, a moins bien sur que la moyenne d’attributs possedes par les objets corresponde
au nombre total d’attributs du contexte. Les tests sur les contextes aleatoires ont donc
ete omis car les resultats etaient previsibles : chaque contexte aurait necessairement ete
decompose en un nombre de classes directement lie a sa densite et le nombre d’attributs
par classe aurait ete generalement uniforme vu la nature aleatoire du contexte. Ainsi, les
tests ont ete effectues directement sur les onze contextes (dix de la base UCI ainsi que
Gouvernance) permettant de verifier la valeur semantique des decompositions obtenues.
La composition de ces contextes est presentee dans le tableau 5.1.
Contexte Nb classes Nb attributs Nb objets DensiteBreast Cancer 10 45 286 22.22%
Bridges 12 62 108 19.35%Flags 29 113 194 25.66%
Imports 26 180 205 14.44%Iris 5 32 150 15.625%
Mushrooms 23 119 8124 19.33%KrkOpt 7 58 28056 12.07%Lenses 5 12 24 41.67%Trains 33 89 10 37.08%Wine 14 99 178 14.14%
Gouvernance 11 50 214 22%
Tab. 5.1 – Composition des contextes
Pour sept contextes parmi les onze utilises, une decomposition ideale a ete obtenue,
c’est-a-dire que les attributs binaires issus d’un meme attribut value ont ete regroupes
dans une meme classe. Pour ce qui est des quatre autres contextes, le tableau 5.2 pre-
sente les resultats obtenus. Il y est indique le nombre de classes qui ne contiennent pas
les attributs binaires d’un meme attribut value ainsi que, pour chacune de ces classes, le
nombre d’objets qui ont ete affectes par ce regroupement non ideal des attributs. Consi-
derant que dans les classes ideales un objet est represente une et une seule fois dans
chacune des classes, un objet est dit affecte s’il n’est pas represente dans la classe ou s’il
y est represente plus d’une fois.
Chapitre 5 : Methode de decomposition 76
Contexte Nb classes imparfaites #classe Nb objets affectesImports 9 (34.62%) 1 1 (0.49%)
2 13 (6.34%)3 15 (7.32%)4 16 (7.80%)5 23 (11.22%)6 26 (12.68%)7 32 (15.61%)8 89 (43.41%)9 174 (84.88%)
Iris 2 (40%) 1 7 (4.67%)2 7 (4.67%)
Trains 5 (15.15%) 1 1 (10%)2 1 (10%)3 4 (40%)4 8 (80%)5 8 (80%)
Wine 2 (14.29%) 1 14 (7.87%)2 14 (7.87%)
Tab. 5.2 – Details des decompositions non ideales
5.4 Proposition d’une methode d’ordonnancement
L’interet d’un ordonnancement particulier des niveaux crees par decomposition d’un
contexte depend certainement du type d’analyse a effectuer. Par exemple, si le but est
de decouvrir la categorie associee a un profil donne, on voudra certainement trouver en
derniere position le niveau contenant les differentes categories. Si, par contre, le but est
de decouvrir le profil le plus probable associe a une categorie, on voudra cette fois-ci
trouver en premiere position le niveau contenant les differentes categories. Dans les deux
cas, les niveaux devraient alors etre ordonnances en ordre de leur pouvoir de prediction
par rapport au niveau de classification. Cela permet de raffiner la recherche en debutant
par les niveaux ayant un plus grand impact (gain en information) et en visitant ensuite
les niveaux moins pertinents, comme lors de la construction des arbres de decision pour
la classification.
Il existe aussi des situations ou aucun attribut (niveau) de classification n’est present.
Cela implique donc de trouver un ordre plus general entre les niveaux. Ces considerations
nous ont donc amene a nous concentrer sur deux methodes d’ordonnancement : une
methode supervisee et une methode non supervisee. Dans les deux cas, l’ordonnancement
Chapitre 5 : Methode de decomposition 77
a accomplir a cette particularite qu’il impose de trouver un ordre entre des groupes
d’attributs. Normalement, en fouille de donnees, il est plus commun de chercher un
ordre entre des attributs individuels. C’est notamment le cas lors de la creation d’arbres
de decision. Cette problematique a ete traitee en cherchant la facon la plus appropriee de
representer les donnees de sorte a utiliser les algorithmes existants. La conception d’un
nouvel algorithme visant a attribuer un rang aux attributs d’un ensemble de donnees
etait en effet un travail qui depassait largement le cadre de ce memoire.
5.4.1 Conversion des donnees
Une facon de convertir les donnees de differents contextes en un nombre equivalent
d’attributs, de sorte a pouvoir ordonnancer ces attributs, consiste a creer des attributs
dont les valeurs sont multivaluees. En ce sens, supposons un contexte K contenant les
attributs a, b, c et d. Un objet pourra, par exemple, posseder les attributs a, c et d.
La valeur de cet objet pour l’attribut multivalue representant le contexte K sera alors
{a, c, d}. Les tableaux 5.3 et 5.4 montrent le resultat d’une telle conversion des donnees
pour un contexte decompose en deux sous-contextes. Le resultat est ainsi compose de
deux attributs multivalues.
Niveau 1 Niveau 2Objets a b c d e f g h i
1 × × ×2 × × × ×3 × × × × ×4 × × × × ×5 × × × ×6 × × × × ×7 × × × ×8 × × × ×
Tab. 5.3 – Contexte divise en deux sous-contextes
5.4.2 Ordonnancement
L’ordonnancement a ete realise a l’aide d’une methode d’extraction des attributs d’un
ensemble de donnees multivaluees [29] basee sur une mesure de similarite entre elements
multivalues [24]. Cette methode fonctionne en deux phases. Tout d’abord, une matrice de
Chapitre 5 : Methode de decomposition 78
Objets Niveau 1 Niveau 21 {a, b} {g}2 {a, b} {g, h}3 {a, b, c} {g, h}4 {a, c} {g, h, i}5 {a, b, d} {f}6 {a, b, c, d} {f}7 {a, c, d} {e}8 {a, c, d} {f}
Tab. 5.4 – Conversion de deux sous-contextes en attributs multivalues
similarite entre chaque paire d’objets, pour chaque attribut, est calculee. En considerant
que VX est l’ensemble des valeurs de l’objet X pour un attribut donne, la similarite est
calculee comme suit :
SXY =|VX ∩ VY ||VX |
La similarite est, en ce sens, une mesure de la proportion des valeurs partagees entre
un objet donne et un autre objet. On constate aussi d’apres cette definition que la
similarite n’est pas, dans ce cas, une mesure symetrique. On ne peut donc pas affirmer
que SXY = SY X .
A partir de la matrice de similarite ainsi formee, l’ordre des attributs est calcule en
partie en fonction de l’ecart-type des valeurs de chaque attribut. Notons xi la iieme valeur
de similarite de l’attribut X et soit N le nombre d’objets du contexte. Le calcul est alors
le suivant :
σX =
√∑Ni=1(xi − x)2
Nou x =
∑Ni=1 xi
N
L’ordre des attributs est aussi calcule en fonction de la correlation entre les attributs.
La correlation CorrXY entre deux attributs X et Y est calculee de la maniere suivante :
CovXY =
∑Ni=1(xi − x)(yi − y)
N
CorrXY =CovXY
σXσY
Chapitre 5 : Methode de decomposition 79
L’ordonnancement supervise et l’ordonnancement non supervise sont calcules a partir
de ces mesures, mais de manieres differentes.
Ordonnancement supervise
Dans le cas d’un ordonnancement supervise, le probleme a resoudre est tres semblable
a ce qui est fait normalement en classification : il s’agit de placer les elements en ordre de
leur pouvoir de prediction par rapport a la classe d’appartenance d’un objet donne. On
voudra donc calculer la correlation de chaque attribut avec l’attribut de classification.
L’algorithme presente dans [29] est donc modifie legerement pour calculer non pas la
correlation totale des attributs (decrite dans la section suivante) mais bien la correlation
definie precedemment pour chaque attribut. Les attributs seront alors places dans l’ordre
decroissant de leur correlation avec l’attribut de classification. Il reste ensuite a deter-
miner si l’attribut de classification doit etre place avant les autres attributs (analyse des
profils associes aux classes) ou a leur suite (recherche de la classe associee a un profil).
Ordonnancement non supervise
Pour ce qui est de l’ordonnancement non supervise, le type d’ordonnancement qui nous
interesse est celui qui permettra de trier les attributs selon leur capacite globale a decrire
les donnees. La methode presentee dans [29] peut donc etre appliquee directement. Il
faudra alors calculer la correlation totale (T Corr) des M attributs, comme suit :
T CorrX =M∑i=1
CorrXXi
Ensuite, les attributs qui ont un ecart-type superieur a la moyenne sont places en
ordre decroissant de cette mesure. Puis, les attributs restants sont places a leur suite en
ordre decroissant de leur correlation totale. Cela nous amene a placer en premier lieu les
attributs qui decrivent le mieux les donnees et a placer ensuite les attributs qui sont les
plus fortement lies a l’ensemble des attributs.
Chapitre 6
Conclusion
Pour conclure, nous rappelons que l’interet de ce memoire consiste en l’etablissement
de bases qui rendront plus conviviale et plus efficace l’utilisation des treillis de concepts
comme outil de visualisation des resultats d’une fouille de donnees, afin de mieux faire
ressortir les concepts et associations les plus pertinents. Ce but est justifie par le grand
potentiel des treillis de concepts a presenter des liens caches dans les donnees, combine
a la difficulte actuelle pour un etre humain de consulter une telle structure. Nous avons
donc travaille sur deux axes complementaires, soit une methode de visualisation bien
adaptee aux processus cognitifs de l’etre humain ainsi qu’une representation du treillis
plus facile a aborder et exploiter. La representation qui a ete privilegiee est le diagramme
imbrique.
Concernant la methode de representation, les tests effectues nous ont permis de consta-
ter que les principes de visualisation efficace presentes dans la litterature se montrent en
effet apprecies, la plupart du temps, lors de l’utilisation des treillis de concepts. Ainsi,
apres avoir effectue les modifications ciblees suite a l’analyse des resultats des tests d’uti-
lisateurs, le prototype realise dans le cadre de ce memoire pourra se presenter comme un
outil convivial pour la visualisation des treillis de concepts. Lattice Miner propose ega-
lement differentes methodes de positionnement des noeuds appropriees pour differents
types de treillis.
Ce memoire a egalement propose une nouvelle methode de decomposition des treillis de
concepts. La methode de decomposition developpee permet de diviser un treillis en plu-
sieurs treillis de taille reduite, tout en conservant un certain lien semantique a l’interieur
Chapitre 6 : Conclusion 81
des treillis partiels produits. De plus, pour accompagner la methode de decomposition et
contribuer a rendre plus aisee l’utilisation des treillis de concepts, une methode d’ordon-
nancement des treillis partiels a ete suggeree. L’ordonnancement peut etre fait autant
de maniere supervisee que non supervisee et il a pour but de permettre la navigation
dans les diagrammes imbriques de sorte a faire mieux ressortir l’information pertinente.
Une etude plus poussee concernant l’ordonnancement des treillis de concepts etait
au-dela des limites de ce memoire, aussi, nous nous sommes limite a la suggestion d’une
methode d’ordonnancement fonctionnelle, basee sur des principes existants pour l’ordon-
nancement d’attributs. Dans un travail futur, il pourrait toutefois etre pertinent de se
concentrer plus en profondeur sur ce sujet. D’une part, il existe de nombreuses techniques
d’ordonnancement d’attributs parmi lesquelles certaines pourraient etre ajustees pour
effectuer une etude comparative de leur pertinence dans le cadre des diagrammes imbri-
ques. Aussi, la structure d’un treillis de concepts etant plus complexe qu’un attribut, un
travail pourrait certainement etre fait pour developper une methode d’ordonnancement
propre aux treillis de concepts.
Annexe A
Lattice Miner : Impressions d’ecran
Fig. A.1 – Editeur de contextes binaires
83
Fig. A.2 – Editeur de contextes pour diagrammes imbriques
84
Fig. A.3 – Fenetre de visualisation des treillis de concepts
85
Fig. A.4 – Vue de l’interieur d’un concept
86
Fig. A.5 – Vue arborescente du diagramme imbrique
87
Fig. A.6 – Outil de projection
88
Fig. A.7 – Outil de recherche
89
Fig. A.8 – Outil de modification de la structure du treillis
Bibliographie
[1] Abello, J., Pogel, A. J., and Miller, L. Breadth First Search Graph Parti-
tions and Concept Lattices. Journal of Universal Computer Science 10, 8 (2004),
934–954.
[2] Alon, N., Azar, Y., Csirik, J., Epstein, L., Sevastianov, S., Vestijens,
A., and Woeginger, G. On-line and Off-line Approximation Algorithms for
Vector Covering Problems. Algorithmica 21, 1 (1998), 104–118.
[3] Avin Mathew. Understanding the Open Directory Project Through Formal
Concept Analysis. Master’s thesis, University of Queensland, School of informa-
tion technology and electrical engineering, Oct. 2003.
[4] Becker, P. Docco : Document Retrieval with Formal Concept Analysis. http ://to-
ckit.sourceforge.net/docco/, 2005.
[5] Becker, P., Hereth, J., and Stumme, G. ToscanaJ - an open source tool for
qualitative data analysis. In Advances in Formal Concept Analysis for Knowledge
Discovery in Databases. Proc. Workshop FCAKDD of the 15th European Conference
on Artificial Intelligence (ECAI 2002). Lyon, France., V. Duquenne, B. Ganter,
M. Liquiere, E. M. Nguifo, and G. Stumme, Eds. http ://toscanaj.sourceforge.net/.
[6] Berlin, B., and Kay, P. Basic Color Terms : Their Universality and Evolution.
University of California Press, Berkeley, 1969.
[7] Biederman, I. Recognition-by-Components : A Theory of Human Image Unders-
tanding. Psychological Review 94, 2 (1987), 115–147.
[8] Bier, E. A., Stone, M. C., Pier, K., Buxton, W., and DeRose, T. D.
Toolglass and magic lenses : the see-through interface. In SIGGRAPH ’93 : Procee-
dings of the 20th annual conference on computer graphics and interactive techniques
(New York, NY, USA, 1993), ACM Press, pp. 73–80.
91
[9] Blake, C.L., Newman, D.J., H., and Merz C.J. UCI repository of machine
learning databases. University of California, Department of Information and Com-
puter Science, Irvine, CA, http ://www.ics.uci.edu/∼mlearn/MLRepository.html.
[10] Cave, K., and Wolfe, J. Modeling the role of parallel processing in visual
search. Cognitive Psychology 22 (1990), 225–271.
[11] Cole, R. Automated Layout of Concept Lattices Using Force Directed Placement
and Genetic Algorithms. In 23rd Australasian Computer Science Conference (ACSC
2000), 31 January - 3 February 2000, Canberra, Australia (2000), IEEE, pp. 31–42.
[12] Cole, R. Automated Layout of Concept Lattices Using Layered Diagrams and
Additive Diagrams. In 24th Australasian Computer Science Conference (ACSC
2001), 29 January - 1 February 2001, Gold Coast, Queensland, Australia (2001),
ACSC, IEEE, pp. 47–53.
[13] Cole, R., Ducrou, J., and Eklund, P. Automated Layout of Small Lattices
Using Layer Diagrams. In ICFCA 2006 (2006), R. Missaoui and J. Schmid, Eds.,
vol. 3874 of LNAI, Springer-Verlag, pp. 291–305.
[14] Csirik, J., Johnson, D., and Kenyon, C. Better approximation algorithms
for bin covering. In Proceedings of the 12th annual ACM-SIAM symposium on
Discrete algorithms (Philadelphia, PA, 2001), Society for Industrial and Applied
Mathematics, pp. 557–566.
[15] Davey, B. A., and Priestley, H. A. Introduction to Lattices and Order. Cam-
bridge University Press, Cambridge, 1990.
[16] Demetrescu, C., and Finocchi, I. Removing Cycles for Minimizing Crossings.
ACM Journal of Experimental Algorithms 6 (2001), 2.
[17] Di Battista, G., Eades, P., Tamassia, R., and Tollis, I. G. Graph Dra-
wing : Algorithms for the visualization of graphs. Prentice Hall, 1999.
[18] Eiglsperger, M., Siebenhaller, M., and Kaufmann, M. An Efficient Imple-
mentation of Sugiyama’s Algorithm for Layered Graph Drawing. Journal of Graph
Algorithms and Applications 9, 3 (2005), 305–325.
[19] Eklund, P., Ducrou, J., and Braw, P. Concept Lattices for Information
Visualization : Can Novices Read Line-Diagrams ? In ICFCA 2004 - Lecture Notes
in Artificial Intelligence (Berlin Heidelberg), P. Eklund, Ed., vol. 2961, Springer-
Verlag, pp. 57–73. http ://www.mail-sleuth.com/.
92
[20] Freese, R. Automated Lattice Drawing. In Lecture Notes in Artificial Intelligence
- ICFCA 2004 (2004), vol. 2961, Springer-Verlag, pp. 112–127.
[21] Furnas, G. Generalized fisheye views. In Human Factors in Computing Systems
CHI ’86 Conference Proceedings (1987), ACM Press, pp. 16–23.
[22] Ganter, B., and Wille, R. Formal Concept Analysis : Mathematical Founda-
tions. Spinger-Verlag, 1996.
[23] Garey, M., and Johnson, D. Computers and intractability : a guide to the
theory of NP-completeness. New York, 1979.
[24] Guru, D., Kiranagi, B., and Nagabhushan, P. Multivalued type proximity
measure and concept of mutual similarity value useful for clustering symbolic pat-
terns. Pattern Recognition Letters 25 (2004), 1203–1213.
[25] Irani, P., and Ware, C. Diagramming Information Structures Using 3D Percep-
tual Primitives. ACM Transactions on Computer-Human Interaction 10, 1 (2003),
1–19.
[26] Juliesz, B. Textons, the elements of texture perception, and their interactions.
Nature 290 (1981), 91–97.
[27] Juliesz, B. A brief outline of the texton theory of human vision. Trends in
Neuroscience 7(2) (1984), 41–45.
[28] Juliesz, B., and Bergen, J. R. Textons, the fundamental elements in preat-
tentive vision and perception of textures. The Bell System Technical Journal 62(6)
(1983), 1619–1645.
[29] Kiranagi, B., Guru, D., and Ichino, M. Exploitation of Multivalued Type
Proximity for Symbolic Feature Selection. In Proceedings of the International Confe-
rence on Computing : Theory and Applications (ICCTA’07) (2007).
[30] Koffka, K. Principles of gestalt psychology. Harcourt, New York, 1963.
[31] Kosara, R., Miksch, S., Hauser, H., Schrammel, J., Giller, V., and
Tscheligi, M. Useful properties of semantic depth of field for better f+c visuali-
zation. In VISSYM ’02 : Proceedings of the symposium on Data Visualisation 2002
(Aire-la-Ville, Switzerland, 2002), Eurographics Association, pp. 205–210.
[32] Mackinlay, J. D., Robertson, G. G., and Card, S. K. The perspective
wall : Detail and context smoothly integrated. In the Conference on Human Factors
93
in Computing Systems (CHI’91) (1991), Information Visualization, ACM Press,
pp. 173–179.
[33] Matuszewski, C., Schonfeld, R., and Molitor, P. Graph Drawing : 7th
International Symposium (GD’99), vol. 1731 of Lecture Notes in Computer Science.
Springer Berlin, Heidelberg, 1999, ch. Using Sifting for k-Layer Straightline Crossing
Minimization, p. 217.
[34] Neisser, U. Decision-time without reaction-time experiments in visual scanning.
American Journal of Psychology 76 (1963), 376–385.
[35] Patarasuk, P. Crossing Reduction for Layered Hierarchical Graph Drawing. Mas-
ter’s thesis, Florida State University, 2004.
[36] Peterson, H. E., and Dugas, D. J. The relative importance of contrast and
motion in visual detection. Human Factors 14 (1972), 207–216.
[37] Purchase, H. C. Which Aesthetic has the Greatest Effect on Human Understan-
ding ? Graph Drawing (1997), 248–261.
[38] Quinlan, P. T., and Humphreys, G. W. Visual search for targets defined
by combinaisons of colors, shape, and size : An examination of tasks constraints on
feature and conjonction searches. Perception and Psychophysics 41 (1987), 455–472.
[39] Roberto Tamassia, Guiseppe Di Battista, and Carlo Batini. Automatic
Graph Drawing and Readability of Diagrams. IEEE Transactions on Systems, Man,
and Cybernetics 18, 1 (1988), 61–79.
[40] Sarkar, M., and Brown, M. H. Graphical fisheye views of graphs. In Human
Factors in Computing Systems, CHI’92 Conference Proceedings : Striking A Balance
(1992), P. Bauersfeld, J. Bennett, and G. Lynch, Eds., ACM Press, pp. 83–91.
[41] Serhiy Yevtushenko. Concept Explorer. http ://conexp.sourceforge.net/.
[42] Shneiderman, B. The eyes have it : A task by data type taxonomy for information
visualizations. In IEEE Visual Languages (College Park, Maryland 20742, U.S.A.,
1996), no. UMCP-CSD CS-TR-3665, pp. 336–343.
[43] Snelting, G. Reengineering of configurations based on mathematical concept
analysis. ACM Transactions on Software Engineering and Methodologies 5, 2 (1996),
146–189.
[44] Snelting, G. Software reengineering based on concept lattices. In CSMR (2000),
pp. 3–10.
94
[45] Snelting, G. Concept Lattices in Software Analysis. In Formal Concept Analysis,
LNAI (Berlin Heidelberg, 2005), vol. 3626, Springer-Verlag, pp. 272–287.
[46] Stumme, G. Local scaling in conceptual data systems. In International Conference
on Conceptual Structures (1996), pp. 308–320.
[47] Treisman, A. Preattentive processing in vision. Computer Vision, Graphics and
Image Processing 31 (1985), 156–177.
[48] Valtchev, P., Grosser, D., Roume, C., and Hacene, M. R. GALICIA : an
open platform for lattices. In Using Conceptual Structures : Contributions to the
11th International Conference on Conceptual Structures (ICCS’03) (Dresde (DE)),
Shaker-Verlag, pp. 241–254. http ://www.iro.umontreal.ca/∼galicia/.
[49] Valtchev, P., Missaoui, R., and Lebrun, P. A partition-based approach
towards constructing galois (concept) lattices. Discrete Mathematics 256, 3 (2002),
801–829.
[50] Viega, J., Conway, M. J., Williams, G., and Pausch, R. 3D magic lenses.
In UIST ’96 : Proceedings of the 9th annual ACM symposium on user interface
software and technology (New York, NY, USA, 1996), ACM Press, pp. 51–58.
[51] Ware, C. Information Visualization : Perception for Design, 2nd ed. The Morgan
Kaufmann Series in Interactive Technologies. Morgan Kaufmann, 2004.
[52] Willis D. Ellis. A source book of Gestalt psychology. London, 1938.
[53] Yevtushenko, S. Computing and Visualizing Concept Lattices. Master’s thesis,
Technischen Universitat Darmstadt, 2004.