Cleuziou These PDF
Cleuziou These PDF
Cleuziou These PDF
THÈSE
présentée
par
Guillaume Cleuziou
Membres du jury :
Je tiens à remercier tout d’abord Lorenza Saitta et Djamel Zighed d’avoir accepté de
rapporter cette thèse, pour le temps qu’ils auront bien voulu y consacrer. Qu’ils soient
certains que je considère leur contribution comme un honneur.
Mes remerciements vont également à Michèle Sebag et Richard Emilion ; en participant
au jury de thèse, ils apportent un remarquable soutien à mon travail.
Je remercie également Christel Vrain, directrice de cette thèse. Son expérience et sa
rigueur scientifique m’auront été d’une grande aide tant dans la progression de mes travaux
de recherche que dans l’écriture de ce mémoire.
Un grand merci à Lionel Martin qui m’a accompagné pendant ces quatre années,
du stage de DEA jusqu’à la soutenance de thèse. Je le remercie pour sa patience, sa
compétence et sa modestie. Ce fut un réel plaisir de travailler ensemble et je souhaite
vivement poursuivre cette collaboration.
Je n’oublie pas toutes les personnes qui, scientifiquement ou socialement ont contribué
à la réussite de ce travail : Viviane et Céline pour m’avoir fait partager leurs préoccupations
linguistiques ; Sylvie, Souley, Agnès, Armelle, Chantal et Ansaf pour les discussions en-
richissantes que nous avons échangées et les conseils avisés qui s’en dégageaient. Merci
également aux membres du LIFO pour leur accueil et à ses responsables pour m’avoir
permis cet épanouissement personnel en m’orientant sur le chemin de la recherche.
Sur un plan plus personnel c’est à Ludivine que vont mes premiers remerciements,
elle a su s’intéresser à mon travail et “soigner” quelques moments de découragements.
Pour son accompagnement et sa patience, notamment durant la période de rédaction de
ce manuscrit, je la remercie.
Je remercie également mes parents pour leur soutien tout au long de ces années
d’études, mes frères David et Christophe et mes amis Youssef, Baptiste, Guillaume, An-
toine, Sam, Damien, Cathy et Linda pour l’intérêt qu’ils ont manifesté à l’égard de mon
travail.
Table des matières
Introduction 1
Conclusion 165
5.1 Matrices de proximité obtenues sur les 38 mots-clés : (a) indices de proximité
basés sur les cooccurrences, (b) indices de proximité contextuelle. . . . . . . 136
5.2 Organisation hiérarchique du pseudo-partitionnement obtenu par PoBOC
sur la base des 38 mots-clés. . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
5.3 Évaluation du nombre de clusters sur les 38 mots-clés. . . . . . . . . . . . . 141
5.4 Algorithme de clustering pour la méthode ADC. . . . . . . . . . . . . . . . 151
5.5 Algorithme de clustering pour la méthode ITDC. . . . . . . . . . . . . . . . 153
5.6 Algorithme de clustering pour la méthode DDOC. . . . . . . . . . . . . . . 156
5.7 Procédure de multi-affectations utilisée dans la méthode DDOC. . . . . . . 157
5.8 Évaluation de l’influence de la proportion d’intersections entre clusters, sur
la performance du classifieur. Corpus Newsgroup (gauche) et Reuters (droite).159
5.9 Évaluation de la méthode DDOC, comparativement aux méthodes ADC et
ITDC sur les deux corpus : Newsgroup (gauche) et Reuters (droite). . . . . 161
2.1 Analyse des clusters obtenus par PoBOC sur la base de données Iris. . . . . 71
2.2 Table de contingence sur Iris. . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2.3 Évaluation du schéma par des indices externes. . . . . . . . . . . . . . . . . 72
2.4 Évaluation du schéma par des indices relatifs. . . . . . . . . . . . . . . . . . 74
2.5 Recherche du nombre optimal de clusters sur les bases : Zoology, Wine,
Soybean et Annealing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.6 Évaluation des schémas par des indices externes. . . . . . . . . . . . . . . . 76
2.7 Évaluation des schémas par des indices relatifs. . . . . . . . . . . . . . . . . 77
5.1 Nombre de pages Web retournées pour chaque requête de un ou deux mots. 132
5.2 Information Mutuelle pour chaque couple de mots. . . . . . . . . . . . . . . 132
5.3 Les 11 mots-clés du domaine Ressources du Langage. . . . . . . . . . . . . . 134
5.4 Les 13 mots-clés du domaine Web Mondial. . . . . . . . . . . . . . . . . . . 135
5.5 Les 14 mots-clés du domaine Intelligence Artificielle. . . . . . . . . . . . . . 135
5.6 Évaluation quantitative des schémas obtenus par différentes méthodes de
clustering. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
5.7 Tables de contingence pour la classe ci (gauche) et globale (droite). . . . . . 146
La classification : passé/présent
Tout ce qui nous entoure, qu’il s’agisse de choses physiques ou abstraites, nous apparaı̂t
de façon organisée. Lorsque nous voyons un animal, nous le désignons systématiquement
par l’espèce à laquelle il appartient. Un sentiment sera également catégorisé, on parlera
par exemple d’un sentiment de tristesse, de joie ou de peur. Pourtant, chacun éprouve la
peur différemment et les chiens ne sont pas tous identiques non plus. Il s’agit, en fait, d’un
phénomène, conscient ou non, mais naturel et indispensable, de simplification pour mieux
comprendre et mieux communiquer.
L’exemple que nous venons d’évoquer n’est pas anodin. En effet on attribue les premières
recherches théoriques sur la classification, aux besoins exprimés par les biologistes, de
spécifier des classes ou espèces animales [86]. Cette classification était censée permettre,
étant donnée une description (simple) d’un animal, de l’ “étiqueter” par tel ou tel nom
d’espèce. Le problème s’est avéré plus complexe qu’il n’y paraissait...
Les applications se sont multipliées, chacune apportant son lot de problèmes, plus
complexes les uns que les autres. Après les biologistes, ce sont les historiens, les médecins,
les sociologues ou les didacticiens qui ont manifesté le besoin de classer leurs reliques,
leurs patients ou leurs élèves. Aujourd’hui, en nous intéressant aux problèmes issus des
technologies de l’information et de la communication, nous sommes amenés à traiter des
données très complexes, par leur nature, leur taille, leur provenance, leur diversité. Ces
données peuvent être, par exemple, du texte, des images, des séquences vidéo, des bandes
soonores et tout support combinant ces différents types de données.
L’envie d’organiser pour simplifier a progressivement évolué vers l’ambition de classer
(ou classifier) pour comprendre et, pourquoi pas, pour prédire. Cette évolution a conduit
à dégager deux stratégies de classification : supervisée et non-supervisée.
La notion de prédiction fait référence à une stratégie particulière d’Apprentissage Auto-
matique (AA), appelée apprentissage supervisé. Ce domaine d’étude à part entière, peut
être considéré comme une sous-thématique de l’Intelligence Artificielle (IA). De façon
synthétique, l’apprentissage supervisé consiste à faire émerger d’un ensemble de données
d’entraı̂nement pré-classifiées, les caractéristiques nécessaires et suffisantes pour permettre
de classer correctement une nouvelle donnée. Dans ce type d’approche, les classes sont
connues à l’avance, cette connaissance est utilisée dans le processus d’apprentissage.
La classification non-supervisée correspond davantage au problème initial d’organisa-
tion, mentionné ci-dessus, et puise ses fondements théoriques en Analyse de Données (AD).
Introduction
Sujet de la thèse
Dans un contexte supervisé, la classification est souvent formalisée par un problème,
ou un ensemble de problèmes, de décision(s) binaire(s)1 . Étant donnés un exemple e et
une classe c, une fonction cible apprise permet de décider si e appartient ou n’appar-
tient pas à la classe c. Il est alors naturel d’imaginer qu’un exemple e puisse appartenir
à plusieurs classes. L’exemple des données textuelles (textes, mots, etc.) illustre parfai-
tement ce phénomène, une telle donnée étant rarement associée à une classe thématique
exclusivement.
L’aspect “multi-classes” est donc rencontré et traité couramment dans les approches
supervisées. Aussi naturel qu’il puisse être, il est pourtant ignoré dans la majorité des
systèmes d’apprentissage non-supervisé, limitant de ce fait la représentativité des classes.
Une explication de cette limitation, la principale à notre avis, est que l’espace de recherche
(ensemble de tous les schémas de classification possibles, étant donné un ensemble de
données) devient très important lorsqu’on autorise chaque objet à appartenir à plusieurs
classes.
Les méthodes floues pourraient être considérées comme “la” solution à ce problème.
En effet, les schémas flous, appris par les algorithmes de regroupement flou, effectuent en
quelque sorte, un partage de chaque objet sur les différentes classes. Néanmoins, ce type
d’approche souffre d’un manque de simplicité ; les schémas sont difficiles à visualiser, et
ne correspondent pas aux attentes d’experts qui chercheraient par exemple à découvrir les
relations qui existent ou non entre des objets.
Quelques propositions ont été faites pour modifier les algorithmes existants dans le
but de restreindre les schémas de classification flous ou au contraire d’étendre les schémas
disjoints afin d’obtenir des groupes d’objets avec intersections [46]. Malheureusement ces
adaptations sont soit spécifiques à un domaine d’application (aux traitement des données
textuelles par exemple), soit encore trop restrictives sur les propriétés des schémas générés
(limitation de la taille des intersections, du nombre de groupes pouvant partager un même
objet, etc.).
Dans cette thèse, nous postulons que “la construction d’un schéma constitué de groupes
non-disjoints, dans un processus d’apprentissage non-supervisé, offre une structuration
pertinente d’un ensemble de données.”
La confirmation de cette hypothèse passe tout d’abord par la proposition d’une méthode
de regroupement adaptée spécifiquement à la construction de groupes non-disjoints d’ob-
jets. Différents critères doivent être étudiés afin que cet algorithme puisse être utilisé
dans un large éventail d’applications et réponde aux besoins de la tâche de classification.
Parmi ces critères, on s’attache en particulier à la possibilité de découvrir automatique-
ment un nombre approprié de groupes, de tailles et densités variées, à partir de données
1
Certaines méthodes d’apprentissage supervisé proposent une formalisation discrète du problème, en
associant un score (une probabilité par exemple) à chaque décision. Cependant, la décision finale est souvent
obtenue en utilisant un seuil et en se ramenant ainsi à une décision binaire.
2
Introduction
caractérisées soit par un ensemble de descripteurs, soit par les relations des objets entre
eux, uniquement.
Le développement d’une nouvelle méthode s’accompagne naturellement d’une phase
d’évaluation ; or le problème de l’évaluation se pose de façon récurrente en apprentissage
non-supervisé. L’utilisation des mesures traditionnelles de qualité est insuffisante, ce qui
nous amène à envisager d’autres alternatives pour mesurer l’intérêt de notre approche.
Deux applications très différentes sont étudiées. Tout d’abord, dans un cadre général
d’apprentissage de règles, nous utilisons l’algorithme de regroupement pour structurer les
données d’un concept cible avant d’entreprendre le processus de construction de règle(s) 2 .
Cette application présente deux intérêts majeurs : elle offre d’une part une évaluation ob-
jective de l’algorithme, et d’autre part, cette phase d’organisation préalable des données
peut faire l’objet d’une étude porteuse dans le domaine de l’apprentissage de règles pro-
positionnelles ou logiques.
Dans un deuxième temps, nous abordons le problème de l’organisation des données
textuelles dans le cadre de la Recherche d’Information (RI). Cette application est incon-
tournable pour notre approche, car elle constitue l’une des principales motivations des
schémas de groupes non-disjoints.
Organisation du mémoire
Ce mémoire comporte 5 chapitres :
Le premier chapitre, intitulé “État de l’art du clustering”, dresse un panorama des
différentes approches proposées pour regrouper des données. Nous présentons en parti-
culier les méthodes hiérarchiques, de partitionnement, basées sur un mélange de lois de
probabilité, sur un découpage de l’espace de représentation ou sur la notion de voisinages
(densités). Nous essayons d’envisager les différents types de schémas de classification pos-
sibles à établir, par le biais de ces approches (groupes disjoints, non-disjoints et flous).
La méthode de regroupement que nous proposons pour construire un ensemble de
groupes non-disjoints est présentée dans le second chapitre. L’algorithme PoBOC (Pole-
Based Overlapping Clustering) est alors présenté de façon formelle et intuitive. Une première
série d’évaluations est effectuée, sur des jeux de données traditionnels, en utilisant des me-
sures de qualité définies dans le chapitre précédent.
L’utilisation de l’algorithme PoBOC dans le cadre de l’apprentissage de règles est à
l’origine des deux chapitres suivants. Le chapitre 3 présente un système d’“apprentissage
de règles de classification par regroupement d’objets”. Les règles sont apprises dans un
formalisme propositionnel (attribut/valeur). Deux objectifs sont alors visés : d’une part
montrer que l’algorithme PoBOC, et en particulier le type de schéma qu’il génère, est
performant pour cette tâche d’apprentissage, d’autre part qu’il est pertinent de prévoir
cette étape d’organisation des données avant le processus de construction de règles.
Cette dernière application est étendue, dans le chapitre 4, à l’apprentissage de règles lo-
giques pour la définition de concepts disjonctifs. Étant donné un langage de représentation,
on montre que la décomposition des concepts par un algorithme de regroupement, et
en particulier par l’algorithme PoBOC, permet de guider la stratégie de recherche d’hy-
pothèses satisfaisantes pour définir un concept cible.
2
Ce système global se situe dans un cadre supervisé, et l’une des étapes est effectuée par un processus
non-supervisé.
3
Introduction
Enfin, le dernier chapitre se concentre sur l’utilisation de notre approche dans le cadre
de la “classification de données textuelles pour la recherche d’information”. Nous montrons
d’abord sur des exemples simples à analyser, que l’organisation de mots en groupes non-
disjoints offre une structuration précise et exploitable des données. Puis, nous utilisons ce
résultat pour motiver l’indexation de documents par des groupes non-disjoints de mots,
dans un processus global de classification de documents. Enfin, nous dépassons le cadre de
l’évaluation de notre approche, dans une étude prospective sur l’interaction genre/domaine
en recherche d’information.
4
1
État de l’art du Clustering
Sommaire
1.1 Clustering et apprentissage . . . . . . . . . . . . . . . . . . . . . 7
1.2 Cadre formel du clustering . . . . . . . . . . . . . . . . . . . . . . 7
1.2.1 Partitions, pseudo-partitions et partitions floues . . . . . . . . . 8
1.2.2 Hiérarchies et pseudo-hiérarchies . . . . . . . . . . . . . . . . . . 8
1.2.3 Centroı̈des et médoı̈des . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.4 Concavité vs. convexité d’un cluster . . . . . . . . . . . . . . . . 10
1.2.5 Les outliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.6 Autres notions utiles . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 Les trois principales étapes du clustering . . . . . . . . . . . . . 11
1.3.1 La préparation des données . . . . . . . . . . . . . . . . . . . . . 12
1.3.2 Le choix de l’algorithme . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.3 L’exploitation des clusters . . . . . . . . . . . . . . . . . . . . . . 15
1.4 La similarité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.4.1 Propriétés formelles de base . . . . . . . . . . . . . . . . . . . . . 15
1.4.2 Similarité et variables numériques . . . . . . . . . . . . . . . . . 17
1.4.3 Similarité et variables symboliques . . . . . . . . . . . . . . . . . 17
1.5 Clustering “dur”, clustering avec recouvrements et clustering
“flou” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.6 Les différentes méthodes de clustering . . . . . . . . . . . . . . . 20
1.6.1 Le clustering hiérarchique . . . . . . . . . . . . . . . . . . . . . . 20
1.6.2 Le clustering par partitionnement . . . . . . . . . . . . . . . . . 27
1.6.3 Le clustering par mélange de densités de probabilités . . . . . . . 32
1.6.4 Le clustering par grilles . . . . . . . . . . . . . . . . . . . . . . . 34
1.6.5 Le clustering par densités . . . . . . . . . . . . . . . . . . . . . . 38
1.6.6 Le clustering conceptuel . . . . . . . . . . . . . . . . . . . . . . . 41
1.6.7 Quelques autres approches de clustering . . . . . . . . . . . . . . 45
1.7 Techniques d’évaluation du clustering . . . . . . . . . . . . . . . 46
1.7.1 Critères externes . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5
1.7.2 Critères internes . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
1.7.3 Critères relatifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
1.7.4 Critères d’évaluation pour clustering flou . . . . . . . . . . . . . 50
1.7.5 Adaptation au clustering avec recouvrements . . . . . . . . . . . 50
1.8 Conclusion sur le clustering . . . . . . . . . . . . . . . . . . . . . 51
6
Chapitre 1. État de l’art du Clustering
7
1.2. Cadre formel du clustering
Nous verrons, par la suite, que la plupart des méthodes de classification non-supervisées
utilisent une description vectorielle des données. On parle alors de “données objets” et on
considère un ensemble fini V = {v1 , . . . , vp } de variables descriptives, telles que vj (xi )
désigne la valeur de l’objet xi ∈ X pour la variable vj ∈ V.
La tâche de clustering permet de générer un ensemble de t clusters C = {C1 , . . . , Ct }
tel que chaque cluster Ca est un sous-ensemble
St de X (Ca ⊂ X) et l’union des clusters
couvre l’ensemble des objets de départ ( a=1 Ca = X).
La propriété iii) exprime le fait que les clusters constitués sont disjoints, chaque objet
de X ne peut donc appartenir qu’à un seul cluster de C. Une telle partition sera également
appelée “partition stricte”.
Dans le cas d’une pseudo-partition, les intersections entre clusters ne sont pas nécessairement
vides. Cependant, la propriété iii) interdit qu’un cluster soit inclus dans un autre.
Dans les deux définitions précédentes, chaque objet xi appartient ou non à un cluster
Ca donné. On peut alors formaliser le processus de construction d’une partition ou d’une
pseudo-partition par la donnée de t fonctions à valeurs binaires :
1 si xi ∈ Ca
ua : X → {0, 1}, a = 1 . . . t avec ua (xi ) =
0 sinon.
Cette formalisation peut être généralisée au cas de fonctions à valeurs réelles. Dans ce
cas, les partitions générées sont dites “floues”.
Définition 1.3. Une partition floue de X, notée C = {C1 , . . . , Ct }, est définie par la
donnée de t fonctions
ua : X → [0, 1], a = 1 . . . t
8
Chapitre 1. État de l’art du Clustering
Définition 1.4. Soit P un ensemble de parties non vides sur X, P est une hiérarchie
si les propriétés suivantes sont vérifiées :
i) X ∈ P,
ii) pour tout xi ∈ X, {xi } ∈ P ,
iii) pour tout h, h0 ∈ P, h ∩ h0 ∈ {∅, h, h0 },
iv) pour tout h ∈ P, ∪{h0 ∈ P : h0 ⊂ h} ∈ {h, ∅}.
Les propriétés i) et ii) expriment le fait que la racine de l’arbre est constituée de
l’ensemble X et que les feuilles de l’arbre correspondent aux singletons {x1 }, . . . , {xn }.
Les propriétés iii) et iv) assurent que deux clusters ne s’intersectent que si l’un est inclus
dans l’autre et que chaque cluster contient tous ses successeurs (“fils”) et est contenu dans
son unique cluster prédécesseur (“père”).
Définition 1.5. Soit P un ensemble de parties non vides sur X, P est une pseudo-
hiérarchie si les propriétés suivantes sont vérifiées :
i) X ∈ P,
ii) pour tout xi ∈ X, {xi } ∈ P ,
iii) pour tout h, h0 ∈ P, h ∩ h0 = ∅ ou h ∩ h0 ∈ P ,
iv) il existe un ordre (total) θ sur X compatible avec P .
Définition 1.7. Une partie h est connexe selon θ si x et y étant les bornes (i.e. le plus
petit et le plus grand élément) de h selon θ, on a la condition :
Par ces définitions, une pseudo-hiérarchie (aussi appelée pyramide [46]) est telle que
chaque cluster peut avoir plusieurs prédécesseurs. De plus, la propriété iv) concernant
l’existence d’un ordre θ sur X, permet la visualisation d’une telle pyramide.
La notion de hiérarchie floue n’est pas formellement définie. Ce type d’organisation est
en effet très peu utilisée en apprentissage (cf. section 1.6.1).
Définition 1.8. Le centroı̈de x∗ d’un cluster Ca est le point défini dans V par :
1 X
∀j = 1, . . . , p, vj (x∗ ) = vj (xi )
|Ca |
xi ∈Ca
Dans le cas où toutes les variables descriptives v1 , . . . , vp sont quantitatives (continues
ou discrètes), le centroı̈de est défini, sur chaque composante, par la valeur moyenne des
objets du cluster pour cette même composante. En ce sens, le centroı̈de correspond au
centre de gravité du cluster. Le centroı̈de d’un cluster ne fait généralement pas partie des
objets constituant ce cluster.
9
1.2. Cadre formel du clustering
Par cette définition, le médoı̈de d’un cluster est l’objet du cluster tel que la dissimila-
rité moyenne de tous les objets du cluster avec le médoı̈de est minimale. Inversement, le
médoı̈de d’un cluster est l’objet en moyenne le plus similaire aux autres.
On peut néanmoins parler de convexité ou concavité des clusters, pour des objets sur
lesquels on ne connaı̂t pas d’espace de représentation a priori. De façon générale, un cluster
est convexe lorsque les objets qui le composent sont organisés autour d’un centre (centroı̈de
ou médoı̈de). On remarquera dans la suite, que l’algorithme des k-moyennes, par exemple,
construit des clusters convexes, par affectation des objets à un centre. A l’inverse, un
algorithme tel que l’algorithme agglomératif hiérarchique du simple lien, agglomère les
objets “de proche en proche” et peut renvoyer des clusters concaves.
10
Chapitre 1. État de l’art du Clustering
aient été générées par un processus différent [80]. Il n’existe pas de définition formelle
d’un outlier telle que Hawkins le conçoit, cependant la notion de DB(m, δ)-Outlier 1 -
consistante avec la définition de Hawkins - est souvent utilisée [100].
Définition 1.10. Un objet x∗ ∈ X est un DB(m, δ)-outlier s’il existe un sous-ensemble
X 0 de X, constitué d’au moins m objets x01 , . . . , x0m , tel que ∀x0i ∈ X 0 , d(x∗ , x0i ) > δ, où d
est une mesure de dissimilarité définie sur X.
Comme nous le verrons par la suite, la gestion de ce type de données est difficile mais
très importante puisque les outliers peuvent introduire un biais dans le processus d’analyse.
Définition 1.12. Le diamètre d’un cluster est égal à la plus grande distance entre deux
éléments de ce cluster
diam(Ca ) = max d(xi , xj )
{xi ,xj ∈Ca }
Définition 1.13. L’inertie d’un cluster (inertie intra-cluster) correspond à la somme des
carrés des distances au centre
X
Iintra (Ca ) = d(xi , x∗a )2
xi ∈Ca
Définition 1.15. La variance d’un cluster est égale à la moyenne des carrés des distances
au centre
1 X
V (Ca ) = d(xi , x∗a )2
|Ca |
xi ∈Ca
11
1.3. Les trois principales étapes du clustering
Connaissance
Suite du
processus
Résultats de
l'algorithme
Données
pré-traitées
Données
12
Chapitre 1. État de l’art du Clustering
Dans un cadre supervisé, chaque variable peut-être évaluée relativement à son pouvoir
discriminant par rapport aux classes prédéfinies. Deux types de méthodes se dégagent :
les méthodes “filtre” (f ilter) et les méthodes “enveloppe” (wrapper). Dans le premier
cas il s’agit d’enlever les variables non pertinentes avant la phase d’apprentissage alors
que les approches “enveloppe” utilisent de manière explicite le classifieur pour choisir un
sous-ensemble de variables réellement discriminantes [116].
Distances et similarités
La plupart des algorithmes de clustering utilisent une mesure de proximité entre les
objets à traiter. Cette notion de “proximité” est formalisée à l’aide d’une mesure (ou
indice) de similarité, dissimilarité ou encore par une distance. Le choix ou la construc-
tion de cette mesure est déterminant pour la suite du processus. En effet, deux mesures
différentes peuvent induire deux schémas de classification différents. Finalement, chaque
domaine d’application possédant ses propres données, il possède également sa propre no-
tion de “proximité” ; il faut concevoir alors une mesure différente pour chaque domaine
d’application, permettant de retranscrire au mieux les différences (entre les objets) qui
semblent importantes pour un problème donné.
On note par exemple que les données textuelles (mots, documents, etc.) font appel
à des indices ou mesures de similarités basées sur des cooccurrences (coefficient de Dice
[169], indice d’équivalence [133], etc.). En revanche, les données spatiales sont généralement
étudiées dans des espaces métriques en utilisant des mesures de distances traditionnelles
(distance Euclidienne, distance de Manhattan, cosinus, etc.). Cependant, ces mêmes me-
sures peuvent être réutilisées dans d’autres domaines d’applications à condition qu’elles
respectent les contraintes (propriétés) liées aux domaines considérés. Ainsi, il n’est en
général pas nécessaire de redéfinir une telle mesure dans tous les cas.
Pour être plus précis sur cette notion fondamentale, nous proposons une présentation
formelle de la “similarité” ainsi que ses enjeux dans le cadre du clustering, en section 1.4.
13
1.3. Les trois principales étapes du clustering
La quantité d’objets à traiter est un premier facteur de décision. En effet, pour des
données de très grande taille (par exemple en traitement d’images), les algorithmes de com-
plexité plus que linéaires (O(α.n) sur le nombre n d’objets) sont quasiment prohibés. Ainsi
des méthodes telles que l’algorithme des k-moyennes, proposé en 1967 par MacQueen [117]
ou plus généralement la méthode des nuées dynamiques [44], étant de complexité linéaire,
sont très souvent utilisés. En revanche, lorsque l’on souhaite organiser quelques milliers,
voire quelques centaines d’objets, il est possible d’avoir recours à des méthodes plus com-
plexes et nécessitant un temps de traitement plus important (méthodes hiérarchiques ou
de partitionnement plus élaborées).
Comme nous l’avons précisé, beaucoup d’algorithmes de clustering s’appuient sur une
matrice de similarité ou dissimilarité. Le plus souvent, cette matrice est obtenue à partir
des descriptions des données. La nature de ces descriptions (variables qualitatives et/ou
quantitatives), détermine alors le choix de la mesure de (dis)similarité utilisée.
Par ailleurs, on peut ne pas souhaiter traduire les données dans une telle matrice et
conserver la table initiale des descriptions. Certaines méthodes, telles que le clustering
conceptuel et notamment l’algorithme COBWEB [60] ou sa variante numérique CLASSIT
[66], le permettent.
Quand bien même une matrice de similarité existe, certaines méthodes de clustering
s’appuient sur la notion d’espace métrique. Pour l’algorithme des k-moyennes par exemple,
cet espace métrique permet de définir de nouveaux objets (ici les centroı̈des) absents de
l’ensemble initial des données. Dans le cas où un tel espace n’est pas présent, le processus
de clustering se base uniquement sur la mesure de similarité. Des variantes sont alors
envisageables telles que l’algorithme des nuées dynamiques proposé par Diday en 1972
[44] ou plus simplement les algorithmes “k-médoı̈des” ou PAM (Partitioning Arround
Medoids) [96].
14
Chapitre 1. État de l’art du Clustering
1.4 La similarité
Comme nous l’avons déjà évoqué, la similarité est une notion utilisée dans la plupart
des processus de clustering. Les quatre principaux domaines qui étudient la similarité
sont : l’Analyse des Données (AD), la Reconnaissance des Formes (RF), l’Apprentissage
Symbolique (AS) et les Sciences Cognitives (SC). Les trois tâches majeures utilisant la
notion de similarité sont : la classification, l’identification et la caractérisation [15]. Nous
nous intéressons dans ce travail, aux mesures de similarité/dissimilarité utilisées dans le
cadre de la classification non-supervisée, une tâche commune à l’Analyse de Données et à
la Reconnaissance des formes.
15
1.4. La similarité
dont la nature mathématique peut différer suivant les propriétés vérifiées par cette mesure.
Les propriétés de minimalité, symétrie, identité, inégalité triangulaire et ultramétrique
permettent de définir les notions d’indice de dissimilarité ou de distance, de distance simple
ou ultramétrique et enfin d’écart simple ou ultramétrique. Nous définissons rapidement
ces propriétés puis présentons chacune des mesures relativement aux propriétés qu’elles
vérifient, dans le Tableau 1.1 .
Propriété 1.1. (Minimalité) Une mesure de dissimilarité d : X × X → R + vérifie la
propriété de minimalité si et seulement si :
∀xi ∈ X, d(xi , xi ) = 0
Propriété 1.2. (Symétrie) Une mesure de dissimilarité d : X ×X → R + est symétrique
si et seulement si :
∀xi , xj ∈ X, d(xi , xj ) = d(xj , xi )
Propriété 1.3. (Identité) Une mesure de dissimilarité d : X × X → R + vérifie la
propriété d’identité si et seulement si :
∀xi , xj ∈ X, d(xi , xj ) = 0 ⇒ xi = xj
Propriété 1.4. (Inégalité triangulaire) Une mesure de dissimilarité d : X × X → R +
vérifie l’inégalité triangulaire si et seulement si :
∀xi , xj , xk ∈ X, d(xi , xj ) ≤ d(xi , xk ) + d(xk , xj )
Propriété 1.5. (Inégalité ultramétrique) Une mesure de dissimilarité d : X × X →
R+ vérifie l’inégalité ultramétrique si et seulement si :
∀xi , xj , xk ∈ X, d(xi , xj ) ≤ max{d(xi , xk ), d(xk , xj )}
Inégalité Inégalité
Type de mesure Minimalité Symétrie Identité
triangulaire ultramétrique
Indice de dissimilarité X X
Indice de distance X X X
Distance X X X X
Distance ultramétrique X X X X X
Écart X X X
Écart ultramétrique X X X
16
Chapitre 1. État de l’art du Clustering
où vk (xi ) correspond à la valeur de l’objet xi sur la variable vk . Selon les valeurs prises
par le paramètre l, on parle de distance Euclidienne (l = 2), de Manhattan (l = 1) ou
de Chebychev (l = ∞). Une autre distance très utilisée, notamment dans des applications
portant sur les données textuelles, est la distance du cosinus, correspondant au cosinus de
l’angle θ formé par les deux vecteurs xi et xj :
xi · xj
d(xi , xj ) = cos(θ) = ,
||xi || ||xj ||
sX
où “·” désigne le produit scalaire et ||xi || la norme de xi ( vk (xi )2 ).
k
Les mesures précédentes supposent l’indépendance entre les variables descriptives (ou
attributs) ce qui n’est bien sûr pas le cas en réalité pour la plupart des applications. La
distance de Mahalanobis permet d’éviter cette hypothèse d’indépendance, elle se définit
ainsi : q
d(xi , xj ) = (xi − xj )T S −1 (xi − xj )
d++ + d−−
R(xi , xj ) =
d++ + d+− + d−+ + d−−
d++
J(xi , xj ) =
d++ + d+− + d−+
où d++ correspond au nombre de propriétés partagées par les deux objets, d−− au nombre
de propriétés vérifiées par aucun des deux objets, etc. Ces deux indices2 sont plutôt adaptés
dans le cas d’attributs initialement binaires. Dans le cas contraire, la définition de nouvelles
2
Il existe également d’autres indices utilisant ce type de comptage, comme par exemple les indices de
Sorensen [173] ou de Sokal et Michener [172].
17
1.4. La similarité
1 X
s(xi , xj ) = δt (xi , xj )
|L|
t∈L
où t désigne un terme (propriété) du langage L et δt (xi , xj ) = 0 si l’un des deux objets
seulement satisfait la propriété t et δt (xi , xj ) = 1 sinon. La particularité de cette mesure
réside dans la définition des termes du langage ; plusieurs types de termes peuvent être
envisagés :
– Pour les attributs numériques, des termes de la forme atti = valj , atti ≤ valj ,
atti ≥ valj ou valk ≤ atti ≤ valj , peuvent être envisagés, pour des valeurs valj
appartenant au domaine de définition de l’attribut considéré ou choisis parmi les
valeurs observées dans l’ensemble des données,
– Pour des attributs symboliques, on définit généralement des termes de la forme
atti = valj , où valj correspond à l’une des modalités possibles pour l’attribut atti .
Les termes du langage L peuvent être de nature plus complexe. On peut par exemple
combiner plusieurs attributs sous la forme d’une expression linéaire (e.g. a0 +a1 att1 +· · ·+
ap attp ≥ 0 pour des attributs tous numériques) ou d’une conjonction de termes simples
(e.g. atti ≤ valj ET attk = vall ). Le nouveau langage de description permet de traiter
les attributs numériques sans discrétisation préalable, ainsi que les attributs symboliques
en évitant une sur-représentation des attributs ayant de nombreuses modalités. Enfin on
peut choisir d’intégrer des connaissances extérieures pour affiner la pertinence du langage,
ces connaissances permettent de favoriser, par exemple, la mise en commun de modalités
jugées “assez proches” (e.g. couleur = rouge OU couleur = rose).
Cette fonction de similarité peut facilement donner lieu à une pseudo-distance (par
transformation d(xi , xj ) = 1−s(xi , xj )), vérifiant les propriétés de minimalité, de symétrie
et l’inégalité triangulaire, sans toutefois satisfaire la propriété d’identité puisque deux
objets différents peuvent, selon le langage utilisé, satisfaire ou non les mêmes propriétés.
Cette section était destinée à présenter brièvement les différents choix de mesures de
similarité, selon la nature des données à traiter. Nous choisirons dans la suite d’utiliser
naturellement la distance euclidienne lorsque les données sont caractérisées uniquement
par des variables numériques, et la mesure de Martin et Moal dans toute autre situation.
Nous tâcherons cependant de justifier ces choix le moment venu, au regard des mesures
traditionnellement utilisées dans les applications considérées.
18
Chapitre 1. État de l’art du Clustering
19
1.6. Les différentes méthodes de clustering
tue dans ce cadre de recherches qui compte de récentes contributions applicables à des
domaines précis [115, 137].
Dans la suite de ce chapitre, nous nous attacherons à étudier les trois formalismes
précédents (clustering “dur”, clustering avec recouvrements et clustering “flou”), dans
diverses approches de clustering.
20
Chapitre 1. État de l’art du Clustering
Niveaux
{x1,x2,x3,x4,x5,x6}
5
4
{x4,x5,x6}
Méthode agglomérative
Méthode divisive
3
{x1,x2,x3}
2
{x1,x2}
1
1
{x4,x5}
Objets
x1 x2 x3 x4 x5 x6
Nous présentons ici les principaux algorithmes de clustering par construction de hiérarchies
strictes telles que définies en 1.4. Il existe très peu d’algorithmes divisifs, notamment à
cause de la difficulté à définir un critère de séparation d’un cluster. En effet pour un cluster
de taille n, il y a 2n−1 − 1 possibilités pour diviser ce cluster en deux sous-clusters. Dans le
cas agglomératif, chaque fusion de 2 clusters parmi n, offre seulement n(n−1) 2 possibilités.
Pour éviter d’explorer toutes les possibilités de divisions, l’algorithme DIANA (DIvisive
ANAlysis) [97], présenté en figure 1.4, recherche d’abord l’objet le plus “atypique” du
cluster avant de lui agréger éventuellement d’autres objets proches de façon à distinguer
deux sous-clusters. D’autres techniques ont été envisagées telles que la séparation par
décomposition en k valeurs propres, utilisée dans l’algorithme PDDP (Principal Direction
5
On parle aussi d’approche bottom-up puisque l’arbre se construit du “bas” vers le “haut”.
6
On parle aussi d’approche top-down puisque l’arbre se construit du “haut” vers le “bas”.
21
1.6. Les différentes méthodes de clustering
5. Soit xk l’objet pour lequel sk est minimal. Si sk est négatif alors ajouter xk à
C∗
6. Répéter les étapes 3 et 4 jusqu’à sk > 0
7. Remplacer C par C\C ∗ et C ∗ dans C puis ajouter C\C ∗ et C ∗ dans P
8. Répéter les étapes 2 à 7 jusqu’à ce que chaque cluster de C soit réduit à un
singleton
9. Retourner P , un ensemble de parties non vides sur X, correspondant aux
nœuds de la hiérarchie
22
Chapitre 1. État de l’art du Clustering
Des travaux plus récents ont permis de proposer des algorithmes agglomératifs
hiérarchiques permettant d’obtenir des clusters de formes variées (contrairement aux al-
gorithmes CLINK et ALINK), tels que l’algorithme CURE (Clustering Using Representa-
tives) [74] et surtout l’algorithme CHAMELEON [95].
La principale caractéristique de l’algorithme CURE est de proposer une méthode ori-
ginale d’indexation des clusters. Plutôt que d’indexer un cluster par l’ensemble des objets
qui le composent (indexation graphique) ou par un centroı̈de (indexation géométrique),
CURE détermine un nombre constant d’objets représentatifs de ce cluster.
CHAMELEON procède en deux étapes : une première étape consiste à partitionner
l’ensemble des objets en petits clusters homogènes, puis une phase agglomérative per-
7
SAHN est également parfois dénommé Sequential Agglomerative Hierarchical and Nested
23
1.6. Les différentes méthodes de clustering
met d’aboutir à une hiérarchie. Pour cela, CHAMELEON s’appuie sur un formalisme de
représentation basé sur les graphes (cf. 1.6.7).
Enfin des méthodes telles que ROCK (RObust Clustering using linKs) [75] et COB-
WEB [60] construisent un arbre à partir de données décrites par des variables qualitatives.
Les pseudo-hiérarchies
Les “pyramides”, introduites par E. Diday [46], constituent une généralisation des ap-
proches hiérarchiques précédentes. La motivation première est la construction de “classes
recouvrantes” avec la contrainte de pouvoir visualiser l’organisation des données. Les py-
ramides constituent alors ce que l’on appelle aussi des pseudo-hiérarchies au sens où nous
l’avons défini en 1.5. Une pyramide telle que nous la présentons en figure 1.6 autorise
chaque nœud à avoir jusqu’à deux prédécesseurs. Lorsque l’on coupe la pyramide à un ni-
veau l donné, les clusters obtenus forment alors une pseudo-partition de X. Dans la figure
1.6, en choisissant de couper le dendrogramme au niveau matérialisé par les pointillés, la
pseudo-partition C = {{x1 , x2 , x3 , x4 }, {x3 , x4 , x5 }, {x6 }} est obtenue.
Niveaux
{x1,x2,x3,x4,x5,x6}
{x1,x2,x3,x4,x5}
{x1,x2,x3,x4}
{x3,x4,x5}
{x1,x2,x3}
{x2,x3}
{x3,x4}
{x1,x2}
Objets
x1 x2 x3 x4 x5 x6
24
Chapitre 1. État de l’art du Clustering
C5
C4
C3
C3
C2 C2
C1 C1
Fig. 1.8 – Exemples de croisements (gauche et centre) et d’inversions (droite) dans les
pyramides.
Les hiérarchies floues sont généraelemnt peu utilisées. On note cependant quelques
applications dans le domaine de la segmentation d’images ainsi que dans les formalismes
25
1.6. Les différentes méthodes de clustering
26
Chapitre 1. État de l’art du Clustering
C6
1.0 1.0
Niveaux
x1(1.0),x2(1.0)
1 x3(1.0),x4(1.0) C4 C5
0.8
0.6
C1 C2 0.2 0.7 0.4
x1(0.8),x2(0.9) x1(0.2),x2(0.1) 0.3
2 x3(0.1),x4(0.2) x3(0.9),x4(0.8) C1 C2 C3
C3 C4 C5
x1(0.1),x2(0.0) x1(0.0),x2(0.1) x1(0.1),x2(0.0)
3 x3(0.5),x4(0.1) x3(0.2),x4(0.3) x3(0.2),x4(0.4) Objets
x1 x2 x3 x4 x5
Fig. 1.10 – Exemple de dendrogramme flou. Fig. 1.11 – Exemple de Hiérarchie “IS A”.
27
1.6. Les différentes méthodes de clustering
Le partitionnement strict
L’algorithme des k-moyennes (k-means) [117] est sans aucun doute la méthode de
partitionnement la plus connue et la plus utilisée dans divers domaines d’application. Ce
succès est dû au fait que cet algorithme présente un rapport coût/efficacité avantageux.
Nous présentons l’algorithme des k-moyennes en figure 1.12.
Algorithme k-moyennes :
6. Répéter les étapes 4 et 5 tant que des changements s’opèrent d’un schéma C t
à un schéma Ct+1 ou jusqu’à un nombre τ d’itérations
7. Retourner la partition finale Cf inale
28
Chapitre 1. État de l’art du Clustering
Une autre version de l’algorithme des k-moyennes consiste à recalculer les centres
mobiles au fur et à mesure des ré-allocations. Ainsi, chaque ré-allocation d’un objet à un
centre mobile peut engendrer une modification immédiate sur les deux centres concernés : le
centre auquel l’objet est nouvellement alloué et le centre auquel l’objet était anciennement
alloué. Cette version, dite “adaptative”, permet, en pratique, de parvenir plus rapidement
à une partition de bonne qualité. Cependant le résultat dépend cette fois de l’ordre de
traitement des objets.
L’algorithme des k-moyennes ne peut être utilisé que sur des données décrites par des
attributs numériques permettant ainsi le calcul des centroı̈des. Dans le cas d’attributs
symboliques (ou catégoriels) plusieurs variantes ont été proposées : l’algorithme des k-
médoı̈des, l’algorithme PAM (Partitioning Around Medoids) [96] ou encore la méthode
des nuées dynamiques [45]. L’algorithme des k-médoı̈des se différencie de la méthode des
k-moyennes par l’utilisation de médoı̈des plutôt que de centroı̈des pour représenter les
classes. Enfin, la méthode des nuées dynamiques représente chaque classe par un “noyau”,
constitué d’un certain nombre d’objets de cette classe, souvent plus représentatif qu’un
objet unique.
La recherche des médoı̈des étant plus coûteuse que le simple calcul de centroı̈des, des
extensions de l’algorithme k-médoı̈des ont été proposées dans le cas du traitement de
larges ensembles de données. Notons par exemple la méthode CLARA (Clustering LARge
Applications) [97] qui procède par échantillonnage de l’ensemble des données en itérant
plusieurs fois les étapes suivantes :
– tirage aléatoire de 40 + 2k objets10 ,
– exécution de l’algorithme PAM sur l’échantillon obtenu.
Finalement, la partition finale est obtenue par affectation de tous les objets aux médoı̈des
issus du meilleur schéma généré.
Enfin, l’algorithme CLARANS (CLustering Algorithm based on RANdomized Search)
[136] propose une méthode originale de recherche d’un ensemble optimal de k médoı̈des.
A partir d’un graphe, où chaque nœud correspond à un schéma de clustering différent
(ensemble de k médoı̈des), l’algorithme commence par choisir un nœud au hasard puis
parcourt le graphe de proche en proche jusqu’à observer un minimum local. Dans ce
graphe, deux nœuds sont voisins s’ils ne diffèrent que d’un médoı̈de. Ce processus est itéré
plusieurs fois, et le meilleur schéma est retourné.
Nous remarquons que toutes les méthodes précédentes nécessitent la connaissance du
paramètre k, correspondant au nombre de groupes attendus en sortie du processus de
clustering. La méthode ISODATA (Iterative Self-Organizing Data Analysis Technique) [8]
est parfois utilisée pour affiner les clusters obtenus par un algorithme de partitionnement.
Cette technique consiste à éclater ou fusionner les clusters en fonction de seuils préétablis.
Par exemple, on fusionnera deux groupes Ci et Cj si leur distance inter-centre d(x∗i , x∗j )
est inférieure à un certain seuil α. De même, on éclatera un cluster Ci d’inertie supérieure
à un seuil donné β. Dans cette famille d’algorithmes, le nombre de clusters attendus n’est
pas fixé a priori.
29
1.6. Les différentes méthodes de clustering
3. Calculer les nouvelles valeurs d’appartenance {uh,t+1 (xi )}h=1...k de chaque ob-
jet xi à chaque centre de classe x∗h,t
L’algorithme des k-moyennes flou est alors fondé sur le principe d’optimisation itérative
d’un critère de variabilité intra-classe :
n X
X k
Jm = [uh (xi )]m .d(xi , x∗h )
i=1 h=1
30
Chapitre 1. État de l’art du Clustering
uniforme {uj (xi )}j=1...k → k1 et la partition obtenue est alors trop floue pour y recher-
cher une quelconque organisation des données. Les paramètres m = 2 ou m = 1.25 sont
généralement choisis.
Plusieurs extensions de cet algorithme ont été proposées afin de considérer des données
relationnelles11 et d’optimiser un critère (ou fonction objective) plus robuste. En ce sens,
l’algorithme des k-moyennes flou relationnel (Relational Fuzzy k-Means) [79] consiste à
minimiser itérativement le critère suivant :
n X
X n
ul (xi )m ul (xj )m .d(xi , xj )
k
X i=1 j=1
Jm = n
X
l=1 2. ul (xj )m
j=1
31
1.6. Les différentes méthodes de clustering
[97]. Cependant, ces derniers algorithmes restent coûteux puisque leur complexité est qua-
dratique sur le nombre n d’objets dans X.
Nous présentons finalement (figure 1.14) l’algorithme des k-médoı̈des flou (Fuzzy c-
Medoids) [102] qui peut être considéré comme la version floue de l’algorithme des k-
médoı̈des. La complexité de cet algorithme est en O(n2 ) au pire cas, sachant qu’en pratique,
le coût est moins élevé.
Une dernière méthode de partitionnement flou, inspirée de l’algorithme des k-moyennes,
a été proposée par A. Lelu [110] sous la dénomination de k-moyennes axiales (Axial k-
means). Cet algorithme consiste à représenter chaque objet de X par un vecteur normalisé.
Tous les objets et centres de classes se trouvent alors sur une hyper-sphère de rayon 1.
Au final, chaque classe est représentée au moyen d’un seul axe, et le degré d’appartenance
d’un objet à une classe est obtenu par projection de l’objet sur l’axe correspondant.
La méthode des k-moyennes axiales est généralement employée dans le cadre du regrou-
pement de termes afin de constituer des thèmes. La construction de classes recouvrantes
(donc d’une pseudo-partition) s’effectue par la donnée d’un seuil, dit de typicité, tel que
chaque objet xi est affecté à une classe Cj si la projection Pj (xi ) de xi sur l’axe représentatif
de la classe Cj dépasse ce seuil.
Comme nous l’avons précisé en début de section, c’est par le recours à un seuil, qu’une
pseudo-partition peut être dérivée d’un schéma flou. Notons que [98] discutent de méthodes
d’affectations strictes ou non (hard-assignment vs. soft-assignment). Comme dans la plu-
part des cas, la dénomination “soft-assignment” correspond ici à une affectation fraction-
naire plus proche de ce que nous avons définie comme une affectation floue.
32
Chapitre 1. État de l’art du Clustering
pt (xi |h).τht
N.B. pt (h|xi ) = pt (xi ) par l’égalité de Bayes.
Notons que l’initialisation des paramètres (étape 1) influencera le résultat final de l’es-
timation. En effet, sachant qu’il est difficile d’aboutir à l’optimum global de la fonction de
coût (l’espace des paramètres étant infini), l’algorithme EM permet d’obtenir un optimum
local, lié à l’initialisation des paramètres.
L’algorithme EM est devenu quasiment incontournable, il est à l’origine de nombreux
logiciels tels que Mclust-EMclust [61], EMmix [140] ou encore MIX-MOD [12]. Cependant,
le principal inconvénient de cette méthode réside dans sa lenteur, due au nombre souvent
élevé d’itérations nécessaires pour la convergence. Cet algorithme n’est donc pas approprié
pour le traitement de grands volumes de données. Quelques travaux actuels s’attellent à
accélérer les itérations, notons par exemple l’étude récente proposée dans [135].
L’algorithme AutoClass [21] adopte le principe de l’algorithme EM en proposant deux
avancées majeures :
l’estimation du nombre k de clusters : le nombre de clusters est estimé par une ana-
lyse statistique bayésienne. Plusieurs modèles (avec différentes valeurs de k) sont
33
1.6. Les différentes méthodes de clustering
34
Chapitre 1. État de l’art du Clustering
Cette structure hiérarchique est telle que la racine (1ère couche) correspond à une
cellule (un rectangle dans le cas bidimensionnel) contenant l’ensemble des objets. Chaque
nœud de la hiérarchie, autre que la racine ou une feuille, possède un nombre fixé12 de
nœuds fils pour lesquels chaque cellule correspondant est un quadrant de la cellule mère.
Le découpage de l’espace est stoppé à un niveau de granularité impulsé par l’utilisateur.
Nous proposons en figure 1.16 une représentation graphique de la structure hiérarchique
générée par l’algorithme STING, dans le cas bidimensionnel.
1ère Couche
2ème Couche
ième Couche
Chaque cellule est caractérisée par un paramètre indépendant des attributs : n (nombre
d’objets dans la cellule) et quatre paramètres dépendant des attributs : m (valeur moyenne),
s (écart type), min (valeur minimum), max (valeur maximum) et distrib (type de dis-
tribution). Les quatre derniers paramètres sont calculés pour chaque attribut. Le dernier
paramètre (distrib) correspond au type de distribution éventuellement observée pour les
objets de la cellule pour un attribut donné (e.g distributions normale, uniforme, exponen-
tielle etc.). Cette recherche s’effectue généralement par une série d’hypothèses validées ou
non par un test statistique tel que le test du χ2 .
Notons que ces paramètres sont calculés pour les feuilles de la hiérarchie puis transmis
simplement de proche en proche aux nœuds supérieurs comme suit :
Soient (n, m, s, min, max) les paramètres recherchés pour une cellule donnée, et {(n i , mi ,
12
La valeur par défaut est 4.
35
1.6. Les différentes méthodes de clustering
si , mini , maxi )} les paramètres connus pour les cellules filles correspondantes :
v
X uX
mi ni u (s2i + m2i )ni
X u
t
n= ni m = i , s= i
− m2
n n
i
Le paramètre dist est également obtenu en fonction des distributions observées dans
les cellules filles, le calcul de ce paramètre est cependant plus complexe (cf. [183]).
Une fois la structure hiérarchique construite et paramétrée, l’algorithme STING re-
cherche dans cette structure, les cellules pertinentes pour une requête donnée, par une
stratégie de recherche descendante. Il n’est cependant pas utile de débuter systématiquement
à la racine mais plutôt dans une couche intermédiaire. Au niveau de cette couche, les cel-
lules pertinentes sont recherchées (proportionnellement au nombre d’objets vérifiant la
requête dans cette cellule) puis permettent de diriger et de limiter la recherche dans les
couches inférieures jusqu’à la sélection d’un ensemble de cellules valides pour la requête.
L’algorithme STING permet donc de traiter de très grandes bases de données en pro-
posant d’une part une structure hiérarchique de découpage de l’espace des données et
d’autre part une méthode de parcours de cette structure aboutissant à la sélection d’un
ensemble de cellules répondant à des caractéristiques exprimées sous forme d’une requête.
L’algorithme WaveCluster (Wavelet-Based clustering) [165] utilise les ondelettes -
une méthode de transformation pour le traitement de signaux - sur les données synthétisées
par un découpage de l’espace des attributs en grille [119]. L’algorithme (figure 1.17) procède
en premier lieu à un découpage de l’espace des attributs (espace d-dimensionnel) tel Q que
chaque dimension i est divisée en mi intervalles. La grille construite possède alors i mi
cellules, chaque objet étant affecté à une cellule.
La répartition des objets dans les cellules compose un signal d-dimensionnel, dont les
parties à haute fréquence correspondent aux frontières des clusters tandis que les par-
ties à basse fréquence permettent de distinguer les régions de l’espace où les objets sont
concentrés.
L’utilisation de la méthode des ondelettes permet d’obtenir la décomposition appro-
priée du signal et de détecter ainsi la position des clusters. L’analyse du signal trans-
formé passe par la recherche de cellules connexes (clusters) dans les différentes bandes de
fréquence. Les objets sont finalement étiquetés en fonction des clusters obtenus par cette
technique.
Notons qu’il est effectué, en général, plusieurs transformations13 successives du signal,
correspondant à différents niveaux de granularité.
L’algorithme WaveCluster se limite à des applications où les données multidimension-
nelles sont décrites par des attributs numériques. La méthode est de complexité linéaire
O(n) sur le nombre d’objets dans le cas bidimensionnel mais cette complexité augmente
de façon exponentielle avec la dimension de l’espace des attributs. Enfin, WaveCluster se
distingue par sa capacité à gérer les outlier et à découvrir des clusters de formes variées.
Plutôt que d’utiliser le découpage en grilles dans le but de faciliter la recherche des
contours des clusters, l’algorithme GIZMO [19] fusionne les cellules denses et connectées,
13
Par défaut, WaveCluster effectue 3 transformations.
36
Chapitre 1. État de l’art du Clustering
susceptibles de former un cluster. GIZMO commence par partitionner l’espace des objets
de façon similaire à l’étape de découpage utilisée dans WaveCluster. Ensuite, l’algorithme
traite l’ensemble des cellules non vides (présence d’au moins un objet) ; s’appuyant sur les
notions de voisinage14 et de connexion15 entre cellules, GIZMO détermine l’ensemble des
composantes connexes (ensembles de cellules connectées). Chacune de ces composantes
est alors considérée comme un cluster candidat et donne lieu à une analyse permettant
de sélectionner les composantes sensiblement uniformes relativement à leur densité. Les
composantes non retenues sont de nouveau analysées en les privant de leur cellule de plus
faible densité.
Brézellec et Didier [19] montrent que l’algorithme GIZMO conduit à des résultats
équivalents à la méthode WaveCluster. Les caractéristiques de cette dernière méthode
sont transposables à GIZMO, notamment la découverte de clusters de formes variées.
Un inconvénient commun aux trois précédentes méthodes est leur faibles performances
dans le cas de données décrites dans un espace à grande dimension. En effet la quantité
de cellules augmente exponentiellement avec la dimension de l’espace des données. Un
parcours simple de chaque cellule devient très coûteux dans cette situation. On serait alors
amené à conclure que les méthodes de clustering basées sur un découpage de l’espace en
grilles se limitent aux données de faible dimension. Cependant, une parade a été proposée
par Agrawal et al. via l’algorithme CLIQUE (CLustering In QUEst) [4], utilisant les
grilles pour traiter des données de grande dimension.
Cet algorithme repose sur l’idée que les objets ne sont pas distribués identiquement
dans tous les sous-espaces de l’espace initial. Ainsi, ils peuvent être uniformément répartis
dans certains sous-espaces ou au contraire s’organiser en régions de densités différentes
dans d’autres. Ces derniers sous-espaces sont alors susceptibles d’aider à la détection des
clusters.
La recherche des sous-espaces pertinents est la principale originalité de l’algorithme
CLIQUE. Plutôt que de considérer la recherche des clusters dans un espace de grande
dimension, CLIQUE traite plusieurs sous-problèmes, dans des espaces de dimension plus
faible.
14
Deux cellules sont voisines si elles se touchent sur la grille par une face ou un coin.
15
Deux cellules sont connectées si elles sont voisines ou si il existe un chemin de cellules voisines permet-
tant de les relier.
37
1.6. Les différentes méthodes de clustering
Après avoir découpé chaque dimension en intervalles réguliers (dont les paramètres
doivent être spécifiés par l’utilisateur), CLIQUE s’appuie alors sur trois phases de traite-
ment :
1. la recherche des sous-espaces susceptibles de contenir des clusters denses,
2. l’identification des clusters dans ces sous-espaces,
3. la construction d’une description (minimale) de ces clusters.
La première étape de recherche des sous-espaces intéressants se fait de manière ascen-
dante : en commençant par sélectionner les sous-espaces de dimension 1 contenant des
cellules (ici intervalles) denses16 , puis les combinaisons des sous-espaces sélectionnés for-
mant des sous-espaces de dimension 2 susceptibles de contenir des cellules denses et ainsi
de suite jusqu’à avoir généré tous les sous-espaces pertinents, relativement à la couverture
de ses sous-espaces par des cellules denses. Cette méthode de recherche est basée sur la
propriété de monotonie suivante : “Si une cellule est dense dans un espace de dimension
k, toute projection de cette cellule dans l’un des k sous-espaces de dimension k − 1 est
dense”.
L’identification des clusters, dans chacun des sous-espaces pertinents, s’effectue par une
stratégie de recherche semblable à celle utilisée dans l’algorithme GIZMO (recherche des
composantes connexes dans un graphe formalisant les connexions entre cellules denses).
Enfin, Agrawal et al. proposent une stratégie pour générer une description minimale
des clusters, en construisant des hyper-rectangles par généralisations successives initialisées
par une cellule dense choisie au hasard17 .
L’algorithme CLIQUE présente donc l’avantage de permettre le traitement de données
volumineuses dans des espaces de grande dimension. De plus, les descriptions proposées
peuvent induire des intersections entre clusters, aboutissant ainsi à un pseudo-partitionnement
des données.
Notons que l’ensemble des quatre algorithmes exposés (STING, WaveCluster, GIZMO
et CLIQUE) utilisent la notion de densité. L’intérêt de cet apport est de ne pas limiter la
recherche uniquement aux clusters constitués d’objets très similaires, mais au contraire,
d’autoriser la formation de classes d’objets moins “proches” mais de densités homogènes.
Les algorithmes fondés sur les densités font de cette notion le point central de leur pro-
cessus, nous les présentons dans la section suivante.
38
Chapitre 1. État de l’art du Clustering
39
1.6. Les différentes méthodes de clustering
1. Initialisation id = 1 et Cid = ∅,
2. Pour i allant de 1 à n : [
3. Si xi n’est pas un noyau ou si xi ∈ Cj , alors retourner à l’étape 2,
j=1...id
4. construire-cluster(xi ,X,Cid ,,M ),
5. id = id + 1 et Cid = ∅,
6. Retourner l’ensemble des d-clusters : C1 , . . . , Cid−1 .
40
Chapitre 1. État de l’art du Clustering
Un partitionnement flou peut également être envisagé par une méthode de clustering
basée sur la densité. L’algorithme DENCLUE (DENsity-based CLUstEring) [82] recherche
un ensemble de points “density-attractors” qui s’apparentent aux centres de gravité dans
l’algorithme des k-moyennes flou. Ces points sont, en fait, les maxima locaux d’une fonction
de densité globale rendant compte de l’influence de l’ensemble des objets en tout point
de l’espace. Ces influences sont modélisées par des fonctions d’influence qui mesurent,
pour chaque objet, son impact dans son voisinage. Ce sont ces dernières fonctions qui font
intervenir la notion de densité par l’utilisation des voisinages. Cependant, DENCLUE
n’est pas destiné à la construction de clusters flous et souffre également d’un excès de
paramètres.
Nous avons choisi de présenter, dans cette section, l’algorithme COBWEB, afin d’illus-
trer le fonctionnement des méthodes de clustering conceptuel. Cet algorithme est très
utilisé et se présente souvent comme une référence dans ce domaine.
41
1.6. Les différentes méthodes de clustering
données et de leur description, une hiérarchie de concepts telles que nous la présentons en
figure 1.19.
P (C1) = 1
P (C4) = 1/2 P (C5 ) = 1/2 P (C6 ) = 1/2 P (C7) = 1/4 P (C8) = 1/4
P (chev. = bruns|C4 ) = 1 P (chev. = bruns|C5 ) = 1 P (chev. = blonds|C6 ) = 1 P (chev. = blonds|C7 ) = 1 P (chev. = blonds|C8 ) = 1
P (yeux = verts|C4 ) = 1 P (yeux = bleus|C6 ) = 1
P (yeux = bleus|C5 ) = 1 P (yeux = verts|C7 ) = 1
P (yeux = noirs|C8 ) = 1
A chaque concept de la hiérarchie est associée une définition générique des objets
constituant la classe. Par exemple, dans la figure 1.19, la classe C2 contient 1/3 des indi-
vidus de l’ensemble initial et dans C2 tous les individus ont les cheveux bruns et la moitié
ont les yeux verts.
L’algorithme COBWEB s’inscrit dans la problématique générale du clustering puisqu’il
s’agit d’optimiser un critère global basé sur les deux notions de :
– similarité intra-classe,
– dissimilarité inter-classes.
Le critère CU (Category Utility) [69] est alors utilisé dans COBWEB pour évaluer la
qualité globale d’un schéma de clustering :
t
1X XX XX
CU ({C1 , . . . , Ct }) = p(Ck )[ p(Ai = Vi,j |Ck )2 − p(Ai = Vi,j )2 ] (1.1)
t
k=1 i j i j
Dans cette dernière définition, {A1 , . . . , Ap } désigne l’ensemble des attributs décrivant
les objets et {Vi,1 , . . . , Vi,ni } le domaine de valeurs de l’attribut Ai . On retrouve dans ce
critère les probabilités conditionnelles p(Ai = Vi,j |Ck ) et p(Ck |Ai = Vi,j )20 , formalisant
respectivement la similarité intra-classe et la dissimilarité inter-classes. Si un couple attri-
but/valeur (Ai = Vi,j ) est indépendant d’une classe Ck , alors p(Ai = Vi,j |Ck ) = p(Ai =
Vi,j ) et p(Ai = Vi,j |Ck )2 − p(Ai = Vi,j )2 = 0. En supposant que cela soit vrai pour tous les
couples attribut/valeur, le schéma de concepts proposé est indépendant des descriptions
et le critère CU atteint son minimum 0. En revanche, ce critère atteint son maximum pour
le meilleur schéma conceptuel.
La stratégie de construction de la structure hiérarchique consiste à incorporer les objets
de façon incrémentale dans la structure. Chaque nouvel objet est introduit par la racine
puis parcourt l’arbre en appliquant successivement l’un des opérateurs suivants :
Incorporer l’objet dans le cluster,
20
Ce terme peut être retrouvé par la règle de Bayes.
42
Chapitre 1. État de l’art du Clustering
43
1.6. Les différentes méthodes de clustering
fonction créer-nouveaux-nœuds-terminaux(N ,x i )
fonction fusionner(P, R, N )
fonction Diviser(P, N )
44
Chapitre 1. État de l’art du Clustering
concepts. Ces travaux plutôt récents sont présentés dans [20] et ont donné lieu au système
SODAS [47].
Définition 1.22. Le graphe du plus proche voisin N N G(X) (Nearest Neighbor Graph
[139]) est défini par l’ensemble X de sommets et l’ensemble V d’arêtes tel que chaque
objet xi ∈ X est relié à son plus proche voisin dans X relativement à d.
45
1.7. Techniques d’évaluation du clustering
Définition 1.25. Le graphe de Gabriel GG(X) (Gabriel Graph [121]) est défini par l’en-
semble X de sommets et l’ensemble V d’arêtes tel qu’il existe une arête entre deux objets
xi et xj de X si et seulement si le cercle de diamètre x i xj 22 ne contient aucun autre objet
de X :
∀xk ∈ X \ {xi , xj }, d(xi , xj )2 < d(xi , xk )2 + d(xj , xk )2
Propriété 1.6. Les familles de graphes définies précédemment vérifient, dans un espace
Euclidien, les relations d’inclusion suivantes (cf. [92]) :
N N G ⊆ M ST ⊆ RN G ⊆ GG ⊆ DT
Partant de l’un des graphes précédents, il s’agit alors de diviser l’ensemble des som-
mets du graphe, en plusieurs groupes “naturels”, par rapport aux relations entre objets,
caractérisées par les arêtes. On distingue deux approches majeures pour effectuer ce par-
titionnement.
La première approche fixe un nombre de clusters (k) et choisit un critère (e.g. nombre
d’arêtes entre les clusters). L’algorithme de clustering recherche alors une partition du
graphe en k ensembles équilibrés (homogènes en taille) de sommets et tels que le nombre
d’arêtes inter-clusters soit minimal. La complexité d’une telle méthode augmente de façon
exponentielle avec le paramètre k, c’est pourquoi la plupart des algorithmes proposent une
approche récursive de partitionnement en 2 telle que k = 2p [141].
La seconde approche propose de choisir un critère (e.g. le diamètre maximum des
clusters) puis d’effectuer le partitionnement de façon à obtenir le nombre optimal de
clusters satisfaisant à ce critère [18]. Il s’agira, par exemple, de partitionner le graphe
en un minimum de clusters de diamètre maximum fixé.
La représentation des données à l’aide de graphes et le clustering de graphes sont par-
ticulièrement adaptés à certaines applications telles que la recherche de communautés
d’intérêt dans des réseaux sociaux ou le regroupement de pages web. Ces situations
nécessitent de traiter des volumes importants de données ; les nombreuses heuristiques
d’approximation issues des recherches fondamentales en théorie des graphes prennent alors
une place importante dans ces applications.
46
Chapitre 1. État de l’art du Clustering
Γ externe : dans ce cas U (i, j) et V (i, j) correspondent aux distances entres les clusters
contenant les objets xi et xj , respectivement dans le schéma obtenu et dans la clas-
sification issue des connaissances externes (classification prédéfinie). L’optimum est
1 Pn−1 Pn 2
atteint pour deux schémas identiques, caractérisés par Γ = M i=1 j=i+1 V (i, j) .
Γ interne : cet indice permet d’évaluer l’adéquation entre un schéma C et la matrice de
dissimilarités D dont il est issu. Pour cela on pose U (i, j) = d(xi , xj ) (dissimilarité
entre les deux objets) et
1 si xi et xj appartiennent à des clusters différents dans C,
V (i, j) =
0 sinon.
On notera que le maximum est atteint pour le schéma C = {{x1 }, . . . , {xn }} (chaque
cluster est constitué d’un unique objet). En revanche, pour un nombre fixe de clus-
ters, l’optimum (maximum) caractérise un schéma constitué de clusters bien séparés
relativement à la matrice D.
Γ relatif : dans ce dernier cas U (i, j) correspond toujours à la distance entre les deux
objets xi et xj tandis que V (i, j) mesure la distance entre les clusters contenant
respectivement xi et xj . Pour deux objets appartenant à un même cluster, le produit
est nul (V (i, j) = 0). On cherche alors le schéma qui maximise ce critère, révélant
ainsi des clusters compacts et séparés.
Nous donnons ensuite un bref aperçu des indices complémentaires à l’indice Γ, pou-
vant être utilisés dans chacune des trois stratégies d’évaluation. Nous terminons par une
présentation de quelques indices destinés à évaluer des schémas flous et discutons des
adaptations possibles pour le traitement de schémas avec recouvrements. Ces indices sont,
pour la plupart, définis formellement en Annexe A.
47
1.7. Techniques d’évaluation du clustering
La principale différence entre les indices de Rand et de Jaccard est la prise en compte, ou
non, des non-liaisons correctes.
Une dernière mesure d’évaluation concerne la pureté des clusters obtenus dans C rela-
tivement à P. Cette mesure n’est, bien sûr, pas indépendante des indices déjà mentionnés
précédemment. La pureté d’un ensemble de clusters peut s’évaluer par la mesure d’entropie
telle que nous la définissons ici :
kC
X kP
X
|Ci |.ϕ(Ci )
E(C, P) = avec ϕ(Ci ) = − pj . log pj
n
i=1 j=1
48
Chapitre 1. État de l’art du Clustering
Cet indice prend ses valeurs entre -1 et 1 ; une valeur proche de 0 est significative d’une
forte similarité entre les deux matrices et donc d’un bon schéma de clustering.
où V (Ci ) désigne la variance d’un cluster Ci et x∗i le représentant (centroı̈de ou médoı̈de)
de Ci .
Ces deux indices se basent uniquement sur la matrice de (dis)similarité et peuvent être
utilisés aussi bien pour comparer des partitions ou des hiérarchies.
Pour terminer la présentation des critères relatifs, on peut mentionner d’autres indices
aidant à choisir à quel niveau, dans une hiérarchie, il est souhaitable d’extraire un schéma
24
La matrice cophénétique est définie par les valeurs PC (xi , xj ) (ultramétriques), où chaque valeur cor-
respond au premier niveau (similarité) de la hiérarchie, pour lequel les deux objets se retrouvent dans un
même cluster.
49
1.7. Techniques d’évaluation du clustering
50
Chapitre 1. État de l’art du Clustering
51
1.8. Conclusion sur le clustering
52
2
L’algorithme de clustering
PoBOC
Sommaire
2.1 Motivations et cadre général de l’algorithme . . . . . . . . . . . 54
2.2 Présentation de l’algorithme PoBOC . . . . . . . . . . . . . . . . 54
2.2.1 Présentation générale de PoBOC . . . . . . . . . . . . . . . . . . 54
2.2.2 Présentation formelle de l’algorithme PoBOC . . . . . . . . . . . 56
2.3 Discussion sur l’algorithme PoBOC . . . . . . . . . . . . . . . . 65
2.3.1 Rappel du processus global . . . . . . . . . . . . . . . . . . . . . 65
2.3.2 Positionnement de l’algorithme PoBOC . . . . . . . . . . . . . . 66
2.3.3 Traitement de grandes bases . . . . . . . . . . . . . . . . . . . . 68
2.4 Premières expérimentations . . . . . . . . . . . . . . . . . . . . . 69
2.4.1 Analyse de PoBOC sur la base de données Iris . . . . . . . . . . 69
2.4.2 Évaluation de PoBOC sur d’autres bases de données . . . . . . . 75
2.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
53
2.1. Motivations et cadre général de l’algorithme
54
Chapitre 2. L’algorithme de clustering PoBOC
P2
P3
P1
55
2.2. Présentation de l’algorithme PoBOC
Le schéma final peut être une partition stricte dans le cas où chaque objet n’a été affecté
qu’une seule fois.
1 X
dmoy (x, X) = d(x, xi ) (2.1)
(n − 1)
xi ∈X , xi 6=x
De même la notation dmoy (X, X) correspond à la dissimilarité moyenne entre deux objets
de X :
Xn X
2
dmoy (X, X) = d(xi , xj ) (2.2)
n.(n − 1)
i=2 j<i
Nous formalisons cette notion de “mutuellement voisins” par l’équation 2.3 (Figure
2.2) qui oblige chacun des deux objets à appartenir au voisinage (strict) de l’autre. Si on
note N (x) le voisinage d’un objet x, on a alors que :
2
La “lune d’influence” de deux objets xi et xj correspond à l’intersection des deux hyper-sphères centrées
respectivement en xi et xj et de rayon xi xj .
56
Chapitre 2. L’algorithme de clustering PoBOC
(xi , xj ) ∈ V ssi d(xi , xj ) < min{dmoy (xi , X), dmoy (xj , X)} (2.3)
8. Restreindre les pôles à leur partie propre par suppression des objets
partagés
9. Supprimer les éventuels pôles vides pour obtenir un ensemble P̃ = {P̃1 , . . . , P̃t }
de t pôles disjoints (t ≤ k)
57
2.2. Présentation de l’algorithme PoBOC
xi ∈ N (xj )
(xi , xj ) ∈ V ssi et (2.4)
xj ∈ N (xi )
Nous choisissons de délimiter le voisinage (strict) d’un objet xi par la dissimilarité
moyenne entre cet objet et les autres objets de X (rayon de voisinage de xi : dmoy (xi , X)).
Ainsi, on dira que xj est dans le voisinage de xi si et seulement si xi est en moyenne plus
similaire à xj qu’aux autres objets de X. Ce voisinage est défini par l’équation 2.5 :
La Figure 2.3 permet d’illustrer la contrainte d’existence d’une arête entre deux som-
mets. Les deux cercles délimitent les voisinages des deux objets ; la zone hachurée doit
contenir les deux objets pour qu’ils soient reliés.
d (xi,X)
moy
d (xj,X)
moy
xi xj
Fig. 2.3 – Contrainte sur l’existence d’une arête entre deux sommets dans G(X, V, d).
Enfin, chaque arête (xi , xj ) est valuée par la dissimilarité d(xi , xj ). Nous proposons,
dans la suite, un exemple de construction d’un graphe de dissimilarité.
Exemple 2.1. On considère un ensemble d’objets X = {x1 , . . . , x13 } défini dans l’es-
pace métrique (R2 , L2 ), où L2 désigne la distance Euclidienne. Ces points sont organisés
conformément à la Figure 2.4. On observe sur cette figure que l’objet x10 est situé en marge
des autres points, il peut être considéré comme un outlier. Les 12 autres points sont organisés
en trois blocs de tailles et de densités différentes. On peut considérer les groupes suivants :
– A = {x1 , . . . , x5 } groupe de grande taille3 et de densité forte,
– B = {x6 , . . . , x9 } groupe de taille moyenne et de densité faible,
– C = {x11 , . . . , x13 } groupe de petite taille et de forte densité.
On observe également que deux objets (x6 et x9 ) permettent de “joindre” respectivement les
blocs A, B et B, C, alors que les blocs A et C sont clairement séparés.
La Figure 2.5 présente le graphe de dissimilarité obtenu sur ce même exemple4 .
L’objet x10 est isolé par la méthode de construction du graphe. En effet, la contrainte
exprimée en 2.3 ne permet pas l’existence d’une arête entre x10 et les autres objets de X qui
sont, en moyenne, plus proches entre eux que de x10 .
3
On peut considérer ce groupe de taille importante puisqu’il contient plus d’un tiers des objets de X.
4
Pour une plus grande clarté, les valuations des arcs ne sont pas mentionnées sur ce schéma.
58
Chapitre 2. L’algorithme de clustering PoBOC
x10 x10
x8 x8
x7 x7
x9 x9
x6 x6
x11 x11
x12 x12
x13 x13
x3 x5 x3 x5
x1 x1
x2 x4 x2 x4
Fig. 2.4 – Organisation des objets de X dans Fig. 2.5 – Graphe de dissimilarité de X.
(R2 , L2 ).
Ces outliers isolés (notés x∗ ) sont tels que m=n-1 et D = max∗ dmoy (xi , X), où n désigne
xi 6=x
le nombre d’objets dans X.
Preuve
Soient X = {x1 , . . . , xn } un ensemble d’objets, d une mesure de dissimilarité sur X,
x∗ un objet de X et D = max∗ dmoy (xi , X)),
xi 6=x
59
2.2. Présentation de l’algorithme PoBOC
Il s’agit donc de l’objet en moyenne le plus dissimilaire aux autres (en particulier il pourra
s’agir d’un outlier). Notons que cette technique est celle utilisée dans l’algorithme divisif
hiérarchique DIANA [97] (cf.1.4) afin d’identifier l’objet le plus atypique d’un ensemble
d’objets pour ensuite séparer cet ensemble en deux clusters. Le cas échéant, cet objet
atypique peut donc être un outlier.
Un premier pôle P1 est généré à partir du sommet x̂1 correspondant dans le graphe de
dissimilarité. Nous préciserons, par la suite, la méthode de construction d’un pôle à partir
d’un sommet de départ. Les objets du pôle P1 sont alors stockés dans l’ensemble O qui
sera, par la suite, réactualisé après chaque pôle construit, afin de contenir l’ensemble des
objets déjà couverts par au moins un pôle.
60
Chapitre 2. L’algorithme de clustering PoBOC
x1
x4
x2
x3
Un nouvel objet est ensuite choisi de façon à “s’éloigner” le plus possible du premier
pôle P1 . En effet, P1 constituera, par la suite, un pôle d’attraction où seront affectés
des objets s’ils lui sont proches. On cherche alors à créer un second pôle d’attraction le
plus distant possible du premier. Ce nouvel objet xˆ2 et les objet sélectionnés qui suivront
x̂3 , . . . , x̂t seront alors les objets les plus dissimilaires à l’ensemble O :
Le processus de construction des pôles peut être stoppé par deux critères :
– soit l’ensemble O renferme tous les objets de X (O = X). Dans ce cas, tous les
objets de X sont couverts par au moins un pôle ; il n’y a donc pas lieu de chercher
une nouvelle zone inexplorée dans l’ensemble des données,
– soit le nouvel objet identifié n’est pas suffisamment distant des pôles déjà constitués.
Formellement, un objet candidat x̂j ne sera pas retenu si dmoy (x̂j , O) ≤ dmoy (X, X).
Le processus sera stoppé puisqu’il n’existe pas d’autre objet x ∈ X \ O tel que
dmoy (x, O) > dmoy (x̂j , O).
La figure 2.6 présente le nombre, l’ordre et le choix des objets sélectionnés comme sommets
de départ pour la construction des pôles sur notre exemple. Le premier objet choisi correspond
à l’outlier observé x10 puis les trois autres objets choisis appartiennent chacun à l’un des blocs
dégagés (A, B et C). Les objets choisis et leur nombre correspondent donc à l’organisation
observée préalablement. Nous verrons par la suite dans cet exemple, que le processus de
sélection d’objets est stoppé par la première condition d’arrêt, autrement dit : O = X.
61
2.2. Présentation de l’algorithme PoBOC
x2
x6
x5
x3
x4
62
Chapitre 2. L’algorithme de clustering PoBOC
1. Initialisation : P = {x̂},
2. Construire le voisinage de P dans G(X, V, d) :
N (P ) = {x ∈ X|∀ xi ∈ P, (x, xi ) ∈ V }
6. Retourner le pôle P .
Sur notre exemple (graphe figure 2.5), nous rappelons que les objets sélectionnés sont :
x10 , x12 , x1 et x8 :
– Partant de P1 = {x10 }, le voisinage de P1 est l’ensemble vide (car x10 est de degré nul
dans G(X, V, d)). Il n’y a donc pas d’ajout possible, construction-pole(x 10 , G(X, V, d))
retourne alors : P1 = {x10 } ;
– Partant de P2 = {x12 }, le voisinage de P2 est {x9 , x11 , x13 } (tous reliés à x12 ) ; le
plus proche (x11 ) est ajouté (P2 = {x11 , x12 }) ; le voisinage est alors réduit à {x9 , x13 }
(tous deux reliés à x11 et x12 ) ; le plus proche (x13 ) est ajouté (P2 = {x11 , x12 , x13 })
le voisinage est alors réduit à {x9 } (relié à x11 , x12 et x13 ) ; x9 est finalement ajouté et
le voisinage de P2 devient vide. construction-pole(x12 , G(X, V, d)) retourne alors :
P2 = {x9 , x11 , x12 , x13 } ;
– Partant de P3 = {x1 }, de la même façon, construction-pole(x1 , G(X, V, d)) re-
tourne : P3 = {x1 , x2 , x3 , x4 , x5 , x6 } ;
– Partant de P4 = {x8 }, construction-pole(x8 , G(X, V, d)) retourne : P4 = {x6 , x7 , x8 ,
x9 } ;
Les pôles doivent être distants les uns des autres. Ce critère de “séparation” fait partie
de la définition intuitive que nous avons donné initialement. En effet, plus les pôles seront
séparés, moins il y aura d’ambiguı̈tés, par la suite, pour assigner les objets aux pôles.
Or, par la méthode de construction des pôles, décrite en figure 2.8, ces derniers peuvent
posséder certains éléments en commun. Le partage d’objets entre les pôles va à l’encontre
du critère de séparation développé précédemment, nous choisissons alors de rectifier ces
pôles en supprimant les objets partagés. Ces objets seront, ensuite, assujettis à l’étape de
multi-affectation. On note P̃i la restriction du pôle Pi à ses objets caractéristiques.
La figure 2.9 présente la disposition des pôles P˜1 , . . . , P˜4 issus de la restriction de P1 , . . . , P4 .
Une nouvelle fois, on s’aperçoit sur cet exemple que les 4 pôles obtenus correspondent effec-
tivement aux objets extrêmes de chacun des blocs observés initialement.
63
2.2. Présentation de l’algorithme PoBOC
P1
x10
P4
x8
x7
x9
x6
x11 P2
x12
x13
P3
x3 x5
x1
x2 x4
Pour un objet xi , la procédure d’affectation est décrite en figure 2.10. Elle consiste
d’abord à ordonner les pôles par valeur d’appartenance décroissante, via la fonction bi-
jective Φ. Ainsi Φ(1) correspond à l’indice du pôle le plus “proche” de xi , Φ(2) à l’indice
du deuxième pôles le plus proche et ainsi de suite. Une fois l’ordonnancement effectué, xi
est affecté systématiquement au pôle dont il est le plus proche. Pour que xi soit affecté
au k ième pôle le plus proche, il faut qu’il ait été affecté aux k − 1 précédents, et que la
valeur d’appartenance de xi avec ce pôle P̃Φ(k) soit supérieure à la valeur attendue, si
l’on considère une décroissance linéaire entre les deux pôles immédiatement plus proche
et moins proche.
Considérons par exemple l’affectation simple ou multiple de l’objet x9 dans notre exemple.
On calcule les valeurs d’appartenance de x9 à chacun des pôles et on obtient : u(x9 , P̃1 ) = 0.2,
u(x9 , P̃2 ) = 0.81, u(x9 , P̃3 ) = 0.38 et u(x9 , P̃4 ) = 0.73. L’ordonnancement des pôles produit
alors la fonction Φ telle que Φ(1) = 2, Φ(2) = 4, Φ(3) = 3 et Φ(4) = 1.
– x9 est affecté au cluster C2 lié au pôle P̃2 .
– La figure 2.11 schématise les valeurs d’appartenance décroissantes de x9 . Sur ce schéma,
on observe la décroissance linéaire autour du pôle P̃4 . Ceci se matérialise par le segment
64
Chapitre 2. L’algorithme de clustering PoBOC
en pointillés se trouvant sous la ligne brisée. On peut donc observer que la valeur d’ap-
partenance de x9 au pôle P̃4 (0.73) est supérieure à la valeur que l’on obtiendrait si l’on
considérait cette décroissance linéaire entre P̃2 et P̃3 (0.59). x9 vérifie les conditions
d’affectation au cluster C4 correspondant au pôle P̃4 . Il est donc affecté à ce cluster.
– En revanche, ces conditions ne sont pas vérifiées pour le pôle P̃3 : la valeur d’appartenance
u(x9 , P̃3 ) = 0.38 est inférieure à la valeur que l’on obtiendrait en considérant une
décroissance linéaire entre P̃4 et P̃1 (0.47). x9 n’est donc pas affecté à ce cluster.
– Puisque x9 n’a pas été affecté à l’étape précédente, il ne peut plus être affecté à d’autres
clusters.
La figure 2.12 présente le schéma de clustering final obtenu par l’algorithme PoBOC sur
notre exemple. On peut donc observer que les 4 clusters construits correspondent bien aux 4
blocs attendus avec la particularité que les objets x6 et x9 sont partagés par deux blocs “assez
proches”.
Cette méthode d’affectation permet d’éviter l’utilisation d’un même seuil d’affectation
pour tous les couples : (objet, pôle).
Dans le schéma de la figure 2.13, nous rappelons le processus global de clustering avec
l’algorithme PoBOC. Nous retrouvons dans ce schéma les trois grandes étapes pré-citées
de construction d’un graphe de dissimilarité, construction de pôles et multi-affectations
des objets aux pôles. Observons alors que la matrice de dissimilarité entre objets constitue
la seule donnée en entrée de l’algorithme (pas d’autres paramètres) qui produit alors un
ensemble de clusters non-disjoints.
65
2.3. Discussion sur l’algorithme PoBOC
val. appartenance
C1
x10
0.81 C4
0.8
0.73
x8
0.6
0.59
x7
0.47
x9
0.4 x6 C2
0.38 x11
x12
x13
0.2
0.20
C3
x3 x5
x1
Poles x2 x4
P2 P4 P3 P1
66
Chapitre 2. L’algorithme de clustering PoBOC
Construction du graphe de
dissimilarité
0.3 0.4 0.2
0.1
0.4 0.3
0.2 0.6
Matrice de
dissimilarités
Recherche des
x 1, x 2, , xi, , xj, , xn
67
2.3. Discussion sur l’algorithme PoBOC
Construction des pôles : (itération des étapes 3 à 7) Chaque pôle est généré à partir
d’un sommet. Ce sommet est sélectionné parmi les n − |O| objets non-couverts, en
calculant la dissimilarité moyenne dmoy (x, O). La sélection du sommet nécessite alors
(n−|O|).|O| comparaisons ; la complexité de cette étape est donc majorée par O(n 2 ).
Ensuite, la construction d’une clique à partir de ce sommet est, au pire cas, également
de complexité quadratique sur le nombre n d’objets. Ce pire cas correspond à un
graphe de dissimilarité complet, ce qui ne correspond pas à une situation réelle. Ces
deux étapes successives de choix d’un sommet de départ et de construction d’un
pôle sont répétées k fois. La complexité de cette super-étape est donc majorée par
O(k.n2 ).
Restriction des pôles : (étape 8) La restriction des pôles consiste à rechercher (parmi
les k pôles) et à supprimer les objets (parmi n) qui apparaissent dans plusieurs pôles.
Cette étape nécessite donc k.n comparaisons (complexité en O(k.n)).
Multi-affectations des objets aux pôles : (étape 11) Cette dernière étape implique
de considérer successivement les n objets, à calculer pour chaque objet ses k valeurs
d’appartenance aux pôles, puis à comparer ces k valeurs pour l’affecter. Le calcul
des valeurs d’appartenance pour un objet est de complexité linéaire sur le nombre
d’objets, et l’étape d’affectation est de complexité linéaire sur le nombre de pôles.
Ainsi, la complexité globale de cette étape est majorée par O(n2 ).
68
Chapitre 2. L’algorithme de clustering PoBOC
69
2.4. Premières expérimentations
(a) (b)
(c) (d)
Fig. 2.14 – Observations des pôles constitués par PoBOC sur la base de données Iris selon
les coordonnées : x, y, z (a), x, y, t (b), x, z, t (c) et y, z, t (d).
70
Chapitre 2. L’algorithme de clustering PoBOC
La figure (c), entre autre, permet de visualiser clairement les caractéristiques des pôles
générés. D’abord, les trois pôles correspondent à des ensembles d’objets séparés, ce qui
vérifie le premier critère de la définition intuitive de pôles. Enfin, on note que ces pôles
n’ont pas tous la même densité ; en effet le deuxième pôle généré (désigné par les “×”) est
constitué d’objets plus rapprochés que les deux autres pôles. La densité des pôles reflète
la densité locale de la région de l’espace dans laquelle ils sont situés. Cette observation est
satisfaisante, par rapport au deuxième critère caractéristique des pôles.
Finalement, on note sur ces figures, que le premier et le troisième pôle sont assez
proches. On peut alors s’attendre à ce que les clusters issus de ces deux pôles possèdent
plusieurs objets en commun, et que le cluster issu du second pôle partage peu d’objets
avec les autres.
Tab. 2.1 – Analyse des clusters obtenus par PoBOC sur la base de données Iris.
Le tableau 2.1 introduit une première analyse des clusters obtenus par PoBOC. Chaque
ligne correspond à un cluster et les informations sur sa taille, sur le nombre d’objets n’ap-
partenant qu’à ce cluster et sur ses intersections avec les 2 autres clusters, sont répertoriées.
Par exemple, le cluster n˚1 renferme 39 objets dont 29 sont exclusivement dans ce cluster.
Il s’intersecte avec les clusters n˚2 et n˚3 et ces intersections sont respectivement de taille
4 et 10.
Par ce tableau, on confirme les hypothèses formulées précédemment : les clusters n˚1
et n˚3 possèdent d’avantage d’objets en commun (10) que les clusters n˚1 et n˚2 ou n˚2
et n˚3. Globalement, on observe que les clusters produits par PoBOC peuvent être de
tailles variées (de 39 à 71 objets) avec plus ou moins d’intersections (de 5% à plus de 25%
d’objets partagés).
On souhaite à présent évaluer la qualité du schéma obtenu par PoBOC sur la base Iris.
Pour cela, nous allons analyser ce schéma d’abord en le comparant à la classification de
référence puis en évaluant sa qualité intrinsèque. Pour ces deux stratégies d’évaluation nous
observerons trois aspects du schéma issu de PoBOC : le nombre de clusters, la pertinence
des clusters et la qualité des intersections entre clusters. L’algorithme des k-moyennes sera
alors utilisé comme base de comparaison pour l’ensemble de l’étude.
Classes
setosa versicolor virginica
Clusters
n˚1 0 4 35
n˚2 50 4 0
n˚3 0 50 21
71
2.4. Premières expérimentations
La table de contingence (table 2.2) indique que chaque cluster représente une classe
différente d’iris. La première classe d’iris est plutôt bien retrouvée puisque le cluster n˚2
contient toutes les instances de cette classe plus quelques instances (4) de la seconde. Le
cluster n˚1 correspond à une sous-partie de la troisième classe d’iris et le cluster n˚3
renferme la totalité des iris de la deuxième classe plus le complément de la troisième.
Outre le fait que PoBOC propose un schéma en trois clusters, conformément à la
classification de référence, l’analyse de la table de contingence met en évidence que ces
trois clusters correspondent assez bien aux trois classes attendues. Cette “correspondance”
est alors quantifiée dans le tableau 2.3 par des indices d’évaluation externe.
Dans ce tableau, trois schémas de clustering sont comparés (trois premières lignes) :
l’algorithme des k-moyennes8 pour un nombre de clusters identique à PoBOC, la version
“stricte” de l’algorithme PoBOC9 et l’algorithme PoBOC original. La version stricte de
PoBOC est utile, d’une part pour comparer des schémas de même nature avec l’algo-
rithme des k-moyennes (schémas strictes), et d’autre part pour observer l’influence des
intersections entre clusters sur leur qualité.
Les deux indices externes utilisés sont :
– l’adaptation de la statistique de Huberts (Γ) pour comparer un schéma de clustering
et une classification préétablie. Cet indice compare, pour chaque paire d’objets, la
distance entre ces deux objets dans le schéma de clustering (distance entre les clusters
respectifs) et dans la classification préétablie (distance entre les classes respectives).
L’indice est alors maximum pour un schéma de clustering identique à la classification.
– Considérant que deux objets sont liés s’ils appartiennent à un même cluster, la
statistique de Rand compte la proportion de liaisons ou non-liaisons “correctes” dans
le schéma de clustering. Une liaison est “correcte” si les deux objets appartiennent à
la même classe de référence. Une non-liaison est “correcte” si les deux objets (non-
liés) appartiennent à des classes différentes. La valeur maximale 1.0, sur cet indice,
indique que le schéma de clustering est identique à la classification.
Les mesures reportées dans le tableau indiquent que le schéma proposé par la version
stricte de l’algorithme PoBOC est équivalent aux meilleures partitions obtenues par k-
moyennes. Les intersections entre clusters induisent naturellement une perte de qualité
des clusters. Cette perte reste cependant raisonnable puisque la pseudo-partition obtenue
par PoBOC est comparable aux schémas stricts résultant des k-moyennes, sur les deux
indices.
8
Les résultats présentés correspondent à des moyennes sur 1,000 itérations de l’algorithme k-moyennes
avec différentes initialisations.
9
La version stricte diffère de l’algorithme original par une étape d’affectations simples (au plus proche
pôle) au lieu de l’étape de multi-affectations.
72
Chapitre 2. L’algorithme de clustering PoBOC
Enfin, la dernière colonne du tableau 2.3 donne une indication sur la correspondance
entre les schémas de clustering et la matrice des distances, via la version “interne” de Γ.
On observe alors que les schémas les plus représentatifs de l’information contenue dans la
matrice des distances, sont ceux obtenus par PoBOC. Enfin, la dernière ligne du tableau
précise que la classification préétablie ne correspond pas nécessairement à la matrice des
distances. Cette dernière observation nous incite à compléter l’évaluation des schémas de
clustering indépendamment de la classification proposée.
0.17 0.8
2.5
Inertie inter-clusters
Inertie intra-cluster
Huberts Statistic
0.165 0.7
0.16 2 0.6
0.155 0.5
1.5
0.15 0.4
0.145 0.3
1
0.14 0.2
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
Nombre de clusters Nombre de clusters
73
2.4. Premières expérimentations
Les trois indices précédents sont de nouveaux employés pour comparer les schémas
obtenus par les différentes méthodes de clustering :
Partitionnements stricts : Les schémas sans recouvrement, obtenus par k-moyennes et
par la version stricte de PoBOC, sont comparés.
Partitionnements avec recouvrements : Une variante de k-moyennes proposant des
clusters avec recouvrements est proposée comme élément de comparaison avec l’algo-
rithme PoBOC. Cette variante est obtenue en remplaçant l’étape de réallocation ori-
ginale de k-moyennes par une étape de réallocation multiple identique à la procédure
de multi-affectations utilisée dans PoBOC.
Les résultats de cette étude sont rapportés dans le tableau 2.4 et complétés par le
coefficient de partition qui mesure l’importance des recouvrements entre clusters : un
coefficient égal à 1.0 correspond à un schéma strict tandis qu’une valeur égale à t (nombre
de clusters) correspond à un taux de recouvrement maximum (tous les clusters sont alors
identiques et renferment l’ensemble des objets).
Les mesures confirment les conclusions précédentes, à savoir la présence de clusters plus
compacts avec PoBOC (inertie intra-classe plus faible) et séparés de façon comparable
(inertie inter-clusters), dans le cas des schémas stricts . Ces deux premières lignes du
tableau montrent finalement que les clusters générés par PoBOC sont meilleurs que ceux
générés par k-moyennes (Γ plus élevé).
Enfin, les deux lignes inférieures nous informent sur la quantité et la qualité des
recouvrements produits par chacune des deux méthodes de clustering. La stratégie de
construction des pôles, proposée dans PoBOC apparaı̂t alors décisive puisque les inter-
sections induites par PoBOC sont raisonnables comparativement à la version modifiée de
k-moyennes : PoBOC produit beaucoup moins d’intersections (coef. partition égal à 1.09
contre 1.66) et ces intersections ne bouleversent pas la qualité globale des clusters (Γ du
même ordre que k-moyenne original).
En conclusion de cette analyse de PoBOC sur la base Iris, l’algorithme propose des
résultats satisfaisants et sensiblement meilleurs que l’algorithme de référence “k-moyennes”,
tant du point de vue du nombre de clusters que de leur qualité et des intersections entre
clusters. La section suivante rapporte les résultats obtenus sur d’autres bases de données
de tailles et de natures variées.
74
Chapitre 2. L’algorithme de clustering PoBOC
Pour compléter l’analyse précédente, nous avons évalué l’algorithme PoBOC selon les
mêmes indices sur quatre autres bases de données : Zoology, Wine, Soybean et Annealing
également issues de l’UCI repository [122]. Ces bases ont été choisies de façon à évaluer
les performances de l’algorithme dans diverses situations :
– le nombre d’objets varie de 101 (Zoology) à 898 (Annealing),
– le nombre de classes dans la classification de référence varie de 3 (Wine) à 19 (Soy-
bean),
– les variables descriptives sont de différentes natures : numériques (Wine), numériques
et symboliques (Annealing) ou uniquement symboliques (Zoology, Soybean).
Cette dernière caractéristique implique l’utilisation de mesures de dissimilarité adaptées :
en l’absence de variables symboliques nous continuons à utiliser la distance euclidienne.
Sinon, nous évaluons la proximité entre deux objets par la mesure proposée par Martin et
Moal [120] et présentée dans le chapitre précédent.
Pour chacune des quatre bases de données, le schéma proposé par PoBOC est confronté,
en terme de nombre de clusters, d’abord au nombre de classes dans la classification
préétablie, ensuite au schéma issu de l’algorithme AutoClass et enfin aux schémas op-
timaux détectés sur les tracés des indices d’évaluation indépendants (ou relatifs). Cette
étude comparative est présentée dans le tableau 2.5.
Tab. 2.5 – Recherche du nombre optimal de clusters sur les bases : Zoology, Wine, Soybean
et Annealing.
On observe alors que les deux algorithmes PoBOC et AutoClass sont rarement en ac-
cord sur le nombre optimal de clusters, PoBOC proposant toujours davantage de clusters.
Sur la base de la classification de référence, c’est l’algorithme AutoClass qui semble propo-
ser les schémas adéquats (excepté pour la base Soybean). En revanche, lorsqu’on observe
les schémas optimaux issus d’une analyse indépendante de toute connaissance extérieure,
on retrouve systématiquement un schéma équivalent au résultat de PoBOC. Les tracés,
à l’origine des valeurs présentées dans la dernière colonne du tableau, sont présentés en
annexe B.
Le nombre de clusters proposé par PoBOC correspond donc à une organisation réelle et
attestée des données. Si ce nombre semble parfois un peu élevé (par exemple pour la base
Annealing), notons qu’il est préférable de proposer trop de clusters (faciles à fusionner par
la suite) que trop peu (plus difficiles à diviser).
75
2.4. Premières expérimentations
Statistique de Rand
Méthode Zoology Wine Soybean Annealing
k-moyennes 0.839±0.051 0.716±0.015 0.898±0.009 0.425±0.005
PoBOC sans recouvts 0.927 0.693 0.919 0.423
PoBOC 0.911 0.617 0.914 0.428
76
Chapitre 2. L’algorithme de clustering PoBOC
Inertie intra-cluster
Méthode Zoology Wine Soybean Annealing
k-moyennes 1.432±0.613 0.957±0.175 4.834±0.436 3.307±1.013
PoBOC sans recouvts 0.926 0.746 5.240 2.440
PoBOC 1.272 6.142 6.344 3.722
Inertie inter-clusters
Méthode Zoology Wine Soybean Annealing
k-moyennes 0.261±0.038 0.213±0.073 1.158±0.402 0.342±0.095
PoBOC sans recouvts 0.233 0.299 1.066 0.451
PoBOC 0.258 0.239 1.074 0.437
Coefficient de partition
Méthode Zoology Wine Soybean Annealing
k-moyennes 1.00 1.00 1.00 1.00
PoBOC sans recouvts 1.00 1.00 1.00 1.00
PoBOC 1.08 1.38 1.15 1.21
cette observation est vérifiée sur les bases Zoology, Wine et Annealing. Sur ce dernier
jeu de données, la différence d’inertie intra-cluster est sensible et s’accompagne d’une dis-
persion entre clusters également meilleure pour le schéma issu de PoBOC. Cette double
tendance est aussi vérifiée sur la base Wine pour laquelle les clusters proposés par PoBOC
sont plus compacts et mieux séparés qu’avec k-moyennes. Sur les bases Zoology et Soy-
bean, k-moyennes induit des schémas de partitionnement aux clusters assez bien séparés,
contrairement à PoBOC.
Notons que le passage d’un schéma strict à un schéma avec recouvrements, via PoBOC,
implique systématiquement une augmentation de l’inertie intra-cluster. Ceci s’explique par
l’élargissement des clusters, conséquence des multi-affectations. En revanche, l’inertie inter-
clusters n’en sort pas nécessairement diminuée. En effet, sur les bases Zoology et Soybean,
les recouvrements permettent d’améliorer la dispersion entre clusters qui s’explique non
pas par l’éloignement des clusters entre eux, mais par l’éloignement des clusters par rapport
au centre de gravité de l’ensemble des objets.
Le dernier indice (coefficient de partition) confirme l’idée que la qualité d’une pseudo-
partition s’évalue notamment par la quantité de recouvrements entre clusters. Ces intersec-
tions doivent rester “raisonnables” et l’excès peut engendrer une dégradation démesurée
du schéma. C’est le cas pour le clustering proposé sur la base Wine : la valeur élevée 10 de
ce coefficient nuit gravement à la qualité des clusters et notamment à leur compacité.
10
Cette valeur doit être considérée relativement au faible nombre de clusters (4). Ainsi, un coefficient
77
2.5. Conclusion
2.5 Conclusion
Dans ce chapitre, nous avons présenté l’algorithme PoBOC (Pole-Based Overlapping
Clustering), notamment en détaillant les trois principales étapes de traitement : la construc-
tion d’un graphe de dissimilarité, la construction des pôles et l’affectation multiple des
objets à ces pôles. Nous avons montré que PoBOC est peu sensible à la présence d’out-
liers dans les données et qu’il génère des schémas de clustering comportant des classes
de densité variable. Enfin, la définition d’un ensemble de “pôles” est fondamentale, puis-
qu’elle débouche sur le choix d’un nombre approprié de clusters et permet de déterminer
précisément les affectations des objets restant.
Dans un deuxième temps, nous avons tenté d’analyser le traitement effectué par Po-
BOC sur un ensemble réel de données. Sur la base Iris, nous avons pu visualiser les proces-
sus de sélection d’objets, de construction des pôles et d’affectation des objets restants ; ces
observations ont confirmé les caractéristiques attendues des pôles (ensembles homogènes
et séparés). Cette évaluation visuelle a été complétée par une validation qualitative des
schémas générés par PoBOC, relativement aux trois stratégies d’évaluation : externe, in-
terne et relative. Il en résulte que PoBOC obtient globalement (sur l’ensemble des bases
de données testées) de meilleurs résultats sur les tests externes et internes, que le schéma
moyen obtenu par un algorithme du type k-moyennes. Sur l’évaluation relative, PoBOC
obtient des résultats au moins équivalents, malgré la présence de recouvrements entre
clusters.
Cette première phase expérimentale aide à cerner le fonctionnement ainsi que les per-
formances de l’algorithme PoBOC. Cependant, elle n’est pas adaptée pour rendre compte
de l’intérêt et de l’importance de construire des classes non-disjointes d’objets. Puisqu’il
n’existe pas de mesure d’évaluation adaptée à ce type de schéma, nous proposons dans
les chapitres suivants, de quantifier l’apport des intersections dans des applications qui
utilisent le clustering comme outil de traitement. Pour chaque application, nous tâcherons
de cerner les avantages ainsi que les limites liés à l’utilisation de pseudo-partitions par
l’appréciation du résultat final de l’application (pouvoir prédictif des règles apprises,
précision des classifieurs, etc.).
de partition de 1.38 pour un schéma à 4 clusters indique un taux de recouvrements bien supérieur à un
schéma à 17 clusters, ayant pour coefficient de partition 1.21, tel que le schéma obtenu sur Annealing.
78
3
Apprentissage de règles de
classification par regroupement
d’objets
Sommaire
3.1 Introduction à l’apprentissage supervisé . . . . . . . . . . . . . . 80
3.2 Apprentissage d’un ensemble de règles . . . . . . . . . . . . . . 80
3.2.1 Le système AQ [123] . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.2.2 Le système CN2 [24] . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.2.3 Le système pFOIL [150] . . . . . . . . . . . . . . . . . . . . . . . 84
3.2.4 Le système RISE [48] . . . . . . . . . . . . . . . . . . . . . . . . 84
3.3 Motivation de l’approche par regroupement . . . . . . . . . . . 85
3.3.1 Le problème du choix d’un “bon” sélecteur . . . . . . . . . . . . 85
3.3.2 Utilisation du clustering dans un contexte supervisé . . . . . . . 86
3.3.3 L’approche générale RuLe-Clust . . . . . . . . . . . . . . . . . . 87
3.3.4 Vers un pseudo-partitionnement des classes . . . . . . . . . . . . 88
3.4 Le système RuLe-Clust . . . . . . . . . . . . . . . . . . . . . . . . 88
3.4.1 Stratégie générale du classifieur . . . . . . . . . . . . . . . . . . . 90
3.4.2 Test d’existence d’une règle unique . . . . . . . . . . . . . . . . . 90
3.4.3 Algorithme de construction d’une règle . . . . . . . . . . . . . . . 92
3.4.4 Variantes relatives à l’algorithme de clustering utilisé . . . . . . . 92
3.5 Évaluation du système RuLe-Clust . . . . . . . . . . . . . . . . . 95
3.5.1 Présentation de l’étude . . . . . . . . . . . . . . . . . . . . . . . . 95
3.5.2 Évaluation du principe général de décomposition . . . . . . . . . 96
3.5.3 Évaluation de l’algorithme PoBOC . . . . . . . . . . . . . . . . . 97
3.5.4 Influence d’une pseudo-partition . . . . . . . . . . . . . . . . . . 99
3.5.5 Comparaison avec d’autres classifieurs . . . . . . . . . . . . . . . 100
3.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
79
3.1. Introduction à l’apprentissage supervisé
où la condition (aussi appelée complexe ou hypothèse) est une conjonction de sélecteurs.
Un sélecteur est de la forme ai #v avec ai un attribut de A, v appartient au domaine
de valeurs de ai , et # est un opérateur de l’ensemble {=, 6=, <, >, ≤, ≥}. On dira qu’un
complexe (resp. un sélecteur) couvre un exemple, si le complexe (resp. le sélecteur) est vrai
pour cet exemple. Ainsi, le complexe vide (conjonction de zero sélecteur) couvre tous les
exemples de l’ensemble E.
La classe prédite par la règle correspond à la classe majoritaire de l’ensemble des
exemples couverts par la condition de la règle. Finalement, la disjonction des règles ap-
prises permet de couvrir l’ensemble des données d’entraı̂nement. La prédiction de la classe
d’un nouvel exemple e0 est effectuée par la recherche d’une (ou plusieurs) règle(s) dont la
condition couvre e0 .
1
Instance-Based Learning
2
Rule-Based Learning
3
L’extension à l’apprentissage de règles en logique du premier ordre est étudiée dans le chapitre 4.
80
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
Un ensemble de règles de classification peut être généré par différentes stratégies d’ap-
prentissage, comme par exemple, les algorithmes génétiques, les arbres de décision ou les
algorithmes de couverture séquentielle ou simultanée.
Les algorithmes génétiques, tels que le système GABIL [39], permettent d’ap-
prendre des règles, codées sous forme d’une chaı̂ne de bits. Par exemple, l’ensemble suivant
(constitué de deux règles) :
10
| 111
{z 10} 01
| 110
{z 01}
R1 R2
Cette représentation est ensuite facilement utilisée par un opérateur génétique, pour
effectuer successivement des modifications (croisement, mutation, etc.), contrôlées par une
fonction de qualité, basée sur la précision du classifieur dérivé de l’ensemble de règles
apprises.
Un arbre de décision peut également être interprété sous forme d’un ensemble de
règles. ID3 [148] ou C4.5 [149] sont d’éminents exemples d’algorithmes de classification par
construction d’arbres de décision. De façon très synthétique, il s’agit de considérer initia-
lement l’ensemble des exemples E (racine), de rechercher l’attribut a∗ le plus discriminant
par rapport aux classes attendues, puis de générer autant de sous arbres que de modalités
pour a∗ . Récursivement, chaque sous-arbre est ensuite considéré indépendamment, jusqu’à
aboutir à des sous-ensembles de données (feuilles) relativement purs.
Dans l’exemple présenté en figure 3.1, les données d’entraı̂nement sont constituées de
cinq exemples étiquetés par l’une des classes + ou − et décrits (tableau de gauche) sur
deux attributs symboliques : forme et couleur. L’arbre de décision proposé (partie droite)
peut donc être traduit en terme de règles, en considérant chaque chemin allant de la racine
à une feuille. De l’exemple, on extrait les quatre règles suivantes :
R1 : Si f orme = rectangle ∧ couleur = rouge alors classe = −
R2 : Si f orme = rectangle ∧ couleur = bleu alors classe = +
R3 : Si f orme = rectangle ∧ couleur = vert alors classe = −
R4 : Si f orme = cercle alors classe = +
81
3.2. Apprentissage d’un ensemble de règles
{e1,e2,e3,e4,e5}
[3+,2−]
forme
82
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
Précisons que l’ETOILE est construire autour d’un exemple positif e+ , on considérant
initialement le complexe vide (le plus général). Ensuite, un exemple négatif e− est sélectionné,
puis toutes les spécialisations possibles du complexe initial sont envisagées, de façon à re-
jeter e− et couvrir toujours e+ . Ce processus de spécialisation est répété jusqu’à ce que
tous les exemples négatifs soient rejetés.
Dans le système AQ, chaque règle générée dépend du choix de l’exemple à partir duquel
l’“étoile” est construite. La difficulté est alors de choisir les exemples pertinents.
83
3.2. Apprentissage d’un ensemble de règles
spécifiques. Seuls les meilleurs sont retenus pour une nouvelle étape de spécialisation.
Finalement, on arrête le processus lorsque l’un des complexes obtenus est discrimi-
nant pour l’une des classes (relativement à un critère spécifié par l’utilisateur, cf.
annexe C).
CN2 produit alors une liste de décision, c’est à dire une liste de règles, ordonnées
suivant l’ordre dans lequel elles ont été générées. Cet ordre correspond en quelque sorte à
un ordre de pertinence, permettant de confronter un nouvel exemple aux règles pertinentes
d’abord.
84
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
Pourtant, il apparaı̂t clairement que deux règles suffisent à couvrir l’ensemble des
instances positives (e.g. les complexes x1 < 4 ∧ x2 < 3 et x1 > 2 ∧ x2 > 3). Ces deux
règles correspondent chacune à la couverture d’une sous-classe de la classe cible. On note
également que ces sous-classes sont constituées d’exemples “proches”, c’est à dire à valeurs
assez similaires sur les mêmes attributs. Dans la suite de cette section, nous proposons
une solution (partielle) au problème de choix d’un “bon” sélecteur. Il s’agit d’apporter une
connaissance supplémentaire concernant l’organisation interne d’une classe en sous-classes.
Cette connaissance - pouvant être apprise par une méthode de classification non-supervisée
- permettra de considérer différents sous-problèmes correspondant chacun à la couverture
d’une sous-classe de la classe cible.
85
3.3. Motivation de l’approche par regroupement
x2
x1<2 x1>4
5
1 2 3 4 5 x1
86
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
4 4 4
3 3 3
E1+
2 2 2
1 1 1
1 2 3 4 5 x1 1 2 3 4 5 x1 1 2 3 4 5 x1
87
3.4. Le système RuLe-Clust
Parmi ces sélecteurs, x2 < 3 est celui qui rejette le plus d’exemples négatifs (4 exemples
négatifs rejetés sur 5), il est donc choisi pour spécialiser le complexe. Parmi les sélecteurs
restant, deux sélecteurs permettent de rejetter le dernier exemple négatif, x1 < 3 et x1 < 4.
Par défaut nous choisissons d’ajouter le sélecteur le plus général. La règle apprise est donc :
R1 : Si x2 < 3 ∧ x1 < 4 alors classe = +
Par un procédé analogue, le sous-problème P2 permet de dégager la règle suivante :
R2 : Si x2 > 3 ∧ x1 > 2 alors classe = +
88
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
x2 x2
8 8
E2+
7 7 R2
6 6
5 5
4 E1+ 4 R1
3 3
2 2
1 1
1 2 3 4 5 6 7 8 x1 1 2 3 4 5 6 7 8 x1
x2 x2
8 8
E2+
7 7 R2
6 6
5 5
4 E1+ 4 R1
3 3
2 2
1 1
1 2 3 4 5 6 7 8 x1 1 2 3 4 5 6 7 8 x1
89
3.4. Le système RuLe-Clust
x2 x2
8 8
E2+
7 7 R2
6 6
5 5
4 E1+ 4 R1
3 3
2 2
1 1
1 2 3 4 5 6 7 8 x1 1 2 3 4 5 6 7 8 x1
construction d’une règle. Nous terminons en précisant les variantes envisagées pour l’uti-
lisation de différentes méthodes de clustering.
90
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
Procédure RuLe-Clust(E) :
Pour chaque ci (i = 1 . . . p) :
Retourner R.
Fonction COUVRIR-RC(E + , E − , S) :
Si EXISTE-REGLE-UNIQUE(E + , E − ) alors
Appeler CONSTRUIRE-REGLE(E + , E − ) pour générer une règle r,
Retourner r,
Sinon
Appeler DECOMPOSE(E + , E − , S) pour générer k clusters E1+ , . . . , Ek+ ,
Soit R1 la disjonction des règles associées aux groupes pour lesquels il
existe
une règle,
Soit E 0 l’ensemble des exemples positifs non-couverts par R1 ,
Soit R2 =COUVRIR-RC(E 0 , E − , S),
Retourner la disjonction R1 ∨ R2 .
91
3.4. Le système RuLe-Clust
Procédure EXISTE-REGLE-UNIQUE(E + , E − ) :
certaines propriétés (au moins celles constituant le complexe de la règle). Ces similitudes
justifient donc leur appartenance commune à un cluster.
Par ailleurs, le test de couverture, tel qu’il est présenté en figure 3.9, est de complexité
sensiblement inférieure à l’algorithme de construction d’une règle. Ainsi, plutôt que de
lancer un processus d’apprentissage de règle, pouvant ne pas aboutir, nous proposons de
tester préalablement, et rapidement, l’existence de cette règle. Ce test consiste à générer
tous les sélecteurs possibles (de la forme attribut#valeur), si la conjonction de l’ensemble
des sélecteurs rejette tous les exemples négatifs, alors il existe une règle discriminante.
92
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
Procedure CONSTRUIRE-REGLE(E + , E − ) :
Retourner COMPLEXE.
Comme nous l’avons observé dans le chapitre 1, l’algorithme des k-moyennes ainsi que
la plupart de ses variantes, nécessite de paramétrer à l’avance, le nombre k de clusters
désiré. Dans certaines applications en classification non-supervisée, la connaissance des
données par l’utilisateur ou l’aide d’un expert permet d’estimer ce paramètre. En revanche,
dans l’application visée ici, il est difficile d’estimer à l’avance le nombre approprié de sous-
classes.
Nous choisissons alors d’adapter la procédure COUVRIR-RC de la façon suivante : on
commence par décomposer la classe en 2 clusters (k-moyennes pour k = 2). Si aucun
des deux clusters ne permet de construire une règle discriminante, on tente une nouvelle
décomposition de la classe en 3 clusters (k-moyennes pour k = 3). On réitère le procédé
en augmentant k, jusqu’à ce que l’un des clusters, au moins, donne lieu à une règle discri-
minante.
Chaque fois qu’un cluster est “discriminé” par une règle, on considère l’ensemble des
exemples non-couverts puis on exécute à nouveau la procédure de décomposition sur cet en-
semble à partir de k = 2. Cette procédure est stoppée lorsque tous les clusters générés sont
“discriminés”. Le schéma présenté en figure 3.11 illustre la procédure de décomposition.
Dans le cas où la décomposition des classes est effectuée par une méthode hiérarchique,
la procédure est simplifiée. Le dendrogramme est généré une seule fois, puis il est parcouru
de la racine vers les feuilles avec un test d’existence d’une règle discriminante sur chaque
nœud. Si, pour un nœud donné, les exemples contenus dans ce nœud ne peuvent conduire
à une règle discriminante, la procédure est appelée récursivement sur chacun de ces nœuds
fils.
93
3.4. Le système RuLe-Clust
E3+
Pas de règle
94
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
Les expérimentations, reportées dans ce qui suit, permettent de répondre aux trois
interrogations suivantes :
(1) Dans quelle mesure la décomposition des classes permet-elle d’améliorer le pou-
voir prédictif des règles apprises ?
(2) L’algorithme de classification non-supervisée PoBOC est-il adapté à cette tâche
de décomposition ?
(3) Si oui, est-ce lié au fait que PoBOC partitionne les données en classes non-
disjointes ?
Pour répondre à chacune de ces questions, nous avons effectué les comparaisons appro-
priées. Dans des situations identiques, nous observons d’abord les résultats obtenus avec ou
sans décomposition (pFOIL vs. RuLe-Clust). Ensuite, nous proposons une étude compara-
tive de la performance du système RuLe-Clust pour différentes méthodes de décomposition
(algorithmes de clustering différents). Enfin, nous présentons la qualité des classifieurs in-
duits par deux méthodes de décomposition comparables, l’une proposant un partitionne-
ment strict, l’autre un pseudo-partitionnement.
Afin de cerner les capacités globales du système RuLe-Clust, nous situons finalement
notre système par rapport à deux méthodes traditionnelles de classification supervisée : la
classification par construction d’un arbre de décision (C4.5 [149]) ainsi qu’une approche
basée sur les instances (1 Plus Proche Voisin).
Méthode d’évaluation
Tous les résultats présentés par la suite sont obtenus dans les mêmes conditions
expérimentales. Autrement dit, les méthodes sont comparées sur les mêmes échantillons
d’entraı̂nement et de test ainsi que sur la même matrice de (dis)similarité.
Lorsqu’un découpage “ensemble d’entraı̂nement/ensemble de test” est prédéfini (e.g.
dans le cas des bases Audiology et Soybean), l’évaluation sur cette base consiste à exécuter
95
3.5. Évaluation du système RuLe-Clust
96
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
RuLe-Clust
Base pFOIL
(PoBOC)
Audiology 61.5±0.02 88.5±0.01
Credit 84.3±5.22 85.7±5.81
Glass 66.8±9.12 68.4±13.71
Heart disease 83.0±8.22 84.8±7.91
Hepatitis 74.8±10.62 77.6±10.61
Iris 95.2±5.22 95.5±4.81
Soybean 81.4±0.02 84.3±0.01
Thyroid 92.4±6.82 94.8±6.91
Wine 91.1±6.62 95.6±4.81
Zoology 90.7±5.91 88.8±5.92
% Moyen 82.1% 86.4%
Classt Moyen 1.9 1.2
On observe que sur 9 bases, parmi les 10 traitées, l’organisation a priori des données de
chaque classe en sous-classes permet d’induire des règles de meilleure qualité. En moyenne,
sur ces expérimentations, l’amélioration du système pFOIL par clustering, est supérieure
à 4 points7 .
Cette étude permet alors de répondre à la première question posée : organiser les
classes de façon non-supervisée apporte une connaissance utile à un système de classifi-
cation supervisée ; dans le cas d’une approche de classification basée sur des règles, nous
observons un gain moyen supérieur à 5%, lié à la prise en compte de cette connaissance
supplémentaire.
Nous avons considéré les partitions obtenues à partir des classes comme une connais-
sance apportée au système d’apprentissage. L’algorithme de clustering utilisé pour générer
ces partitions conditionne fortement la qualité de cette connaissance. Autrement-dit, la
qualité d’une partition peut, dans ce contexte, être évaluée par rapport à l’amélioration
qu’elle engendre sur la performance du classifieur induit.
97
3.5. Évaluation du système RuLe-Clust
kMED flou : Cette méthode correspond à l’algorithme k-médoı̈des flou, présenté dans le
chapitre 1, section 1.6.2. Une partition floue est proposée, puis transformée en une
pseudo-partition, par affectation de chaque exemple à un ou plusieurs clusters, en
utilisant la procédure de multi-affectations de PoBOC (cf. chapitre 2, section 2.2.2).
kMED : Il s’agit de l’algorithme k-médoı̈des classique, produisant une partition stricte
des exemples d’une classe.
Hiérarchique simple/moyen/complet : Par opposition aux précédentes approches par
partitionnement, nous testons l’utilisation des méthodes agglomératives hiérarchiques
traditionnelles du lien simple (SLINK), moyen (ALINK) et complet (CLINK) déjà
présentées dans le chapitre 1, en section 1.6.1.
Les résultats de ces différents paramétrages du système RuLe-Clust sont reportées dans
le tableau 3.3.
On observe, en premier lieu, que les méthodes hiérarchiques ne sont pas adaptées
pour dégager une organisation “naturelles” d’une classe d’exemples. En effet, les trois
algorithmes hiérarchiques utilisés induisent les trois moins bons classifieurs de l’étude. De
plus, les règles apprises à partir de cette décomposition permettent de classer correctement
moins d’exemples que celles apprises dans le système de base pFOIL (jusqu’à 15 points de
perte sur le taux de bonne classification).
Ce résultat peut s’expliquer par le fait que les dendrogrammes produits par les Clas-
sifications Ascendantes Hiérarchiques (CAH) ne permettent pas de dégager des partitions
brutes, de qualité. Une étape d’optimisation de ces partitions pourrait améliorer sensible-
ment la pertinence des sous-classes proposées, et donc des règles générées.
Les algorithmes de clustering produisant les meilleures décompositions sont donc les
méthodes de clustering par partitionnement. Sur 5 des 10 bases traitées, PoBOC surclasse
toutes les autres approches de décomposition testées. Il se classe premier en moyenne. Cette
tendance est confirmée par le taux moyen de bonne classification en utilisant PoBOC,
supérieur de 0.5 points par rapport à l’algorithme k-médoı̈des (strict) et de 2.5 points par
rapport à la version floue.
98
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
Après cette seconde étude, situant PoBOC comme l’algorithme de clustering le mieux
adapté pour dégager une organisation “naturelle” des exemples d’une classe, nous cher-
chons à en découvrir la/les raison(s). PoBOC est-il approprié parce que cet algorithme
produit des clusters non-disjoints ? Ou est-ce simplement dû à la façon dont les clusters
sont déterminés ?
Le tableau 3.4 rend compte de l’intérêt ou non d’organiser les exemples en sous-classes
non-disjointes pour apprendre un ensemble de règles pertinentes.
RuLe-Clust RuLe-Clust
Base
(PoBOC stricte) (PoBOC)
Audiology 88.5±0.01 88.5±0.01
Credit 86.0±5.31 85.7±5.82
Glass 65.8±15.82 68.4±13.71
Heart disease 84.5±7.52 84.8±7.91
Hepatitis 77.6±10.61 77.6±10.61
Iris 95.3±5.02 95.5±4.81
Soybean 83.8±0.02 84.3±0.01
Thyroid 93.3±7.72 94.8±6.91
Wine 95.4±4.92 95.6±4.81
Zoology 88.8±5.91 88.8±5.91
% Moyen 85.9% 86.4%
Classt Moyen 1.6 1.1
On remarque alors que parmi les ensembles de données utilisés, seule une base semble
plus adaptée à une organisation des données en sous-classes disjointes (Credit). Sur les 9
autres bases, la performance des classifieurs induits est soit identique, soit améliorée par
l’algorithme PoBOC initial.
Notons également que, indirectement, la version stricte de PoBOC, permet en moyenne,
de classer correctement autant d’exemples que l’algorithme k-médoı̈des utilisé dans l’étude
précédente. Ces deux dernières remarques nous amènent à la conclusion suivante : l’utilisa-
tion de PoBOC dans le système RuLe-Clust est appropriée, d’une part car les sous-classes
découvertes correspondent aux meilleures classifications obtenues (PoBOC strict équivaut
à k-médoı̈de), et d’autre part, grâce au fait que ces sous-classes s’intersectent (PoBOC
meilleur que PoBOC stricte).
99
3.5. Évaluation du système RuLe-Clust
Enfin, nous terminons ces expérimentations par une étude permettant de positionner
le système RuLe-Clust par rapport à d’autres systèmes de référence dans le domaine de la
classification supervisée. Précisons que notre objectif n’était pas de proposer une méthode
plus performante que des systèmes robustes tels que C4.5 ou C5.0. Cependant, une telle
étude comparative est légitimée par une certaine curiosité.
Pour cela, nous observons, toujours dans des conditions identiques d’apprentissage, le
taux de bonne classification obtenu par construction d’un arbre de décision avec et sans
élagage (C4.5 [149]), puis par un classifieur basé sur les instances (1 Plus Proche Voisin).
Les résultats, présentés dans le tableau 3.5, indiquent que RuLe-Clust, C4.5 (avec
élagage) et 1-PPV, obtiennent chacun les meilleurs taux de bonne classification sur trois
des dix bases de test et se placent second sur deux autres bases. En moyenne, la perfor-
mance du système RuLe-Clust est comparable à la méthode C4.5 sans élagage. Ce résultat
est meilleur d’environ 1 point, à celui de la méthode basée sur les instances (1-PPV), et
inférieur dans les mêmes proportions, à la performance de C4.5 avec élagage.
L’élagage d’un arbre de décision consiste à simplifier l’arbre par la suppression et la
fusion de certaines branches, dans le but de limiter la sur-adéquation avec les données d’en-
traı̂nement. Ce traitement, généralement postérieur à la phase d’apprentissage, améliore
sensiblement les performances du système, comme nous le constatons dans notre expérimentation.
On peut alors supposer qu’un traitement similaire améliorerait également les performances
du système RuLe-Clust. Deux stratégies (éventuellement complémentaires) sont envisa-
geables : d’une part l’intégration de la notion de “tolérance”, en autorisant chaque règle
à couvrir une proportion raisonnable d’exemples négatifs ; d’autre part la simplification a
posteriori de l’ensemble de règles générées.
100
Chapitre 3. Apprentissage de règles de classification par regroupement d’objets
3.6 Conclusion
Dans ce chapitre, nous avons présenté le système RuLe-Clust (Rule-Learning from
Clustering) permettant d’apprendre un ensemble de règles de classification, à partir d’une
décomposition des données en sous-classes “naturelles”. Deux objectifs étaient alors visés :
d’une part, nous cherchions à adapter ce principe de décomposition, déjà utilisé dans des
systèmes d’apprentissage basé sur les instances, au cas de la classification par apprentissage
de règles ; d’autre part, dans la continuité des deux chapitres précédents, le système RuLe-
Clust nous a semblé offrir un cadre applicatif intéressant, pour une évaluation objective
de l’algorithme PoBOC.
Nous avons alors motivé le recours à un processus de classification non-supervisée, afin
de cibler des sous-classes “naturelles”, susceptibles d’induire chacune une règle pertinente.
Ce principe général de décomposition a été présenté comme alternative aux systèmes
d’apprentissage séquentiels : AQ, CN2 ou encore pFOIL.
Dans un deuxième temps, nous nous sommes intéressé à l’influence que peuvent avoir
les recouvrements entre clusters, issus du processus de décomposition, sur la qualité
prédictive des règles induites. Nous avons alors montré que, dans certaines situations,
ce type de schémas peut aider à orienter la construction des règles vers une couverture
plus “naturelle” des classes.
Enfin, les expérimentations proposées ont permi de confirmer les hypothèses formulées.
Sur dix ensembles de tests, traditionnellement utilisés pour évaluer les systèmes de classifi-
cation supervisée, nous avons observé d’abord que RuLe-Clust génère un ensemble de règles
davantage pertinentes que le système équivalent procédant par couverture séquentielle.
L’utilisation de la connaissance induite par le processus de clustering permet de “hisser”
un système du type pFOIL, à un niveau de performance approchant les meilleurs systèmes
existants (e.g. C4.5).
Finalement, l’algorithme PoBOC a été évalué avec succès, puisque nous avons montré
empiriquement, que la décomposition proposée par cet algorithme se traduit (via la
génération d’un ensemble de règles), par un taux de bonne classification supérieur aux algo-
rithmes de clustering traditionnels (hiérarchiques ou par partitionnement). Cette supériorité
étant à attribuer, d’une part, à la qualité générale des clusters obtenus, et d’autre part,
aux intersections entre ces clusters.
101
4
Apprentissage disjonctif par
décomposition de concepts
Sommaire
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.2 Bases de la logique du premier ordre . . . . . . . . . . . . . . . 104
4.3 Apprentissage disjonctif . . . . . . . . . . . . . . . . . . . . . . . 105
4.3.1 Le système FOIL . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.3.2 Le système GOLEM . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.4 Extension du système RuLe-Clust à la logique du premier ordre108
4.4.1 Apprentissage disjonctif d’un concept . . . . . . . . . . . . . . . 108
4.4.2 L’approche par décomposition . . . . . . . . . . . . . . . . . . . . 109
4.4.3 Exemple 1 : sous-concepts non-disjoints I . . . . . . . . . . . . . 110
4.4.4 Exemple 2 : description numérique . . . . . . . . . . . . . . . . . 111
4.5 Mesure de similarité . . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.5.1 Langage infini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
4.5.2 Expérimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
4.6 Vue générale de la méthode . . . . . . . . . . . . . . . . . . . . . 122
4.6.1 Apprentissage d’une clause . . . . . . . . . . . . . . . . . . . . . 123
4.6.2 Complexité de la méthode globale . . . . . . . . . . . . . . . . . 123
4.6.3 Expérimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
4.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
103
4.1. Introduction
4.1 Introduction
Dans ce quatrième chapitre, nous proposons d’étendre le principe général illustré par
le système RuLe-Clust, à l’apprentissage de règles en logique du premier ordre (avec va-
riables). Comme nous allons le voir, ce formalisme est plus expressif et permet de traiter
des problèmes difficiles voire impossibles à représenter dans le formalisme propositionnel,
utilisé jusqu’ici. Cependant, cette transition n’est pas sans poser des problèmes, récurrents
en Programmation Logique Inductive (ILP), comme par exemple, la difficulté à tester la
couverture d’un exemple par une règle ou la construction même de cette règle. L’approche
par décomposition, que nous avons étudié dans le chapitre précédent, implique également
la définition d’une mesure de similarité, qui semble moins évidente en premier ordre.
Après quelques rappels importants concernant la théorie de la logique du premier
ordre, le problème général de l’apprentissage disjonctif dans ce formalisme est énoncé.
Nous présentons alors deux stratégies de base pour la construction d’une disjonction de
règles logiques, illustrées par les systèmes FOIL [150] et GOLEM [132]. Le principe d’ap-
prentissage disjonctif par décomposition de concepts est ensuite introduit, et complété par
la proposition d’une mesure de similarité sur des objets décrits dans ce formalisme. Des
exemples adaptés, permettent tout au long de cette étude d’illustrer et d’évaluer les deux
principaux choix opérés pour cette approche : la mesure de similarité et l’algorithme de
classification non-supervisée PoBOC.
Dans cette base de connaissance (BK1 ), l’élément mère(françois, marie) doit être in-
terprété de la manière suivante : “françois a pour mère marie”. Ce concept peut être
défini par les deux règles
grand-père(X,Y)←père(X,Z),père(Z,Y),
grand-père(X,Y)←mère(X,Z),père(Z,Y).
Dans cet exemple, grand-père, mère et père sont les symboles de prédicat (tous d’arité
2), marie, françois, pierre, jean, paul et jeanne les constantes, X, Y et Z sont des va-
riables.
– Un littéral est un atome (ou la négation d’un atome), de la forme p(t 1 , . . . , tn ) où p
est un prédicat et où les ti représentent des variables ou constantes2 .
– Les deux règles, présentées ci-dessus, sont appelées des clauses (ou règles logiques),
telles que la partie gauche désigne la tête (ou le conséquent) tandis que la partie
droite désigne le corps de la clause (ou les antécédents). Le corps d’une clause est
constitué par la conjonction de littéraux (positifs) et la tête d’un unique littéral.
1
Background Knowledge.
2
Précisons que l’on se restreint, dans cette étude, à des langages en logique du premier ordre, ne
contenant pas de symboles de fonction.
104
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
– Un atome clos est un atome ne contenant aucune variable (e.g. père(pierre, jean)).
Définition 4.1. Soient deux ensembles d’atomes clos E + et E − et une base de connais-
sances BK. Un exemple e est couvert par une clause C : p(X) ← l 1 , . . . ln relativement à
BK si et seulement si il existe une instanciation σ des variables de C telle que l 1 σ, . . . ln σ
est vrai dans BK ∪ E + et p(X)σ = e.
Dans notre exemple, les atomes clos grand-père(françois, jean), grand-père(paul, jean)
et grand-père(jeanne, jean) correspondent aux exemples positifs (E + ) du concept cible
grand-père. L’exemple grand-père(françois, jean) est couvert par la première clause via
l’instanciation σ1 ={X/françois, Z/marie, Y/jean} ; les exemples grand-père(paul, jean)
et grand-père(jeanne, jean) sont couverts par la seconde clause via les instanciations res-
pectives suivantes : σ2 ={X/paul, Z/pierre, Y/jean} et σ3 ={X/jeanne, Z/pierre, Y/jean}.
Le formalisme logique présenté ci-dessus, permet une représentation plus riche, que
le formalisme propositionnel. Les clauses logiques permettent également une définition
récursive d’un concept, ce qui est impossible dans le formalisme propositionnel. Par exemple,
si on souhaite apprendre le concept ancêtre, une définition récursive naturelle est :
ancêtre(X,Y)←père(X,Y)
ancêtre(X,Y)←mère(X,Y)
ancêtre(X,Y)←père(X,Z),ancêtre(Z,Y)
ancêtre(X,Y)←mère(X,Z),ancêtre(Z,Y).
Dans une telle définition récursive, le prédicat de tête est utilisé également dans le corps
de la clause.
105
4.3. Apprentissage disjonctif
Algorithme FOIL :
Soit P os l’ensemble des exemples pour lesquels le prédicat cible est V rai,
Soit N eg l’ensemble des exemples pour lesquels le prédicat cible est F aux,
Soit R, l’ensemble des règles apprises, initialisé à vide.
Retourner R.
Chaque clause dans FOIL est générée par une approche du plus général au plus
spécifique. Partant de la clause la plus générale (e.g. ancêtre(X,Y)← ), FOIL spécialise la
clause par construction de l’ensemble des littéraux candidats, puis sélection du “meilleur”
littéral parmi cet ensemble.
L’ensemble des littéraux candidats est défini par tous les littéraux qui vérifient l’une
des formes suivantes :
– p(V1 , . . . , Vn ) ou ¬p(V1 , . . . , Vn ), où p est un symbole de prédicat et l’une au moins
des variables V1 , . . . , Vn apparaı̂t déjà dans la règle en cours de construction4 ,
– egal(Vi , Vj ) ou ¬egal(Vi , Vj ), où Vi et Vj apparaissent déjà dans la règle en cours de
construction.
Parmi les symboles de prédicats p, le prédicat associé au concept cible (prédicat de la tête)
peut être considéré, de façon à générer une définition récursive (pour définir ancêtre(X,Y)
par exemple), avec certaines restrictions sur les variables.
La sélection du meilleur littéral parmi l’ensemble des littéraux candidats est effectuée
4
Le symbole “¬” correspond à la négation. FOIL propose en effet un langage plus expressif que les
clauses de Horn, en autorisant les littéraux négatifs.
106
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
au moyen d’une mesure de gain. Cette mesure évalue les proportions d’exemples positifs
et négatifs couverts par la clause, avant et après l’ajout du littéral évalué.
Il est très fréquent que l’heuristique “gloutonne” utilisée dans FOIL n’aboutisse pas à la
construction d’une clause (de complexité raisonnable) rejetant tous les exemples négatifs
du concept cible. Ainsi, un processus de retour arrière (backtracking) est généralement
envisagé, pour reconsidérer le dernier littéral ajouté en le remplaçant par un autre littéral
un peu moins discriminant. Dans FOIL, l’espace de recherche est alors borné, d’une part
en limitant la complexité des clauses possibles à générer, d’autre part en ne considérant à
chaque ajout, que les littéraux les plus discriminants.
Algorithme GOLEM :
Retourner : l’hypothèse g.
a
Plus Petit Généralisé.
Chaque clause générée par GOLEM est construite à partir d’un tirage de k paires
d’exemples positifs (généralement k = 2), et pour chaque paire, une hypothèse spécifique
pertinente est recherchée, puis généralisée. La construction d’une clause basée sur le tirage
d’un ou plusieurs exemples se retrouve dans les systèmes INDUCE [84] ou encore PROGOL
[131] - ce dernier utilisant une approche de construction par spécialisation. Le problème du
choix des exemples est récurrent pour ce type d’approche. Dans GOLEM, ce problème est
107
4.4. Extension du système RuLe-Clust à la logique du premier ordre
en partie résolu, par le tirage de plusieurs exemples, donnant lieu à différentes hypothèses
parmi lesquelles seulement la meilleure est retenue pour être généralisée.
Notons que le système GOLEM utilise la notion de Plus Petit Généralisé (PPG) [144].
On peut parler du PPG de termes, de littéraux ou de clauses. Étant données des des-
criptions spécifiques d’un concept, il s’agit de construire une définition de ce concept,
plus générale que les descriptions des exemples, et la moins générale possible parmi celles
généralisant les exemples.
Enfin, la meilleure hypothèse correspond à celle qui couvre le plus d’exemples positifs,
parmi ceux non-encore couverts.
Nous avons présenté deux systèmes d’apprentissage d’une disjonction de clauses per-
mettant de caractériser un concept. Ces deux systèmes sont représentatifs des deux ap-
proches de construction de clauses : du plus général au plus spécifique (FOIL) et du
plus spécifique au plus général (GOLEM). Nous choisissons, dans la suite, de conserver la
stratégie utilisée dans le système RuLe-Clust (cf. chapitre 3), à savoir la couverture d’un
ensemble d’exemples par spécialisation.
grand-père(X,Y)←père(X,Z),père(Z,Y).
grand-père(X,Y)←mère(X,Z),père(Z,Y).
chaque règle définissant un sous-concept du concept initial. Ainsi, les instances sont di-
visées naturellement en deux sous-ensembles d’exemples (ou groupes), satisfaisant à l’une
ou l’autre des deux règles. Le principe du système d’apprentissage que nous proposons ici,
consiste à rechercher d’abord des groupes d’exemples, afin de guider, ensuite, la génération
des clauses.
Nous motivons cette approche par le fait que les systèmes tels que FOIL, utilisant une
approche gloutonne pour construire les clauses, dépendent essentiellement de fonctions
heuristiques qui induisent un biais très important dans la recherche des littéraux à ajouter.
Les fonctions heuristiques utilisées, comme par exemple la mesure d’Utilité (utilisée
pour FOIL) permettent de mesurer le pouvoir discriminant (noté Γ(l, C)) d’un littéral l
par rapport à une clause C. Soient E + (resp. E − ) l’ensemble des exemples positifs (resp.
négatifs) et cov(E, C) le nombre d’exemples5 de E couverts par la clause C, Γ(l, C) dépend
au minimum des deux valeurs suivantes : cov(E + , C ∪ l) et cov(E − , C ∪ l) où C ∪ l désigne
la clause obtenue par l’ajout du littéral l dans le corps de C. La définition de Γ(l, C) joue
un rôle central dans le processus, et donc sur l’ensemble des sous-concepts induits. De plus,
5
En Programmation Logique Inductive, le nombre d’instanciations de C couvrant un élément de E peut
également être utilisé pour définir le pouvoir discriminant.
108
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
Γ(l, C) est fortement dépendant des ensembles E + et E − : quelques changements dans ces
ensembles peuvent conduire à des solutions très différentes, et donc à des sous-concepts
différents.
Enfin, si h ← p, q est une clause couvrant certains exemples positifs et aucun exemple
négatif, les valeurs Γ(p, h ←) et Γ(q, h ←) ne sont pas nécessairement élevées. Par conséquent,
il peut être impossible, pour une méthode gloutonne, d’apprendre la clause h ← p, q parce
que, partant de la clause générale h ←, ni p, ni q ne semblent être discriminants. Ce
problème est plus général que celui des littéraux déterminés, étudié dans [150, 163].
109
4.4. Extension du système RuLe-Clust à la logique du premier ordre
L’auto organisation : Dans certains cas, un concept peut être naturellement divisé en
sous concepts : chaque sous-concept étant constitué d’exemples similaires (qui par-
tagent de nombreuses propriétés caractéristiques).
La simplicité : D’un point de vue pratique, une décomposition est bonne si elle nécessite
peu de règles simples (courtes) pour la définir.
La précision : Enfin, la qualité des règles reflète la pertinence de la décomposition et
peut être évaluée par rapport à leur pouvoir de prédiction sur de nouveaux exemples.
Rappelons que la décomposition d’un concept est un processus en deux étapes. D’abord
nous définissons une mesure de similarité et calculons la similarité entre chaque paire
d’exemples positifs. Ensuite, nous utilisons un algorithme de clustering afin de construire
des groupes éventuellement non-disjoints, d’exemples similaires.
Afin de motiver cette approche et dans un souci de simplicité, nous proposons dans la
prochaine section deux exemples qui pourraient aussi être exprimés dans un formalisme
attribut/valeur. Cependant, comme nous le montrerons en section 4.5.2, notre approche
peut être appliquée sur des problèmes spécifiques en ILP.
{r(a), r(b), r(f ), r(h), s(a), s(b), s(g), s(i), t(c), t(d), t(g), t(i),
u(c), u(d), u(f ), u(h), v(b), v(c), v(f ), r(e), s(e), t(e), u(e), v(e)}
On suppose que, pour un concept cible p, l’ensemble des exemples positifs est {p(a), p(b),
p(c), p(d)} et que l’ensemble des exemples négatifs est {p(f ), p(g), p(h), p(i)}.
Cet exemple permet d’illustrer les limites des algorithmes gloutons, pour la construc-
tion des clauses. En effet, avec un algorithme glouton tel que FOIL, la construction débute
avec la clause générale p(X) ←,
– si on ajoute l’un des littéraux r(X), s(X), t(X) ou u(X), on obtient une clause
couvrant 2 exemples positifs et 2 négatifs ;
– si on ajoute le littéral v(X), on obtient une clause qui couvre 2 exemples positifs et
1 négatif.
Le littéral v(X) est donc choisi et la définition finale apprise contient au moins 3
clauses. Pourtant, le concept peut être caractérisé par les deux clauses suivantes :
conduisant ainsi aux deux sous-concepts {p(a), p(b)} et {p(c), p(d)}. Pour apprendre ces
deux clauses, notre approche par décomposition devrait construire deux sous-concepts à
partir de la base de connaissance, i.e. considérer que p(a) et p(b) (resp. p(c) et p(d)) sont
fortement similaires.
On propose d’utiliser la mesure de similarité définie dans [120] et dont le principe
général a été présenté dans le chapitre 1. Pour cette application on considère le langage
L défini par l’ensemble suivant de propriétés, correspondant à toutes les clauses n’ayant
qu’un atome dans le corps :
{p(X) ← r(X), p(X) ← s(X), p(X) ← t(X), p(X) ← u(X), p(X) ← v(X)}.
110
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
La similarité entre deux exemples ei et ej est alors définie par le nombre de clauses C dans
L telles que ei et ej sont tous deux couverts par C ou ei et ej sont tous deux non-couverts
par C. Par exemple, p(a) et p(b) sont couverts tous deux par les propriétés p(X) ← r(X)
et p(X) ← s(X) et tous les deux non-couverts par p(X) ← t(X) et p(X) ← u(X). La
similarité entre p(a) et p(b) est donc égale à 4. De la même façon, on calcule les similarités
pour chaque paire d’exemples positifs et obtenons la matrice suivante :
p(a) p(b) p(c) p(d)
p(a) 5 4 0 1
p(b) 4 5 1 0
p(c) 0 1 5 4
p(d) 1 0 4 5
Dans cette matrice, les deux sous-concepts attendus apparaissent clairement. Cepen-
dant, dans beaucoup de problèmes, les sous-concepts ne correspondent pas à des ensembles
disjoints. Par exemple, si l’on ajoute maintenant p(e) comme nouvel exemple positif, la
matrice de similarité devient alors :
p(a) p(b) p(e) p(c) p(d)
p(a) 5 4 2 0 1
p(b) 4 5 3 1 0
p(e) 2 3 5 3 2
p(c) 0 1 3 5 4
p(d) 1 0 2 4 5
Dans cette matrice, les deux sous-concepts initiaux {p(a), p(b)} et {p(c), p(d)} appa-
raissent toujours, mais p(e) peut être inséré dans les deux sous-concepts. En fait, le nouvel
exemple est couvert par les clauses C1 et C2 qui induisent respectivement les deux sous-
concepts {p(a), p(b), p(e)} et {p(e), p(c), p(d)}.
L’utilisation d’une méthode de regroupement autorisant les recouvrements semble donc
particulièrement adaptée, notamment dans cet exemple. Nous verrons par la suite que
l’algorithme PoBOC permet d’aboutir aux deux sous-concepts attendus ici.
111
4.4. Extension du système RuLe-Clust à la logique du premier ordre
il est généralement choisi d’ajouter tous les littéraux déterminés, de plus il s’agit ici des
seuls littéraux possibles à ajouter10 .
Ainsi, à partir de la clause p(X) ← x(X, Y1 ), y(X, Y2 ) aucun des littéraux suivant n’est
discriminant :
≥ (Y1 , 1), . . . , ≥ (Y1 , 6), ≥ (Y2 , 1), . . . , ≥ (Y2 , 6)
≤ (Y1 , 1), . . . , ≤ (Y1 , 6), ≤ (Y2 , 1), . . . , ≤ (Y2 , 6)
Un choix arbitraire devra alors être fait, conduisant à une définition probablement différente
de celle attendue.
Dans notre approche, on peut choisir de calculer la mesure de similarité à l’aide du
langage constitué des 12 clauses suivantes, correspondant à toutes les clauses possibles
avec un seul atome dans le corps11 :
La mesure de similarité définie par ce langage, est proche d’une distance euclidienne.
Cette mesure permet d’induire 2 clusters correspondant aux sous-concepts
• {p(a), p(b), p(c), p(d)} (couvert par la clause p(X) ← x(X, Y ), ≤ (Y, 2), y(X, Z), ≤ (Z, 2)),
• {p(e), p(f ), . . . , p(j)} (couvert par la clause p(X) ← x(X, Y ), ≥ (Y, 4), y(X, Z), ≥ (Z, 3)).
Notons que sur les deux exemples précédents, les clauses qui caractérisent les clusters obte-
nus ne se basent pas sur le langage utilisé pour la mesure de similarité. Les expérimentations
10
En tenant compte d’un biais syntaxique associé au domaine des variables X et Y .
11
Nous étudierons, dans la suite de ce chapitre, l’influence du langage sur la mesure de similairté.
112
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
La valeur maximum de ce poids est égale à 1, pour les clauses qui ne couvrent que des
exemples positifs. La mesure de similarité pondérée que nous obtenons est donc :
X
w(C)
C∈L(ei ,ej )
w sim(ei , ej ) =
|L|
Cette pondération permet de donner plus d’importance aux clauses plus “proches”
du concept cible. La mesure peut cependant présenter un inconvénient lorsque le langage
113
4.5. Mesure de similarité
p(X) ← l1 , l2 , . . . , ln , c1 , . . . , cm
Dans cette clause, les littéraux li sont de la forme q(X, Y, Z) ou r(Y, T, U ) et les cj
correspondent à des contraintes du type T = v, où v est une valeur choisie dans le domaine
de T 13 .
114
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
entraı̂nera la construction d’un langage de description dans lequel il devrait y avoir sensi-
blement autant de clauses constituées de 1 littéral dans le corps, que de clauses constituées
de 2 ou de 3 littéraux.
Domaine de liaison forcée : L’ajout d’un littéral dont le domaine de l’une des va-
riables est du type “domaine de liaison forcée”, entraı̂ne une unification de la va-
riable concernée avec une variable de même domaine déjà présente dans la clause. Par
exemple, partant de la clause p(X1 ) ←, si on choisit d’ajouter le littéral q(X2 , Y, Z)14 ,
on oblige l’unification des variables X1 et X2 qui sont toutes deux du même domaine
de liaison forcée D1f orce . Dans un premier temps, la clause est alors de la forme
p(X1 ) ← q(X1 , Y, Z)
Cette première contrainte est systématiquement complétée par une seconde contrainte,
parmi les deux autres types de contraintes, associées aux deux autres types de do-
maines (liaison possible et contrainte générique).
Domaine de liaison possible : une contrainte d’unification peut être ajoutée, sur une
variable d’un domaine de liaison possible. Cette contrainte consiste, lorsque c’est
possible, à unifier cette variable avec une variable déjà présente dans la clause en
construction. Par exemple, étant donnée la clause obtenue précédemment (p(X1 ) ←
q(X1 , Y, Z)), aucune contrainte de ce type ne peut être ajoutée. En effet, la seule
variable possible à unifier est Y (de domaine D2poss. ), mais aucune autre variable de
son domaine n’est présente.
Par contre, si l’on considère la clause suivante en construction :
115
4.5. Mesure de similarité
et que l’on choisisse d’ajouter le littéral r(Y2 , T, U ), la variable Y2 (de domaine D2poss. )
peut être unifiée à la variable Y1 de même domaine et déjà présente, pour former la
clause
p(X1 ) ← q(X1 , Y1 , Z), r(Y1 , T, U ), Z = v
Domaine de contrainte générique : une contrainte peut porter sur une variable de
domaine de contrainte générique. Ces contraintes correspondent aux cj de la forme
Z = v, Z 6= v, Z ≤ v, etc. avec v appartenant au domaine de Z.
Pour résumer, lorsqu’un littéral est ajouté à une clause en construction, on regarde
d’abord si une unification est possible sur deux variables d’un même domaine de liai-
son forcé. Si tel est le cas, l’unification est effectuée. Dans tous les cas, une contrainte
d’unification ou une contrainte générique est ensuite ajoutée.
Pour choisir d’ajouter plutôt l’une ou l’autre des deux types de contraintes, ainsi que la
variable sur laquelle elle doit porter, on se réfère aux types et aux poids des domaines. En
effet, à chaque domaine Di est associé une probabilité Pdom. (Di ), pouvant être considéré
comme un poids. Le choix du type de contrainte dépend du type de domaine sélectionné
(contrainte d’unification pour un domaine D poss. et contrainte générique pour un domaine
Dgener. ) et la sélection du domaine est effectuée en fonction de la distribution Pdom. .
Considérons, par exemple, la distribution suivante sur les domaines de notre exemple15 :
Contraintes additionnelles
Un dernier paramètre influant pour la construction des clauses du langage de descrip-
tion est le nombre de contraintes additionnelles. En effet, une fois les littéraux ajoutés
(en nombre spécifié), k contraintes sont ajoutées. Ces contraintes sont générés de la même
façon que précédemment, en choisissant un domaine relativement à la distribution P dom.
puis en ajoutant la contrainte liée au domaine (unification ou générique). Le nombre k est,
quant à lui, défini par une nouvelle distribution Pcontr. .
15
Notons qu’il est inutile de poser un poids pour les domaines de liaison forcée, pour lesquels l’unification
est systématique (e.g. D1poss. ).
116
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
Nous proposons dans la section suivante, des expérimentations avec différents lan-
gages sur la base de données Mutagénèse. Nous observons à cette occasion l’influence des
différents paramètres |L|, Pdom. et Plit. du langage, sur la qualité de la mesure induite.
4.5.2 Expérimentations
Exemple 3 : Ancêtres
Cet exemple a été proposé initialement dans [41]. On cherche à apprendre le concept
ancêtre, à partir d’une base de connaissances contenant les symboles de prédicat père, mère,
masculin et féminin, sur une famille constituée de 19 personnes produisant 361 exemples
dont 56 positifs. Une définition habituelle de ce concept correspond aux 4 clauses suivantes :
1 : ancêtre(X,Y) ← mère(X,Y).
2 : ancêtre(X,Y) ← mère(X,Z), ancêtre(Z,Y).
3 : ancêtre(X,Y) ← père(X,Y).
4 : ancêtre(X,Y) ← père(X,Z), ancêtre(Z,Y).
117
4.5. Mesure de similarité
(a) (b)
(c)
Fig. 4.5 – Matrices de similarité avec valeurs élevées grisées (variation du seuil).
118
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
Exemple 4 : Mutagénèse
Le problème associé à la base de données Mutagénèse16 est la prédiction du caractère
mutagène de composés, décrits en logique du premier ordre. Dans ce problème, on ne
connaı̂t pas de décomposition naturelle en sous-concepts. Nous choisissons alors d’évaluer
la mesure de similarité en observant le taux d’exemples bien classés par une approche
“1-Plus Proche Voisin” (1-PPV).
Les résultats que nous présentons sont obtenus par validations croisées. Pour une va-
lidation croisée, l’ensemble des exemples est scindé en 10 échantillons égaux (contenant
chacun 10% de la base totale), chaque échantillon est choisi succéssivement comme en-
semble de test. L’évaluation sur un échantillon consiste à affecter chaque exemple à la
classe de son plus proche voisin, parmi les exemples d’entraı̂nement (90% restant). De
plus, cet exemple se place dans le cadre des langages infinis, présentés en section 4.5.1.
Nous recherchons empiriquement les paramètres appropriés pour générer ce langage.
95
% precision sur Mutageneses
90
% classification correcte
85
80
75
10 25 50 100 250 500 1000 3000 10000
Nombre de termes
Fig. 4.6 – Performance du classifieur 1-PPV, pour des langages de tailles différentes.
Les résultats suivants sont obtenus en effectuant une moyenne sur 10 exécutions de
validations-croisées (figure 4.6). La précision augmente rapidement et les meilleurs
16
La base de donnée Mutagenesis [176] est une base de référence dans le domaine de la programmation
logique inductive.
119
4.5. Mesure de similarité
résultats (90.43% de bonne classification) sont obtenus avec des langages contenant
au moins 3000 clauses. Le résultat (90.11%) obtenu pour 1000 clauses est proche
du résultat précédent. Dans un soucis de rapidité, nous choisirons par la suite de
considérer des langages constitués de 1000 clauses.
91
1 atome
2 atomes
3 atomes
90.5 4 atomes
90
% precision
89.5
89
88.5
88
0 1 2 3 4
Nombre de contraintes additionnelles
Complexité des clauses. Ce test concerne la complexité (syntaxique) des clauses uti-
lisées pour définir la similarité. Rappelons que cette complexité est principalement
contrôlée par les distributions de probabilité Plit et Pcontr permettant de spécifier res-
pectivement le nombre de littéraux et de contraintes additionnelles (ou unifications)
dans la clause. Dans chacun des tests suivants, on génère des clauses à partir des
schémas de distribution suivants : Plit (#littéraux = i) = 1, Plit (#littéraux 6= i) =
0, Pcontr (#contraintes = j) = 1 et Pcontr (#contraintes 6= j) = 0 pour i = 1 . . . 4 et
j = 0 . . . 4.
Ces expérimentations (figure 4.7) montrent que quelque soit le nombre de littéraux
dans le corps de la clause, la précision du classifieur est optimale quand 2 contraintes
additionnelles sont ajoutées. Le meilleur score (90.48%) est obtenu avec 2 littéraux
et 2 contraintes additionnelles.
Il est également intéressant de noter que lorsque les clauses du langage ne sont pas
toutes de même complexité17 , les résultats obtenus sur la classification sont meilleurs
que lorsque toutes les clauses du langage suivent un même schéma de construction
(ce qui est le cas dans l’expérimentation actuelle). Dans les tests portant sur la taille
du langage, les clauses construites pouvaient avoir : (1 littéral et 0 contrainte), (1
littéral et 1 contrainte), (2 littéraux et 0 contrainte) ou encore (2 littéraux et 1
contrainte). En considérant un seul schéma de clause, la précision est inférieure à
90% tandis qu’en autorisant un mélange des configurations précédentes, nous avons
pu obtenir 90.43% de bonne classification.
17
Dans l’expérimentation précédente portant sur la taille du langage, les complexités syntaxiques va-
riaient d’une clause à une autre, pour un même langage.
120
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
Fig. 4.8 – Performance du classifieur 1-PPV, pour différentes pondérations des domaines.
Cette expérience montre (figure 4.8) que certains domaines sont importants (comme
par exemple logp, Ind1, charge) puisque la précision est plus faible lorsque le poids est
nul et plus élevée lorsque le poids est de 0.25, par rapport à la distribution uniforme.
En revanche, le domaine elem réduit la précision du classifieur. Enfin, pour d’autres
domaines (lumo, Inda), la précision est plus faible dans les deux cas : on ne peut
alors pas conclure sur leur importance indépendamment.
Pour conclure cette expérience, on teste le classifieur avec une distribution spécifique
Pdom telle que les poids des domaines logp, Ind1 et charge sont les plus élevés, le poids du
domaine elem est le plus faible et les autres domaines ont des poids (intermédiaires) iden-
tiques. Ce paramétrage correspond à la configuration “optimale” dégagée empiriquement
des quelques expérimentations précédentes.
On obtient alors, sur les 10 validations croisées, une moyenne de 91.915% de bonne
classification. Ce résultat montre que la mesure de similarité que nous proposons est per-
formante et que la précision du classifieur par plus proche voisin, pourrait sans doute
121
4.6. Vue générale de la méthode
encore être améliorée en recherchant, de façon plus précise, les paramètres appropriés
(distributions de probabilités).
122
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
pas été caractérisés par une clause, la méthode d’apprentissage (figure 4.9) est appliquée
récursivement sur ces groupes.
Dans ce qui suit, nous discutons de la stratégie utilisée pour apprendre une clause
et de la complexité globale du système. Enfin, nous proposons des expérimentations sur
différents exemples.
Complexité en temps
Similarité : pour calculer la matrice de similarité, nous devons d’abord tester si chaque
exemple est couvert ou non par chaque clause du langage L. Cette évaluation nécessite
donc (|E + | + |E − |) ∗ |L| tests de couverture ; la similarité est ensuite calculée pour
chaque paire d’exemples positifs, ce qui nécessite |E + |2 ∗ |L| opérations.
Clustering : l’utilisation de l’algorithme PoBOC détermine la complexité de cette étape,
nécessitant alors au plus k.|E + |2 opérations, où k est le nombre de groupes obtenus.
Construction des clauses : la complexité de l’approche gloutonne est réduite par la
restriction de l’espace de recherche.
Complexité en espace
La complexité en espace est déterminée par le nombre d’exemples positifs, puisque nous
devons calculer une matrice de similarité de taille |E + | × |E + |. Si |E + | est trop important
(plus de 1000 exemples), on peut utiliser un échantillon de cet ensemble : le nombre
d’exemples positifs nécessaires dépend principalement du nombre de clauses apprises. Par
exemple, supposons que le concept cible puisse être caractérisé par 10 clauses, avec 1000
exemples positifs, nous avons encore une moyenne de 100 exemples par groupe.
123
4.6. Vue générale de la méthode
4.6.3 Expérimentations
Nous proposons, dans cette section, quelques expérimentations de notre approche : nous
testons la méthode d’apprentissage par décomposition avec PoBOC, sur des exemples pour
lesquels une décomposition “naturelle” en sous-concepts est connue.
on obtient les sous-concepts attendus : {p(a), p(b), . . . , p(d)} et {p(e), p(f ), . . . , p(j)}. Si
on considère à présent la similarité associée au langage L2 contenant toutes les clauses
ayant p(X) comme tête et au plus deux littéraux dans le corps, l’algorithme de clustering
renvoie un résultat différent ; les groupes obtenus sont :
G1 = {p(a), p(b), p(c), p(d)} G2 = {p(e), p(f ), p(g), p(i)} G3 = {p(g), p(h), p(i), p(j)}
L’explication est basée sur la différence entre les deux langages L1 et L2 : la clause
p(X) ← x(X, Y ), y(X, Y ) appartient à L2 mais non à L1 . Cette clause est correcte puis-
qu’elle couvre 4 exemples positifs : {p(a), p(d), p(h), p(i)} et aucun exemple négatif. Elle
est donc pondérée par 1 dans L2 . La conséquence est que la similarité entre p(h) et p(i)
est augmentée et que, par exemple, la similarité entre p(e) et p(h) est réduite.
Cet exemple montre que lorsque différentes décompositions peuvent exister, cela peut
induire une fragmentation de certains sous-concepts (particulièrement quand le nombre
d’exemples est faible). Pour cette raison, le résultat de notre algorithme de pseudo-
partitionnement est complété par une étape de hiérarchisation des clusters obtenus, avant
d’apprendre une définition. Dans cet exemple, G2 et G3 sont les groupes les plus similaires,
le résultat de la hiérarchisation est alors :
E + divisé en G1 et G2,3 ,
G2,3 divisé en G2 et G3
124
Chapitre 4. Apprentissage disjonctif par décomposition de concepts
Les groupes les plus similaires sont G2 et G3 , mais aucune clause caractérisant G2 ∪ G3 ne
peut être trouvée. L’algorithme tente alors de construire une caractérisation pour G 1 , G2
et G3 . Une clause est apprise pour G1 et pour G2 , mais non pour G3 . Ensuite, l’algorithme
de clustering est appliqué sur le groupe G3 , produisant deux groupes disjoints associés aux
définitions récursives suivantes :
base de connaissance :
k
b g
Fig. 4.10 – base de connaissance (à gauche) et représentation graphique (à droite).
Le concept cible est le concept liés, tel que liés(X, Y ) est vrai si un chemin existe de X
à Y (quelque soit la nature des arcs). Pour calculer la similarité entre deux exemples, on
125
4.7. Conclusion
considère le langage contenant toutes les clauses ayant liés(X, Y ) comme tête, et au plus
deux littéraux dans le corps. Dans cet exemple, il existe des sommets liés par différents
chemins. A partir de l’ensemble des 44 exemples positifs, l’algorithme de clustering produit
5 groupes G1 , G2 , G3 , G4 et G5 .
– G1 et G2 ont trois exemples en commun : G1 est défini par liés(X, Y ) ← r(X, Y ),
et G2 est défini par liés(X, Y ) ← s(X, Y ). Il existe exactement trois exemples reliés
directement par les deux types d’arêtes r et s (liés(a, f ),liés(e, k) et liés(j, n)). G 1
et G2 ne partagent pas d’autres objets avec les autres groupes.
– G4 et G5 ont un exemple en commun, et ces groupes sont les plus similaires. G4 ∪ G5
est caractérisé par la clause liés(X, Y ) ← s(X, Z), liés(Z, Y ).
– G3 ne partage aucun exemple avec d’autres groupes. Il est défini par la clause
récursive liés(X, Y ) ← r(X, Z), liés(Z, Y ) et G3 contient tous les exemples couverts
par cette clause, à l’exception de certains exemples, qui sont également couverts par
la clause récursive liés(X, Y ) ← s(X, Z), liés(Z, Y ).
Dans cet exemple, les intersections entre les groupes ne sont pas aussi importantes que
l’on pourrait s’y attendre. Ceci est dû, principalement, aux spécificités qui augmentent la
similarité entre certains exemples et réduisent la possibilité pour certains exemples d’être
affectés (dans l’algorithme PoBOC) à plusieurs pôles, puisque cette fonction d’affectation
est basée sur les similarités relatives. Cependant, il est préférable d’obtenir des groupes “in-
complets” puisque pour chaque groupe, on tente d’apprendre une unique clause. Ainsi, la
décomposition obtenue sur cet exemple est pertinente et permet de produire une définition
satisfaisante du concept liés.
4.7 Conclusion
Dans ce chapitre, nous avons montré qu’il était possible d’étendre le système RuLe-
Clust, à l’apprentissage de règles logiques. Cette extension nécessite cependant de spécifier
un langage de description adapté pour définir une mesure de similarité pertinente sur
ce type d’objets. Cette mesure a été évaluée et validée sur la base Mutagénèse, faisant
référence dans le domaine de la programmation logique inductive.
La phase de décomposition utilise l’algorithme PoBOC, qui a pu être évalué sur quatre
exemples pour lesquels une organisation naturelle des exemples positifs du concept cible,
était connue. Sur chacun des exemples, PoBOC s’est révélé être performant, tant du point
de vue du nombre de groupes retournés, que de la constitution même de ces groupes et
des intersections proposées.
Sur la base Mutagénèse, PoBOC n’a pu être testé, en l’absence d’une stratégie efficace
de construction de règles. En effet, la réduction de l’espace de recherche, engendrée par
notre approche de décomposition, n’est pas suffisante pour permettre le test d’existence
d’une clause caractéristique en temps raisonnable. Contrairement au cas propositionnel,
on ne peut pas tester à l’avance l’existence d’une clause caractéristique pour un sous-
concept donné, et la recherche d’une telle clause est coûteuse. Nous envisageons alors une
stratégie basée sur le test de couverture des exemples négatifs par un plus petit généralisé
d’exemples d’un groupe.
126
5
Classification de données
textuelles pour la Recherche
d’Information
Sommaire
5.1 Introduction à la Recherche d’Information . . . . . . . . . . . . 128
5.2 Mesure de similarité et données textuelles . . . . . . . . . . . . 129
5.2.1 Évaluer la similarité entre les mots . . . . . . . . . . . . . . . . . 129
5.2.2 Les mesures basées sur les cooccurrences . . . . . . . . . . . . . . 129
5.2.3 Les mesure basées sur des distributions . . . . . . . . . . . . . . 130
5.2.4 Les mesures utilisant les connaissances extérieures . . . . . . . . 130
5.2.5 Un nouvel indice de proximité basé sur le Web . . . . . . . . . . 131
5.2.6 Expérimentations sur l’indice de proximité contextuelle . . . . . 134
5.3 Classification de mots . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.3.1 Travaux antérieurs . . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.3.2 PoBOC : un algorithme approprié ? . . . . . . . . . . . . . . . . 138
5.3.3 Expérimentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
5.4 Regroupement de mots pour la classification de documents . . 143
5.4.1 Introduction à la classification de documents . . . . . . . . . . . 143
5.4.2 Classification supervisée de documents . . . . . . . . . . . . . . . 143
5.4.3 Réduction de la dimension de l’espace de description des documents146
5.4.4 Le classifieur naı̈f de Bayes pour la classification de documents . 149
5.4.5 Regroupement distributionnel agglomératif . . . . . . . . . . . . 150
5.4.6 Partitionnement par optimisation d’une fonction de qualité, issue
de la théorie de l’information . . . . . . . . . . . . . . . . . . . . 152
5.4.7 Réduction de l’espace par pseudo-partitionnement du vocabulaire 152
5.4.8 Étude expérimentale . . . . . . . . . . . . . . . . . . . . . . . . . 158
5.5 Étude prospective : application à l’analyse des genres . . . . . 161
127
5.1. Introduction à la Recherche d’Information
On s’intéresse dans ce travail à la recherche d’information qui porte sur des gisements
d’information contenant majoritairement du texte.
L’étude que nous abordons dans ce chapitre, porte sur la phase d’indexation. Nous nous
focalisons dans un premier temps sur une représentation à partir de chaı̂nes de caractères
contenues dans les documents. Plus précisément nous nous intéressons successivement aux
mesures permettant d’évaluer la proximité contextuelle de deux mots, puis aux méthodes
de regroupement aboutissant à la formation de classes sémantiques, enfin nous utilisons
128
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
ces derniers éléments pour indexer les documents dans un processus de classification su-
pervisée.
Pour terminer, nous tentons d’apporter quelques justifications aux travaux récents,
qui consistent à représenter les informations textuelles à un niveau supérieur, en utilisant
l’information morpho-syntaxique contenue dans les documents.
129
5.2. Mesure de similarité et données textuelles
Il s’agit, cette fois, d’un indice de similarité (les propriétés de symétrie et minimalité étant
vérifiées.
Enfin, le coefficient de Dice [43] introduit par [170] et la mesure de Jaccard [90], sont
adaptés au contexte de l’analyse des proximités entre mots :
2.p(wt , ws )
Dice(wt , ws ) =
p(wt ) + p(ws )
p(wt , ws )
J(wt , ws ) =
p(wt ) + p(ws ) − p(wt , ws )
La mesure de Jaccard (aussi appelée mesure de Tanimoto) correspond en fait au rapport
du nombre de documents où wt et ws cooccurrent sur le nombre de documents où l’un des
deux mots, au moins, apparaı̂t. Ces deux dernières mesures sont également des indices de
similarité.
Nous proposerons par la suite de comparer et d’adapter les mesures précédentes. Cette
étude expérimentale débouchera sur la définition d’une nouvelle mesure, validée sur un
exemple et permettant ainsi l’évaluation de l’algorithme PoBOC, sur cet exemple.
130
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
souvent, ces connaissances sont formalisées par une taxonomie de concepts 3 , dans laquelle
sont analysées les positions respectives des termes à comparer, notamment par le repérage
du concept le plus spécifique (C) contenant les deux termes.
Par exemple, [185] utilise les liens “IS-A” dans un telle taxonomie, en observant la
“position”4 de C, par rapport à la racine et aux termes cibles. Plus C est situé proche des
termes cibles et éloigné de la racine, plus les termes seront considérés similaires.
[113] ou encore [154] se situent à un niveau plus général, en pondérant chaque concept
de la taxonomie par la probabilité qu’un objet sélectionné aléatoirement appartienne à ce
concept. La mesure de similarité obtenue tient compte notamment du poids associé au
concept le plus spécifique (C) contenant les deux termes cibles.
La principale limite de ce type d’approche est que, le plus souvent, il n’existe pas de
base de connaissance spécifique à un domaine et suffisamment structurée.
131
5.2. Mesure de similarité et données textuelles
Cour
hits Salade Restaurant Asperge Magistrat Citoyen Avocat
Suprême
Salade 567000 - - - - - -
Restaurant 114000 49900000 - - - - -
Asperge 11200 2240 83800 - - - -
Cour Suprême 190 1410 97 173000 - - -
Magistrat 364 15600 198 2950 620000 - -
Citoyen 1560 30800 534 22400 26800 948000 -
Avocat 26200 49500 2870 37700 53600 64200 114000
Tab. 5.1 – Nombre de pages Web retournées pour chaque requête de un ou deux mots.
On observe, dans cette matrice, une cohérence globale des valeurs. Les plus faibles
scores sont obtenus pour les couples de mots (Court Suprême, Asperge), (Court Suprême,
Salade) et (Magistrat, Asperge) qui correspondent effectivement à des mots que l’on aurait
peu tendance à utiliser ensembles. En revanche, les plus fortes valeurs observées sont
pour les couples (Salade, Restaurant), (Avocat, Citoyen), et (Avocat, Magistrat), que l’on
imagine très bien apparaı̂tre dans les mêmes documents.
Cour
hits Salade Restaurant Asperge Magistrat Citoyen Avocat
Suprême
Salade -19,11 -27,89 -22,02 -28,94 -29,85 -28,36 -24,56
...
Magistrat -29,85 -30,89 -27,97 -25,12 -19,24 -24,39 -23,65
...
Avocat -24,56 -30,10 -24,99 -22,32 -23,65 -24,00 -20,12
L’évaluation des récurrences contextuelles peut être réalisée par l’une des mesures
présentées dans la section 5.2.2. Nous proposerons, par la suite, une étude expérimentale
pour choisir la mesure la plus appropriée. Par exemple, la mesure d’Information Mutuelle
transforme la matrice de cooccurrences précédente, en matrice de proximités, présentée
dans le tableau 5.2.
Dans ce tableau, les proximités révélées sont une nouvelle fois cohérentes ; si l’on
construit pour chacun des trois mots Salade, Magistrat et Avocat, la liste ordonnée des
mots avec lesquels ils sont le plus susceptibles d’apparaı̂tre, on obtient les trois listes sui-
vantes :
Ces listes doivent être interprétées de la façon suivante : “les mots Asperge et salade
sont davantage susceptibles d’être observés dans un même document, que les mots Sa-
lade et Magistrat”. Comme nous l’avons déjà mentionné, ce type de mesure, basée sur
132
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
les cooccurrences, ne permet pas de détecter les relations telles que la synonymie. Nous
choisissons, pour aboutir à un indice de proximité contextuelle, d’analyser les distributions
des mots sur l’ensemble de mots lui-même.
Pour ce faire, on considère chaque ligne de la matrice de proximité (tableau 5.2),
comme un vecteur contextuel, associé à un mot. Par exemple, le vecteur contextuel du
mot M agistrat est :
contexte(magistrat) = (−29.85, −30.89, −27.97, −25.12, −19.24, −24.39, −23.65)
Dans la tâche de regroupement contextuel de mots, que nous visons ici, la taille du vec-
teur correspond au nombre de mots à traiter. Chaque mot est décrit par sa proximité
(susceptibilité d’apparaı̂tre dans les mêmes documents) avec les autres mots, et la proxi-
mité contextuelle entre deux mots peut être évaluée par comparaison des deux vecteurs
caractéristiques. Chaque mot est en quelque sorte utilisé pour décrire les autres mots. Nous
utilisons le coefficient de corrélation pour comparer deux vecteurs. Sur notre exemple, nous
obtenons les coefficients suivants :
Ces coefficients reflètent effectivement nos intuitions sémantiques sur les relations entre
les trois mots comparés. Les mots Salade et M agistrat font référence à des concepts très
différents et l’indice de proximité contextuel renvoie une valeur négative. En revanche, le
mot Avocat est ambigu puisqu’il peut aussi bien signifier une “personne dont le métier est
de défendre quelqu’un ou quelque chose” que le “fruit de l’avocatier” ; le mot Avocat est un
homonyme qui appartient à la fois au concept de la Justice et à celui de la Gastronomie,
ce qui ce manifeste par des indices de proximités contextuelles positifs.
avec Icooc. (wi , wj ) calculé à partir des valeurs hits(wi ), hits(wj ) et hits(wi , wj ).
L’indice de proximité contextuelle que nous proposons ici, noté Icont. , compare deux
mots wi et wj en calculant le coefficient de corrélation sur les deux vecteurs correspondant
−
→ et −
w w→:
i j
P
−
→ −→ →
− →
− (xi − x̄)(yi − ȳ)
Icont. (wi , wj ) = ρ(wi , wj ) où ρ( x , y ) = pP i P
2 2
i (xi − x̄) . i (yi − ȳ)
Notons que cet indice (Icont. ) dépend du premier indice Icooc. , dont les résultats
dépendent, à leur tour, du moteur de recherche utilisé sur le Web. Dans les expérimentations
133
5.2. Mesure de similarité et données textuelles
qui suivent, nous tenterons de déterminer empiriquement l’indice Icooc. le plus approprié.
Concernant le choix du moteur, quelques tests préliminaires ont permis de dégager des
résultats davantage pertinents avec les moteurs de recherche Altavista et yahoo 6 , qu’avec
google7 ou encore alltheweb8 . Cependant, nous ne présentons pas d’étude comparative sur
ce sujet, qui pourrait faire l’objet d’un travail plus approfondi, notamment par l’analyse
des conséquences des différentes méthodes d’indexation et d’interrogation par les moteurs,
sur les proximités contextuelles.
Web Mondial : ce domaine est représenté par 13 mots-clés, rencontrés dans des publi-
cations de la 11ème conférence internationale sur le Web Mondial (11th International
World Wide Web Conference, WWW’2002). Ces mots sont répertoriés dans le ta-
bleau 5.4.
6
www.yahoo.com
7
www.google.com
8
www.alltheweb.com
134
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
Intelligence Artificielle : le dernier ensemble de mots-clés est issu des articles publiés
dans la revue d’Intelligence Artificielle Journal of Japanese Society for Artificial
Intelligence (JSAI’1997). le tableau 5.5 présente les 14 mots-clés retenus pour ce
domaine.
Classification Rule, Macro Rule, Concept Learning, Constructive Induction,
Colored Digraph, Logic Programming, Problem Solving, Program Transformation,
Unfolding, Control of Computation, Natural Language Processing, Ill-Formedness,
Robust Parsing, Integration.
Notons qu’il n’y a pas de restriction concernant la forme et la généralité des mots-clés :
certains mots sont des unités polylexicales (Content Distribution Networks), d’autres sont
monolexicales (Tagging) ; ils peuvent être assez généraux (Push, integration, etc.) ou au
contraire spécifiques (HTTP).
Évaluation de l’indice
A partir de cet ensemble de mots-clés (noté V ), l’évaluation d’une mesure de proximité
entre mots consiste à comparer les valeurs de proximité pour les paires de mots d’un même
domaine, avec les valeurs obtenues pour des paires de mots de domaines différents.
Les mesures comparées sont les suivantes :
– les indices Icooc. , basés sur les cooccurrences uniquement : la mesure d’information
mutuelle (IM ), la méthode des mots associés (ISDOC ), le coefficient de Dice (IDice ),
la mesure de Jaccard (J),
– les indices Icont. de proximité contextuelle associés aux quatre indices précédents.
Toutes ces mesures sont évaluées en utilisant le moteur de recherche Altavista.
Les matrices de proximité correspondant à chacun de ces huit indices, sont présentées
dans la figure 5.1. Les matrices indicées (a) correspondent aux indices Icooc. et les matrices
indicées (b) à l’indice Icont. associé. Les couples (1,2,3, et 4) correspondent respectivement
aux indices IM , ISDOC , IDice et J. Par exemple, la matrice (3.a) contient les valeurs
{IDice (wi , wj )}wi ,wj ∈V obtenues par le calcul suivant :
2.hits(wi , wj )
IDice (wi , wj ) =
hits(wi ) + hits(wj )
La matrice (3.b) contient les valeurs de l’indice de proximité contextuelle associé à I Dice ,
{Icont. (−
→, −
w →
i wj )}wi ,wj ∈V (cf. section 5.2.5).
Dans les matrices, les mots-clés sont organisés par domaine, constituant des blocs sur
la diagonale. Les cases grisées correspondent aux valeurs de proximité élevées 9 dans le cas
9
Le seuil est choisi de telle manière que environ un tiers des cellules sont grisées (plus fortes proximités).
135
5.2. Mesure de similarité et données textuelles
Fig. 5.1 – Matrices de proximité obtenues sur les 38 mots-clés : (a) indices de proximité
basés sur les cooccurrences, (b) indices de proximité contextuelle.
136
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
des matrices indicées (a), et aux coefficients positifs pour les matrices (b). Une mesure
pertinente devrait alors permettre de visualiser les trois blocs de cellules grisées, associés
aux trois domaines.
On observe tout d’abord que les matrices de droite (indicées b.) permettent de mieux
dégager les trois blocs, comparativement aux matrices de gauche (indicées a.), en particu-
lier pour le premier bloc (LREC). Ceci valide de manière globale, l’indice Icont. que nous
proposons. Il semble en effet, que l’analyse des vecteurs contextuels produise un indice
plus pertinent que l’observation des cooccurrences uniquement.
Les paires de matrices 2, 3 et 4 sont, visuellement assez semblables ; un bloc corres-
pondant aux mots du domaine (LREC) est retrouvé, alors que les deux autres domaines
apparaissent moins distinctement. La matrice de proximité contextuelle associée à la me-
sure d’information mutuelle (matrice 1.b), est incontestablement la plus révélatrice de
l’organisation des mots en trois domaines ; ces trois domaines sont distinctement observés,
et on note que certains mots semblent communs à plusieurs domaines. Cette dernière
observation entretient l’idée que l’organisation de données en groupes non-disjoints est
particulièrement adaptée au traitement d’objets textuels, et notamment au traitement des
mots.
Après avoir proposé puis validé empiriquement un indice de proximité contextuelle
entre mots, nous choisissons d’utiliser cet indice pour la tâche d’organisation des mots en
classes contextuelles. Dans ce qui suit, nous utiliserons le jeu de données test établi, ainsi
que l’indice Icont. associé à la mesure d’information mutuelle, pour évaluer l’algorithme de
regroupement PoBOC.
137
5.3. Classification de mots
générées par [175], sont obtenues par l’analyse de la structure du thésaurus Roget, de même
que [2] utilise l’algorithme Cobweb à partir de descriptions syntaxiques et sémantiques des
mots, en se basant sur le thésaurus WordNet. Enfin, [53] recherche les schémas syntaxiques
récurrents pour identifier les associations entre mots (cette approche est également utilisée
dans le système ASIUM [59]). La réutilisation de ces systèmes nécessite donc, soit la donnée
d’une base de connaissance, ce qui est difficile à obtenir pour des domaines de spécialité,
soit une analyse syntaxique fine, ce qui peut devenir coûteux dans le cas de larges corpus.
D’autres approches, plus générales, commencent par définir les relations entre les mots,
à l’aide de poids ou de mesures de (dis)similarité. Ensuite, le processus de clustering peut
être considéré indépendamment. Par exemple, [89] considère les thèmes comme des com-
posantes connexes dans un réseau de termes, dont les liaisons sont pondérées relativement
aux caractéristiques morphologiques de ces termes. Malheureusement, par définition même
d’une composante connexe, les thèmes obtenus restent disjoints. D’autres algorithmes,
proposés dans les systèmes GALEX (Graph Analyzer for LEXicometry) [179], UNICON
(UNsupervised Induction of Concepts) [114] ou encore CBC (Clustering By Committees)
[138] proposent des processus de regroupement assez proches de celui utilisé dans PoBOC,
en recherchant un ensemble de “termes pôles” (GALEX) ou “committees” (CBC) aux-
quels sont affectés ensuite les mots non-traités. La méthodes des k-moyennes axiales [110],
présentée dans le chapitre 1, est également utilisée dans ce contexte. Toutes ces méthodes
sont orientées vers la construction de classes non-disjointes, cependant, selon le cas, elle
nécessitent la détermination a priori du nombre de classes ou d’un seuil d’affectation
général, et ne tiennent pas compte de la notion de densité pour constituer ces classes.
Ces dernières approches récentes, témoignent de l’intérêt croissant dans les commu-
nautés TAL et RI, pour les méthodes de clustering produisant des schémas non-disjoints.
Malgré tous ces efforts, et probablement à cause des limites que nous venons de citer, l’utili-
sation de méthodes simples et reconnues dans le domaine de l’apprentissage non-supervisé
mais faiblement performantes pour l’application (comme l’algorithme des k-moyennes),
est un reflexe difficile à atténuer [166, 143].
138
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
que nous avons défini en section précédente, correspond à un ensemble de mots qui lui
sont sémantiquement proches. Un groupe dense correspondra donc à un ensemble de mots
utilisés dans des contextes très similaires (e.g. des mots spécifiques appartenant à un
même domaine). Inversement, un groupe de faible densité correspondra à un ensemble
de mots dont les contextes sont globalement similaires (e.g. des mots plus généraux d’un
même domaine ou de plusieurs domaines sémantiquement proches). L’algorithme PoBOC
présente alors les dispositions pour extraire à la fois les concepts spécifiques à un domaine
et des thématiques abordées de façon plus générale.
Enfin et surtout, la méthode que nous avons proposé autorise un objet, en l’occurrence
ici un mot, à appartenir à plusieurs groupes. Nous avons noté dans la section précédente,
qu’un même mot peut être utilisé dans plusieurs contextes différents. Sur les deux concepts
“gastronomie” et “justice”, avocat est un exemple typique de mot appartenant au champ
lexical de chacun des deux concepts sémantiques. Dans l’évaluation portant sur les trois
domaines associés aux conférences et journaux scientifiques, nous avons observé que cer-
tains mots présentaient des coefficients de proximité positifs avec des mots de domaines
différents. L’organisation de ces mots en groupes disjoints reviendrait alors à ne reconnaı̂tre
qu’un seul contexte d’utilisation pour chaque mot. De même, il est intéressant de définir
des groupes “durs”11 , afin de conserver la contrainte liée à la simplification de l’ensemble
de données. En d’autres termes, il est important de pouvoir conserver une décision binaire
sur le fait que deux mots sont ou non en relation (dans un même groupe).
Nous venons d’énumérer un ensemble de caractéristiques qui laissent penser que l’al-
gorithme PoBOC est adapté à la tâche d’apprentissage de classes contextuelles à partir
d’un ensemble de mots. Il nous reste à présent à confirmer ces intuitions sur une situation
réelle.
5.3.3 Expérimentation
Nous utilisons le jeu de données constitué des 38 mots-clés issus des articles scientifiques
de conférences et journaux internationaux. Rappelons que nous avions construit, sur cette
base, une matrice de proximités contextuelles entre les mots, et que c’est cette matrice qui
est passée en paramètre de l’algorithme PoBOC.
La figure 5.2 présente le pseudo-partitionnement obtenu, sur ce jeu de données, avec
l’algorithme PoBOC. On observe alors 7 clusters non-disjoints, que nous avons organisés
de manière hiérarchique12 afin de mieux appréhender les proximités entre ces différents
groupes. Les mots apparaissant dans chacun des clusters sont étiquetés par le domaine
dont ils sont issus (LREC, JSAI et WWW pour les domaines Ressources du Langage,
Intelligence Artificielle et Web Mondial respectivement). Pour plus de lisibilité, les mots
se trouvant à l’intersection de plusieurs clusters sont dupliqués dans chacun de ces clusters.
On remarque en premier lieu que les 7 groupes obtenus sont plutôt homogènes, une
étiquette étant systématiquement majoritaire dans chacun de ces groupes. De plus, les
trois groupes obtenus au sommet de la hiérarchie correspondent assez fidèlement aux 3
domaines attendus :
• C1.1 , C1.2 ∪ C1.3 sont fusionnés dans C1 , et chacun de ces trois clusters contient ma-
joritairement les mots du domaine WWW ; le concept du Web Mondial est donc retrouvé
11
Nous opposons à groupes “durs”, les groupes “flous” définis par un ensemble de valeurs d’appartenance
des objets au groupe.
12
L’arbre hiérarchique est obtenu par l’algorithme agglomératif hiérarchique du lien simple.
139
5.3. Classification de mots
C1
C3
C2
C3.2
C1.1 C1.3 Annotation Guidelines (LREC)
HTTP (WWW) Content distribution networks (WWW) Bracketed Corpus (LREC)
Leases (WWW) Dynamic Data (WWW) Chinese Language Processing (LREC)
Pull (WWW) HTTP (WWW) Combining Systems (LREC)
Push (WWW) Leases (WWW) Machine Learning (LREC)
Scalability (WWW) Protocol design (WWW) Knowledge−Rich NLP (LREC)
World Wide Web (WWW) Scalability (WWW) Multilingual Corpora (LREC)
Quality Control (LREC) TCP Splice (WWW) Parallel Corpora (LREC)
Integration (JSAI) Web proxy (WWW) POS Tagging (LREC)
World Wide Web (WWW) C2.2 Integration (JSAI)
C1.2 Data consistency (WWW) C2.1 Machine Learning (LREC) Classification Rule (JSAI) Machine Learning (LREC) C3.1
Data dissemination (WWW) Classification Rule (JSAI) Macro Rule (JSAI) Tagging (LREC)
Dynamic data (WWW) Concept Learning (JSAI) Colored Digraph (JSAI) Knowledge−Rich NLP (LREC)
HTTP (WWW) Constructive Induction (JSAI) Logic Programming (JSAI) Parallel Corpora (LREC)
Protocol design (WWW) Logic Programming (JSAI) Problem solving (JSAI) Natural Language Processing (JSAI)
Scalability (WWW) Problem solving (JSAI) Program transformation (JSAI) Robust parsing (JSAI)
TCP Splice (WWW) Program transformation (JSAI)
Integration (JSAI)
dans le nœud C1 ,
• C2.1 , C2.2 sont fusionnés dans C2 , et chacun de ces deux clusters contient majo-
ritairement les mots du domaine JSAI ; le concept de l’Intelligence Artificielle est donc
retrouvé dans le nœud C2 ,
• C3.1 , C3.2 sont fusionnés dans C3 , et chacun de ces deux clusters contient majoritai-
rement les mots du domaine LREC ; le concept nommé Ressources du Langage est donc
retrouvé dans le nœud C3 .
Dans un deuxième temps, en observant de façon plus précise les groupes obtenus, on
note, par rapport à la classification de référence, les modifications suivantes :
– le mot Machine Learning, extrait d’un articles scientifique de la conférence LREC,
se retrouve entre autre dans le cluster C2.1 , contenant 6 autres mots, tous étiquetés
JSAI (cette remarque est encore amplifiée au niveau du groupe C2 ),
– les mots Natural Language Processing et Robust Parsing, tous deux extraits de com-
munications publiées dans le journal JSAI apparaissent dans des groupes de mots
(C3.1 et C3 ) majoritairement étiquetés LREC.
Ces modifications, qui sont comptabilisées comme des erreurs lorsque l’on compare le
schéma généré par PoBOC (noté P) avec la classification de référence (notée C), doivent
plutôt être interprétées comme une correction de C. En effet, le mot Machine Learning
par exemple, est rarement utilisé comme mot-clé pour un article présenté dans un journal
140
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
Inertie inter-clusters
6
Inertie intra-cluster
0.8 12
5
0.75 10
4
8
0.7
3
6
0.65 2
4
0.6 1
2 3 4 5 6 7 8 9 10 2 3 4 5 6 7 8 9 10
Nombre de clusters Nombre de clusters
141
5.3. Classification de mots
Inertie Inertie
Algorithme Nb. clusters Γinterne % Γexterne %
intra-cluster & inter-clusters %
PoBOC 0.88 0.80 5.79 4.54
k-médoı̈des 0.88 0.75 3.86 5.14
ALink 7 0.87 0.76 3.33 5.17
CLink 0.88 0.75 4.90 5.82
SLink 0.86 0.75 5.33 4.79
PoBOC 0.82 0.74 9.92 2.03
k-médoı̈des 0.82 0.74 8.34 2.24
ALink 3 0.83 0.71 8.84 2.24
CLink 0.79 0.73 9.72 2.24
SLink 0.16 0.14 28.05 1.73
Tab. 5.6 – Évaluation quantitative des schémas obtenus par différentes méthodes de clus-
tering.
Enfin, les tracés présentés en figure 5.3 indiquent l’évolution des indices relatifs (cf.
évaluation de PoBOC, chapitre 2), lorsque le paramètre k (nombre de clusters) augmente.
Ces résultats sont obtenus en effectuant une moyenne sur 10,000 schémas obtenus par
l’algorithme des k-médoı̈des.
On observe sur ces tracés, que les paramétrages k = 3 et k = 7 correspondent effective-
ment à deux configurations pertinentes. Cela ce manifeste par des “cassures” ou “coudes”
communs sur au moins deux des trois indices.
142
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
143
5.4. Regroupement de mots pour la classification de documents
Parmi les méthodes de classification automatique de documents, on peut citer, entre autre,
les arbres de décision avec l’utilisation, par exemple, de l’algorithme C4.5 [32], les règles
de décision avec le système CHARADE [130] ou encore les Machines à Support Vectoriel 16
(SVM) [93].
16
Également appelées “Séparateurs à Vaste Marge”.
144
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
Le problème de l’évaluation
L’existence de nombreuses mesures d’évaluation pour les classifieurs est révélatrice de
la difficulté de cette tâche. En effet, différents cas de figures sont envisageables :
Classification binaire simple : On considère que chaque document est étiqueté par une
seule classe, et que le classifieur décide de “la” classe d’appartenance. Dans ce cas, la
mesure traditionnelle de justesse17 , déjà utilisée dans le chapitre 3, permet d’évaluer
simplement, l’efficacité du classifieur. Rappelons que cette mesure est définie par
vp + vn
J=
vp + vn + f p + f n
où les notations vp, vn, f p et f n désignent respectivement le nombre de “vrais po-
sitifs”, de “vrais négatifs”, de “faux positifs” et de “faux négatifs”, définis dans les
tables de contingence présentées dans les tableaux 5.7. C’est dans cette situation de
classification binaire simple que se placeront nos expérimentations (section 5.4.8).
Classification binaire multiple : Chaque document d’entraı̂nement est étiqueté par
une ou plusieurs classes, et le classifieur peut décider de l’appartenance d’un docu-
ment test à une ou plusieurs classes. On fait alors appel aux mesures de précision et
de rappel, traditionnelles en RI. Pour une classe ci donnée, la précision (Pi ) mesure
la proportion de documents bien classés parmi ceux classés dans ci , tandis que le
17
Nous utilisons ici le terme “justesse”(en anglais “accuracy”), pour éviter la confusion avec le terme
“précision” qui sera utilisé par la suite pour désigner une autre mesure.
145
5.4. Regroupement de mots pour la classification de documents
rappel (Ri ) mesure la proportion de documents classés dans ci , parmi ceux qui sont
effectivement étiquetés ci .
vpi vpi
Pi = ; Ri =
vpi + f pi vpi + f ni
La précision et le rappel peuvent ensuite être évalués sur l’ensemble des classes
c1 , . . . , cm par l’une ou l’autre des méthodes suivantes :
• micro-précision/rappel :
vp vp
P̃ µ = ; R̃µ =
vp + f p vp + f n
• macro-précision/rappel :
Pm Pm
M i=1 Pi M i=1 Ri
P̃ = ; R̃ =
m m
D’autres critères combinant les notions de précision et de rappel sont proposés ; il
s’agit par exemple de la recherche du point d’équilibre (Break-even point) [6] ou de
la Fβ -mesure [181].
Classification semi-automatique : Chaque document est étiqueté par une ou plusieurs
classes et le classifieur renvoie, pour un document test donné, une liste de scores.
Pour tenir compte de ces valeurs, [189] propose la mesure de précision moyenne
sur 11 points (Eleven-point average precision). Cette mesure considère 11 “seuils”
(0.0, 0.1, . . . , 1.0) et calcule pour chacun de ces seuils, la précision et le rappel des
classifications binaires, issues des listes de scores seuillées.
146
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
Le seuil de fréquence de documents [189], par exemple, est fondé sur l’hypothèse que
les mots rares (apparaı̂ssant dans peu de documents) sont peu utiles ou peu influents dans
la prédiction des catégories (classes de documents). Il s’agit alors de calculer, pour chaque
mot w de V , le rapport Nw (D)/|D|, où D désigne le corpus d’entraı̂nement et Nw (D), le
nombre de documents contenant w dans D. Seuls les mots apparaı̂ssant dans le plus grand
nombre de documents sont retenus. Notons que l’utilisation de ce critère, suppose une
étape préalable de suppression des mots non pertinents (mots vides) comme nous l’avons
précisé dans la section précédente.
La mesure du χ2 [161], évalue la dépendance entre un mot w et une classe de documents
ci . Pour cela, le calcul suivant compare les proportions de documents contenant w ou ne
contenant pas w (w), dans la classe ci ou dans les documents des autres classes (ci ) :
Dans cette définition, p(w, ci ), par exemple, désigne la probabilité que, pour un document
aléatoire d, le mot w n’occurre pas dans d et d appartient à la classe ci . Ces probabilités
sont estimées sur le corpus d’entraı̂nement D. Deux configurations sont ensuite possibles
pour évaluer l’indépendance de w par rapport à l’ensemble des classes :
m
X
2
χ (w) = p(ci ).χ2 (w, ci ) (moyenne pondérée)
i=1
Les mots selectionnés sont ceux qui sont les moins indépendants des classes (valeurs élevées
pour ces mesures).
De nombreuses autres mesures utilisent des comparaisons proches de celles présentées
dans la mesure du χ2 . On peut noter par exemple, le facteur d’association DIA [62], le
gain d’information [111] ou encore l’information mutuelle [105]. Sur les expérimentations
effectuées, ces mesures permettent de réduire la dimension de l’espace jusqu’à un facteur
100, sans perte, voire avec un léger gain de performance sur la classification.
On oppose aux méthodes de sélection d’attributs, les méthodes d’extraction d’attributs,
dont les deux techniques à suivre font partie.
147
5.4. Regroupement de mots pour la classification de documents
Finalement, cette méthode est une manière de découvrir la structure sémantique latente
(cachée) du vocabulaire.
La capacité de LSI à réduire la dimension de l’espace de description des documents, est
supérieure aux approches par sélection d’attributs. Cependant, les nouvelles dimensions
extraites sont difficilement interprétables.
Récemment, T. Hofmann proposait une alternative davantage formelle : le modèle
génératif pLSI (probabilistic Latent Semantic Indexing) [85]. L’approche pLSI considère
que chaque mot est généré par un thème et chaque thème est modélisé par une loi multino-
miale, dont les paramètres sont approximés par l’algorithme EM. On peut alors considérer
qu’un document est généré par un mélange de lois de probabilités (différents thèmes). Ce
dernier point est intéréssant car, contrairement à la plupart des approches d’indexation,
la méthode pLSI ne fixe pas le document comme unité thématique de base et prend en
compte le fait qu’un document puisse faire référence à plusieurs thèmes.
148
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
ADC et ITDC, sur lesquels nous comparerons notre approche de clustering avec re-
couvrements. Cette dernière sera présentée immédiatement après. Enfin, nous propose-
rons une première série d’expérimentations sur les deux corpus 20Newsgroup [104] et
Reuters-2157818 , traditionnellement utilisés comme corpus de référence pour l’évaluation
de systèmes de classification automatique de documents.
Dans la suite, nous utilisons les notations suivantes : le corpus d’entraı̂nement est
noté D = {d1 , . . . , dn }, le vocabulaire extrait de D est noté V = {w1 , . . . , wl } et C =
{c1 , . . . , cm } correspond aux classes (étiquettes des documents). Enfin, N (wt , di ) désigne
le nombre d’occurrences du mot wt dans le document di .
Cette expression est obtenue sous l’hypothèse d’indépendance entre les mots (notament
sur l’ordre d’apparition des mots), correspondant ici à l’hypothèse “naı̈ve” de Bayes. On
sait que cette hypothèse n’est pas vérifiée, cependant les études précédentes montrent qu’en
pratique, les performances du classifieur naı̈f de Bayes pour la classification de documents
restent bonnes sous cette hypothèse d’indépendance [49]. Dans l’équation (5.1), p(w t |cj )
est estimée sur le corpus d’entraı̂nement via la règle de succession de Laplace (5.2) :
X
1+ N (wt , di )
{di ∈cj }
p(wt |cj ) ≈ X X (5.2)
l+ N (ws , di )
{ws ∈V } {di ∈cj }
Pour classer un nouveau document d, on observe la probabilité a priori p(cj |d). Ainsi,
la classe prédite pour le document d sera celle qui maximize cette probabilité, calculée par
la règle de Bayes (5.3) :
p(cj )p(d|cj )
p(cj |d) = (5.3)
p(d)
Par étapes succéssives de transformations et simplifications mathématiques 19 sur
l’équation (5.3), le classifieur de Bayes peut être reformulé ainsi :
log p(cj ) X
c∗ (d) = arg max + p(wt |d) log p(wt |cj ) (5.4)
j=1...m |d|
{wt ∈V }
Dans cette dernière équation, p(cj ) est donnée par le rapport du nombre de documents
étiquetés cj dans D sur le nombre de documents dans D.
18
http ://www.research.att.com/∼lewis/reuters21578.html
19
Pour plus de détails, voir [42]
149
5.4. Regroupement de mots pour la classification de documents
m
X p(cj |wt )
DKL (p(C|wt )||p(C|ws )) = p(cj |wt ) log (5.7)
p(cj |ws )
j=1
Cependant cette mesure n’est pas symétrique et n’est pas définie dans le cas où la
probabilité p(cj |ws ) est nulle. En pratique on utilise alors plutôt la “divergence de KL à
la moyenne” (5.8) :
150
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
0
DKL (p(C|wt )||p(C|ws )) = πt .DKL (p(C|wt )||p(C|wt ∨ws ))+πs .DKL (p(C|ws )||p(C|wt ∨ws ))
(5.8)
Dans l’équation (5.8), p(cj |wt ∨ ws ) est définie par
πt πs
p(cj |wt ) + p(cj |ws ) avec πt = p(wt ).
πt + π s πt + π s
0
DKL vérifie les propriétés d’un indice de dissimilarité entre deux distributions. C’est
cet indice que nous utiliserons dans l’approche que nous proposerons par la suite (cf.
section 5.4.7).
La méthode ADC utilise donc l’indice DKL 0 pour regrouper les mots avec l’algorithme
de clustering présenté en figure 5.4.
Cet algorithme procède par fusions successives des deux plus proches clusters. Il est
incrémental et donc adapté au traitement d’ensembles importants de données. La com-
plexité de l’algorithme est en O(lk 2 m) avec l, k et m correspondant respectivement aux
nombres de mots, clusters et classes (avec k, m l).
151
5.4. Regroupement de mots pour la classification de documents
[42] montrent que la fonction objective I(C; V ) − I(C; W), peut se réécrire plus sim-
plement par la double somme suivante :
k
X X
I(C; V ) − I(C; W) = πt .DKL (p(C|wt )||p(C|Wj )) (5.10)
j=1 wt ∈Wj
152
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
4. Si la variation de la fonction objective (5.10) est faible (e.g. < 10−3 ) alors
STOP
Sinon retourner à l’étape 2.
153
5.4. Regroupement de mots pour la classification de documents
(5.11)
X p(wt )
p(ci |Wj ) = p(ci |wt )
p(Wj )
wt ∈Wj
Si la partition P1 a été établie, on a p(cj |d) = p(cj |W1 ∪ws ). Par le système d’équations
(5.11) et les hypothèses de distribution des mots sur les classes, on en déduit que p(c A |d)
p(cB |d) d’où l’affectation de d à la classe A. En revanche, si c’est la partition P2 qui est
établie, le document d sera classé dans B.
En généralisant cet exemple, si beaucoup de mots “ambigus” apparaı̂ssent dans un
document test, le biais induit par un partitionnement strict du vocabulaire peut entraı̂ner
une perte d’information importante dans la description des documents et ainsi produire
des erreurs de classification en conséquence.
Ce phénomène peut s’expliquer également dans un cadre sémantique. Par exemple, si
l’on considère que les deux classes A et B correspondent à des documents portant sur
les thématiques respectives de la “justice” et de la “gastronomie”. Ces deux thématiques
semblent bien différentes puisqu’elles possèdent chacune leur propre terminologie. Sup-
posons alors que les deux ensembles de mots suivants ont été extraits du corpus d’en-
traı̂nement : W1 = {Court Suprême, Magistrat, Citoyen, Avocat, ... } et W 2 = { Restau-
rant, Salade, Asperge, Avocat, ...}. Le mot ws =“avocat” est polysémique et appartient
aussi bien à la thématique de la “justice”21 qu’à celle de la “gastronomie”22 . Dans la
construction d’une partition stricte du vocabulaire extrait, ws sera inclu dans l’un des
deux groupes W1 ou W2 exclusivement, ce qui revient à conserver l’un des deux sens
observés de ce mots et à ignorer le second.
L’exemple précédent traite d’une situation extrême. Cependant on peut facilement
constater que beaucoup de termes sont partagés par plusieurs documents, dans des contextes
sémantiques distincts, avec différents degrés d’implication.
Nous proposons de supprimer la contrainte liée à la construction de partitions strictes,
en utilisant un algorithme de clustering autorisant les recouvrements entre les clusters. Les
clusters obtenus forment alors une pseudo-partition de l’ensemble des objets. Ces intersec-
tions entre clusters nécessitent une adaptation du modèle probabiliste défini jusqu’alors.
Le système proposé en (5.11) se redéfini par :
X
p(Wj ) = p(Wj |wt )p(wt )
{wt ∈V }
(5.12)
1 X
p(ci |Wj ) = p(Wj |wt )p(wt )p(ci |wt ).
p(Wj )
{wt ∈V }
21
Par exemple Le réquisitoire de l’avocat était brillant.
22
Par exemple Ce restaurant propose une délicieuse salade d’avocat.
154
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
Dans (5.12), le terme p(Wj |wt ) doit être adapté au type de schéma utilisé. Jusqu’à
présent, pour des schémas de partitionnement stricts, chaque objet appartient exactement
à un cluster, p(Wj |wt ) pouvait alors s’écrire :
1 si wt ∈ Wj
p(Wj |wt ) = (5.13)
0 sinon.
ce qui vérifie bien la propriété de base suivante :
X
p(Wj |wt ) = 1 (5.14)
Wj ∈W
Il reste alors à définir la probabilité p(Wj |wt ) dans le cas de schémas avec recou-
vrements. Lorsqu’un objet appartient à plusieurs clusters, on choisira de modéliser cette
probabilité par une loi uniforme. Pour un mot wt appartenant à n clusters, on aura :
1
p(Wj |wt ) = n si wt ∈ W (5.15)
0 sinon.
Remarque. Si l’on devait définir la probabilité p(Wj |wt ) dans le cas de schémas
de partitionnement flous, on utiliserait les fonctions d’appartenance (probabi-
listes) {uj (wt )}j=1...k d’un mot wt à un groupe Wj , et on aurait23 :
p(Wj |wt ) = uj (wt ) (5.16)
♦
155
5.4. Regroupement de mots pour la classification de documents
Étape 1.
Ordonner V via l’information mutuelle avec la variable de classe I(w; C)
Construire le sous-vocabulaire V 0 ⊂ V , constitué des M premiers mots de V
(selon l’ordre établi)
Construire la matrice de dissimilarité D sur V 0 (par 5.8) telle que
0
d(wt , ws ) = DKL (p(C|wt )||p(C|ws ))
Étape 2.
Exécuter PoBOC(V 0 , D) afin d’obtenir une pseudo-partition W 0 de V 0
Pour chaque cluster Wj ∈ W, calculer p(Wj ) et p(C|Wj ) par 5.12
Étape 3.
Pour chaque mot wt ∈ V \ V 0 (dans l’ordre établi) :
• Affecter(wt , W, f ) (cf. figure 5.7)
• Pour chaque cluster Wj modifié, recalculer p(Wj ) et p(C|Wj )
Étape 4.
Tant que W est modifiée et moins de τ itérations :
Pour chaque mot wt ∈ V : Affecter(wt , W, f )
Pour chaque cluster Wj ∈ W : recalculer p(Wj ) et p(C|Wj )
156
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
Procedure Affecter(wt , W, f )
L’étape 2 exécute l’algorithme PoBOC sur l’ensemble V 0 , auquel est associé une matrice
de dissimilarité D de taille M × M et telle que d(ws , wt ) = DKL0 (p(C|w )||p(C|w )).
s t
V 0 est alors partitionné en k clusters non-disjoints, avec k déterminé automatique-
ment. Cette étape peut être vue comme l’initialisation de l’algorithme et cette initia-
lisation diffère de l’approche ADC, qui débute avec uniquement des singletons, et de
l’algorithme ITDC qui scinde ou fusionne “arbitrairement” une première partition
de V afin d’obtenir le nombre désiré de clusters. Parceque les groupes constitués sont
non-disjoints et que le système propose automatiquement un nombre approprié de
groupes, on peut supposer que cette initialisation est à la fois plus précise et plus
proche de l’organisation réelle des mots entre eux.
L’étape 3 utilise l’heuristique de multi-affectations de PoBOC (cf. chapitre 2) pour
intégrer les |V | − M mots restants (en suivant l’ordre établi) parmi les k clusters
initiaux. Nous choisissons de contrôler les multi-affectations par l’utilisation d’un
paramètre (f ) dont le principe s’apparente à celui d’un fuzzifier pour les méthodes
de clustering flou. Pour f = 0 la partition obtenue est stricte, le nombre d’affecta-
tions augmente lorsque f augmente, jusqu’à f = 1 et dans ce cas chaque objet est
affecté à chaque clusters24 . Notons que pour f = 1/2, on se ramène aux conditions
d’affectation par défaut, comme présenté dans le chapitre 2. Nous redéfinissons la
procédure d’affectations dans la figure 5.7, en intégrant ce paramètre.
Notons que la stratégie globale d’affectations est adaptative, autrement-dit, les ca-
ractéristiques des clusters sont systématiquement recalculées après l’ajout d’un objet.
On sait que les approches adaptatives permettent d’accéder plus rapidement à un
24
Tous les clusers sont identiques et contiennent tous les objets.
157
5.4. Regroupement de mots pour la classification de documents
158
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
k=8 k=5
k=12 k=6
k=14 84 k=7
80 k=22 k=9
k=36 k=12
k=82 k=14
k=232 k=18
k=36
82 k=58
k=76
70
80
Taux de bonne classification (en %)
76
50
74
40
72
30 70
0 5 10 15 20 25 30 35 40 0 5 10 15 20 25 30 35 40
Proportion d’intersections (en %) Proportions d’intersections (en %)
test (40%). A partir du corpus d’entraı̂nement, 22183 mots sont extraits par stemmati-
sation et suppression des mots vides (utilisation d’une stoplist) et des mots apparaissant
dans moins de trois documents.
Le corpus Reuters-21578 se divise en 9603 documents pour l’ensemble d’entraı̂nement
et 3299 documents tests, en utilisant la collection modifiée “ModApte” [6]. Ces documents
sont organisés autour de 118 classes non-exclusives (un document peut être étiqueté par
plusieurs classes différentes). Par un processus similaire au précédent, 7680 mots sont
extraits du corpus d’entraı̂nement.
Si cette classe correspond à l’étiquette (ou l’une des étiquettes) proposée(s) pour ce docu-
ment, on le considère bien classé. La performance du classifieur est alors quantifiée par le
rapport du nombre de documents bien classés sur le nombre total de documents tests.
L’évaluation est effectuée sur une exécution, en utilisant le découpage pré-défini des
ensembles d’entraı̂nement et de test. Précisons que les paramètres du classifieur de Bayes
159
5.4. Regroupement de mots pour la classification de documents
sont appris sur les corpus d’entraı̂nement uniquement, puis évalués sur les corpus de test.
Il en va de même pour l’étape de clustering supervisée basée sur des mesures liées aux
distributions des mots sur les classes (divergence de KL, fonction objective de ITDC, etc.).
Sur les deux corpus on observe l’influence des intersections entre clusters sur les perfor-
mances du classifieur induit (figure 5.8). Les “proportions d’intersections” sont calculées
sur le pseudo-partitionnement final W du vocabulaire initial V :
X
|Wj |
Wj ∈W
Int(W) = −1
|V |
P
Pour f = 0, le schéma de partitionnement obtenu est strict donc Wj ∈W |Wj | = |V | et la
proportion d’intersections est nulle. Lorsque f augmente, cet indice augmente également.
On observe sur la figure 5.8 que la tendance générale des tracés, est identique sur
les deux corpus, à savoir une amélioration du classifieur lorsqu’on autorise jusqu’à 10%
à 20% d’intersections, puis une dégradation de ses performances, au delà de 30%. On
note également que les améliorations indiquées sont plus importantes pour des schémas
constitués de peu de clusters (jusqu’à 20 clusters) et disparaissent progressivement lorsque
le nombre de clusters augmente.
On déduit de cette première étude, que le pseudo-partitionnement du vocabulaire est
particulièrement indiqué lorsque l’on souhaite décrire l’ensemble des documents avec peu
d’attributs. D’autre part, il existe certaines conditions à vérifier pour que les intersections
entre clusters influencent positivement la description des documents, et donc indirecte-
ment la performance du classifieur. Ces conditions portent notamment sur la proportion
d’intersections autorisées. Empiriquement, les expériences réalisées sur les deux corpus
s’accordent sur une proportion comprise entre 10% et 20%. Cet intervale de valeurs est
globalement respecté pour le paramétrage f = 0.3 sur le corpus Newsgroup et f = 0.2 sur
le corpus Reuters. Nous retenons donc ces deux paramètres, pour comparer DDOC avec
ADC et ITDC, dans l’expérience suivante.
La seconde expérience permet de comparer la méthode DDOC avec les deux autres
approches de réduction présentées : ADC (clustering hiérarchique) et ITDC (clustering
par partitionnement). Cette comparaison est effectuée dans des configurations identiques
(nombre de clusters, corpus d’entraı̂nement, de test, vocabulaire et classifieur identiques).
La différence concerne alors l’approche utilisée pour parvenir à un partitionnement appro-
prié du vocabulaire.
Les résultats de cette étude sont présentés dans les diagrammes de la figure 5.9. Sur
le corpus Newsgroup (diagramme de gauche), on observe une performance sensiblement
meilleure pour la méthode que nous proposons, particulièrement pour un nombre de clus-
ters limité (jusqu’à 36 clusters). C’est en partie sur ce corpus que la méthode ITDC
est évaluée dans [42]. On observe effectivement, que le regroupement agglomératif pro-
posé par ADC est légèrement moins pertinent que le partitionnement obtenu par ITDC.
160
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
d ba ^
!#" $ %&' () d^ eef!g#h i jkl mn
*+, d `a ^ o+e,g
ML - .,, p q,e,g
d_
K DAD
bba ^
HJC b^
IHH =E ~ b`a ^
F G=GE ~ b_
DA
c ba ^
B DC
c^
@A c `a ^
< =>? c_
} ~ ^ba ^
^^
^`a ^
^4_ N
/102435 678 9:;7 O P Q R S TVU TWO TYX NZQ P[X R\Q TYS]P
rtsuv4w xyz {|;y
En revanche, sur le corpus Reuters (diagramme de droite), la méthode ITDC est nette-
ment moins performante que les deux autres approches27 . Sur ce même corpus, le pseudo-
partitionnement proposé par l’algorithme PoBOC est réellement performant, toujours pour
des valeurs de k (nombre de groupes) limitées.
Par l’étude décrite dans cette section (5.4), nous avons proposé une avancée dans le
domaine de la recherche d’information, en présentant la méthode DDOC permettant de
réduire l’espace de description des documents par un pseudo-partitionnement du voca-
bulaire. Les expérimentations effectuées donnent des résultats encourageants, mais de-
vront être complétées, en utilisant par exemple, d’autres systèmes de classification (SVM,
arbres de décision, etc.) ainsi que des mesures d’évaluation plus précises (e.g. micro/macro
précision et rappel). Une étude devra également porter sur la recherche voire l’ajustement
automatique du paramètre f .
Plus généralement, ce travail nous a permi de confirmer l’hypothèse supportant ce
chapitre, à savoir qu’il est pertinent d’organiser les données textuelles en classes non-
disjointes. Par la même occasion, l’algorithme PoBOC a pu, une nouvelle fois être évalué
avec succès.
161
5.5. Étude prospective : application à l’analyse des genres
Pour évaluer l’hypothèse avancée, nous avons proposé une analyse exploratoire d’un
corpus d’articles scientifiques issus du domaine de la linguistique. Du fait de la thématique
de ce corpus, nous disposons d’experts capables d’évaluer la cohérence d’un résultat (par
exemple d’une sous-classe d’articles). Les documents, après analyse morphosyntaxique,
ont été représentés sur un ensemble de 130 variables descriptives (pourcentages de noms,
verbes, ponctuations, etc.). Deux sous-ensembles de variables ont été extraits de cet en-
semble initial, à partir d’une réflexion de la part des experts, appuyée par une étude
statistique fine (analyse des corrélations, analyse en composantes principales, etc.).
A partir de ces différentes descriptions, nous avons utilisé une distance classique (dans
un premier temps la distance euclidienne), pour proposer trois schémas de classification
via PoBOC. Notre approche de regroupement intéresse effectivement les experts pour trois
raisons :
– Le nombre de groupes étant proposé automatiquement, cela évite une analyse
fastidieuse qui consiste généralement à envisager différents schémas pour un nombre
de clusters évoluant de 5 en 5, en laissant l’expert rechercher une organisation qui
puisse convenir ;
– Les intersections entre les groupes sont adaptés à la tâche de regroupement de
documents, ces derniers peuvent en effet contenir plusieurs thématiques (ou sous-
thématiques) ou encore se situer entre deux genres ;
– Le traitement des outliers effectué par PoBOC, aide l’expert à identifier des do-
cuments atypiques afin de les étudier en particulier ou, au contraire de les supprimer
de son corpus afin de l’homogénéiser.
Nous donnons en annexe D une partie de l’analyse proposée par les experts, sur les
classifications obtenues à partir d’un ensemble de 224 documents. Globalement “les classes
obtenues semblent reliées thématiquement” et 14 clusters sur 44 (non réduits à un seul
documents) sont même jugés “thématiquement pertinents” (documents issus d’une même
revue voire d’un même numéro thématique). Quelques descripteurs semblent jouer un rôle
plus important dans la constitution de ces classes, comme par exemple les ponctuations,
dates, noms propres et verbes (notamment leur temps).
Un nombre non négligeable de documents donnent lieu à des clusters “singletons”
(entre 6 et 14 selon la description utilisée). De par notre connaissance de l’algorithme
PoBOC, on peut considérer que ces documents sont des “outliers”, autrement dit des
documents atypiques relativement au reste du corpus. En observant que la plupart de ces
28
On entend par discours, une production en langue naturelle, au sens large.
162
Chapitre 5. Classification de données textuelles pour la Recherche d’Information
documents proviennent des mêmes revues, l’expert pourrait être amené à reconsidérer la
légitimité de cette source dans la constitution de son corpus.
Cette première série d’expérimentations laisse penser à une validation, au moins par-
tielle, de l’hypothèse avancée, sur l’intégration du genre dans la définition du domaine. La
poursuite de cette étude concernera l’analyse (voire la confrontation avec) d’autres cor-
pus de documents moins spécialisés, l’intégration d’autres outils émanant du domaine de
l’apprentissage comme par exemple la sélection ou pondération automatique de variables
pertinentes, ou encore l’apprentissage de règles de caractérisation afin d’assister l’expert
dans son analyse.
163
5.5. Étude prospective : application à l’analyse des genres
164
Conclusion
Contributions
Nous nous sommes intéressés, dans cette thèse, à la construction de schémas de clas-
sification constitués de groupes non-disjoints. Cette étude est motivée par le constat que
les méthodes d’apprentissage non-supervisé génèrent des schémas stricts ou flous, sans
proposer d’alternatives, autres que dans le cas d’applications spécifiques. La construction
de schémas avec recouvrements est indispensable dans certaines situations, et souhaitable
dans beaucoup d’autres.
Notre première contribution concerne la proposition de l’algorithme PoBOC (Pole-
Based Overlapping Clustering) [30, 31]. Cet algorithme de clustering est basé sur la re-
cherche de pôles, définis par des cliques dans un graphe de dissimilarité, auxquels sont
attribués les objets lors d’une phase de “multi-affectation”. Outre le fait qu’il produise
un pseudo-partitionnement de l’ensemble des objets, cet algorithme présente certaines
caractéristiques intéressantes telles que : la prise en compte des voisinages locaux pour
générer des groupes de densités variées ou le choix automatique d’un nombre approprié de
groupes, évitant ainsi le paramétrage contraignant des algorithmes du type k-moyennes.
Nous avons tenté de justifier intuitivement et théoriquement les différentes étapes du
processus de regroupement effectué par PoBOC, avant d’évaluer les résultats obtenus sur
des jeux de données classiques en apprentissage (Iris, Zoology, Soybean, etc.). Ces résultats
sont apparus satisfaisants, comparativement à l’algorithme de référence des k-moyennes,
alors même que les seules mesures de qualité existantes et sur lesquelles nous nous sommes
basés, ont tendance à favoriser les schémas de clusters disjoints.
Dans un deuxième temps, nous avons présenté un système d’apprentissage de règles
par décomposition des classes ou concepts. D’abord dans un formalisme propositionnel
[30, 31], puis étendu aux règles formalisées en logique du premier ordre [29], le système
RuLe-Clust (Rule-Learning from Clustering) consiste à décomposer chaque classe ou concept
cible, en sous-ensembles par un processus de clustering. Chacun de ces sous-ensembles
guide, ensuite, l’étape de construction d’une règle.
Dans le cas attribut/valeur, nous avons proposé une série d’expérimentations permet-
tant de conclure à l’intérêt d’organiser une classe d’exemples avant de chercher à la couvrir
par une ou plusieurs règles. Par ailleurs, les résultats obtenus en utilisant l’algorithme Po-
BOC pour le processus de décomposition sont sensiblement meilleurs que pour d’autres
approches traditionnelles de regroupement. Nous avons tenté de cerner les raisons pour
Conclusion
lesquelles PoBOC est davantage approprié et avons observé que ce résultat est, en partie,
dû au type de schéma proposé (groupes non-disjoints).
L’extension à l’apprentissage de règles logiques est basé sur le même principe. La
structuration des exemples positifs du concept cible guide la recherche des littéraux discri-
minants pour aboutir à une hypothèse disjonctive pertinente, mettant en exergue des sous-
concepts naturels, relativement au langage de représentation choisi. Nous avons montré que
l’algorithme PoBOC offre une décomposition satisfaisante puisqu’elle permet généralement
de retrouver les sous-concepts (éventuellement non-disjoints) attendus.
Enfin, nous nous sommes concentrés sur une application particulière en considérant le
problème de la construction de classes contextuelles de mots, dans le cadre de la recherche
d’information [25, 27]. Sur un ensemble de données de taille réduite, nous avons observé et
comparé des schémas avec et sans recouvrements entre les groupes. Dans cette application,
les schémas autorisant les intersections entre les classes contextuelles sont justifiés car
ils permettent, contrairement aux schémas stricts, de préserver les différents sens des
mots. Nous avons été amené, pour cela, à définir un nouvel indice de proximité, dont
l’originalité est d’utiliser des connaissances extraites du Web pour évaluer la proximité
sémantique/contextuelle de deux mots.
Encouragés par ces premiers résultats, nous avons proposé la méthode DDOC (Distri-
butional Divisive Overlapping Clustering) [26, 28], pour réduire l’espace de description des
documents par regroupement des mots en groupes non-disjoints. Cette méthode s’appuie
sur une version incrémentale de l’algorithme PoBOC, et permet d’extraire des attributs
pertinents pour décrire les documents, dans une perspective de classification supervisée.
L’évaluation proposée sur les corpus Reuters-21578 et 20Newsgroup a montré que, sous
certaines conditions (réduction importante de l’espace et intersections contrôlées), les nou-
veaux attributs extraits par la méthode DDOC améliorent la justesse du classifieur, com-
parativement aux approches agglomératives et divisives faisant référence dans ce domaine.
Une nouvelle fois, l’organisation des mots en groupes non-disjoints est l’une des explica-
tions de ce phénomène.
Perspectives
Les perspectives pour ce travail sont très nombreuses. Sur chaque méthode ou système
proposé, des adaptations ou évaluations complémentaires sont envisagées.
Tout d’abord, l’algorithme PoBOC, utilisé comme outil de validation de l’hypothèse
de départ, pourrait faire l’objet d’adaptations. Nous étudierons de façon plus formelle,
la variante incrémentale introduite dans le contexte de la méthode DDOC, dans le but
de la généraliser au traitement de tous types de données. Un autre aspect à analyser
concerne la notion de voisinage, utilisée dans la définition du graphe de dissimilarité, qui
pourrait être réduite à un sous-voisinage, de manière à limiter l’influence des objets très
éloignés sur le voisinage d’un objet. Enfin, le critère permettant de contrôler l’importance
des intersections, introduit dans l’approche DDOC, sera étudié et probablement intégré à
l’algorithme PoBOC, dans une perspective expérimentale.
Le système RuLe-Clust nous apparaı̂t également comme une approche prometteuse.
Une première évolution du système, mentionnée dans le chapitre 3, consistera à limiter
le phénomène de sur-adéquation aux données d’entraı̂nement, par le biais de deux adap-
tations probablement complémentaires : d’une part en acceptant une certaine tolérance
166
Conclusion
dans la couverture des exemples d’un cluster29 et d’autre part en proposant une étape
d’élagage a posteriori, sur l’ensemble des règles apprises.
Une autre étude portera sur le test d’existence d’une règle couvrant l’ensemble des
exemples d’un cluster et rejetant tous les contre exemples du concept cible. En effet, ce
test permet à la fois de valider la décomposition et de gagner en complexité en évitant de
lancer la recherche d’une règle si elle n’existe pas. Malheureusement, si l’existence d’une
telle règle peut être facilement testée dans le formalisme propositionnel, en logique du
premier ordre, l’espace de recherche peut être infini. Nous envisageons alors une stratégie
basée sur le test de couverture des exemples négatifs par un plus petit généralisé d’exemples
d’un groupe.
En recherche d’information, nous compléterons, dans un premier temps, les évaluations
effectuées pour la méthode DDOC, en couplant ce processus avec un classifieur SVM plutôt
que le classifieur naı̈f de Bayes. Les performances de l’approche SVM restent inégalées sur
cette application [93] et nous espérons pouvoir accentuer encore le gain induit par notre
méthode d’extraction d’attributs.
Parallèlement, nous analyserons la méthode DDOC d’un point de vue formel, en théorie
de l’information. Par exemple, nous observerons l’influence des intersections entre les
groupes de mots à l’aide de mesures de gain d’information ou d’information mutuelle.
Nous poursuivrons également, l’étude prospective engagée, destinée à démontrer em-
piriquement l’intérêt d’utiliser des descripteurs du genre pour améliorer la classification
thématique de documents [145]. Ce travail, effectué en étroite collaboration avec des
spécialistes de la statistique lexicale et de la linguistique, cherchera de plus à dégager
un ensemble de descripteurs morphologiques ou syntaxiques pertinents pour cette tâche.
Enfin, nous espérons par cette étude, avoir accompagné l’évolution actuelle qui consiste
à ne plus se contenter de structurations simples en groupes homogènes et bien séparés mais
plutôt à considérer d’autres schémas de classification, plus souples, plus riches et plus
représentatifs des relations partagées par les objets. Nous souhaitons alors que l’intérêt
croissant pour ce type d’approche se manifeste par la proposition d’autres algorithmes,
plus rapides notamment. Ce développement est conditionné par l’existence d’un outil
permettant de comparer les méthodes entre elles. Nous envisageons alors de proposer
une mesure de qualité adaptée à l’évaluation de pseudo-partitions.
29
Autoriser une faible proportion d’exemples positifs (resp. négatifs) non-couverts (resp. couverts).
167
A
Mesures d’évaluation des
schémas de clustering
169
Indices d’évaluation externe
n−1
X n
X
1
Statistique de Huberts Γ(C, P) = M X(i, j).Y (i, j)
i=1 j=i+1
a+d
Statistique de Rand R(C, P) = a+b+c+d
a
Statistique de Jaccard J(C, P) = a+b+c
q
a a
Indice de Fowlkes et Mallows F M (C, P) = a+b a+c
kC
X kP
X
|Ci |.ϕ(Ci )
Mesure d’entropie E(C, P) = ; ϕ(Ci ) = − pj . log pj
n
i=1 j=1
n−1
X n
X
1
Statistique de Huberts Γ(C, D) = M d(xi , xj ).(1 − δi,j )
i=1 j=i+1
1 n−1
X n
X
P (i, j).PC (i, j) − µP µC
M i=1 j=i+1
Coefficient de corrélation cophénétique CP CC(PC , D) = v
u2 32 3
u 1 n−1
X X n
1 n−1
X X n
u4 54 2 − µ2 5
t P (i, j)2 − µ2
P
P C (i, j) C
M i=1 j=i+1 M i=1 j=i+1
n−1
X n
X
1
Statistique de Huberts Γ(C) = M d(xi , xj ).X(i, j)
i=1 j=i+1
min d(x, y)
x∈Ci ,y∈Cj
Indice de Dunn D(C) = min min
i=1...t j6=i max diam(Ci )
k=1...t
t
X
1 V (Ck ) + V (Cj )
Indice de Davies et Bouldin DB(C) = max
t j6=k d(x∗k , x∗j )
k=1
Indices d’évaluation pour schémas flous
t X
X n
u2k (xi )d(xi , x∗k )2
k=1 i=1
Indice de séparation S(C) = ∗ ∗ 2
n. min d(xi , xj )
i6=j
n X
X t
Coefficient de partition P C(C) = 1
n u2k (xi )
i=1 k=1
B
Évaluation du nombre de
clusters
0.1 4.5 1
Inertie intra-cluster
0.095 Inertie inter-clusters 0.9
4
0.09 0.8
3.5
0.085
Inertie inter-clusters
0.7
Inertie intra-cluster
Huberts Statistic
3
0.08
0.6
0.075 2.5
0.5
0.07
2
0.4
0.065
1.5 0.3
0.06
1 0.2
0.055
173
0.1 2.5 0.6
Inertie intra-cluster
0.095 Inertie inter-clusters
0.09 2 0.5
0.085
Inertie inter-clusters
Inertie intra-cluster
Huberts Statistic
0.08 0.4
1.5
0.075
0.07 0.3
1
0.065
0.06 0.2
0.5
0.055
0.05 0.1
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
Nombre de clusters Nombre de clusters
14 1.4
Inertie Intra-cluster
0.052 Inertie Inter-clusters 1.3
12 1.2
0.05
1.1
Inertie Inter-clusters
Inertie Intra-cluster
Hubert Statistic
0.048 10 1
0.9
0.046
8 0.8
0.044 0.7
6 0.6
0.042
0.5
0.04 4 0.4
5 10 15 20 25 5 10 15 20 25
Nombre de clusters Nombre de clusters
0.04 14 0.5
Inertie Intra-cluster
Inertie Inter-clusters 0.45
0.035 12
0.4
0.03 0.35
Inertie Inter-clusters
Inertie Intra-cluster
10
Hubert Statistic
0.3
0.025
8 0.25
0.2
0.02
6 0.15
0.015 0.1
4
0.05
0.01
5 10 15 20 5 10 15 20
Nombre de clusters Nombre de clusters
n11
f (R) =
n1
La fréquence relative est utilisée pour évaluer les règles générées par le système AQ [123],
par exemple.
En considérant la notation C = {C1 , C2 , . . . , Ck } où Ci correspond à l’ensemble des
exemples étiquetés ci (définition en extension), C peut être vue comme la partition de
référence de E. Une autre manière d’évaluer la performance d’une règle R, est de mesurer
l’entropie de la couverture de R, relativement à la partition de référence C.
• Soit cov(R) la couverture d’une règle R, on note pi la proportion d’exemple de classe
ci dans cov(R) (pi = |cov(R)∩C i|
|cov(R)| ). L’entropie de cov(R) mesure la pureté de cet ensemble
d’exemples, relativement aux classes attendues :
k
X
Entropie(cov(R)) = − pi log2 pi
i=1
175
Une valeur nulle, pour cette mesure, indique que tous les exemples couverts par R appar-
tiennent à la même classe. A l’inverse, une valeur élevée (égale à 1 dans le cas de 2 classes)
indique que R couvre uniformément chaque classe et que la règle est peu pertinente.
L’entropie est un critère utilisé dans d’autres mesures de performance que nous définissons
dans la suite. Ces mesures sont basées sur une classification binaire. Dans ce cas, les
exemples positifs E + sont ceux de la classe ciblée par la règle apprise R, et l’ensemble
des exemples négatifs correspond au complémentaire E − = E \ E + (autrement dit, les
exemples de toutes les autres classes).
Pour une règle R, on peut dresser le tableau de contingence (tableau C.1) visant à obser-
ver la répartition des exemples sur les deux paires d’ensembles (E + , E − ) et (cov(R), cov(R)).
E+ E−
n1 n0 N
Dans ce tableau, n11 désigne le nombre d’exemples positifs couverts par la règle R,
n01 le nombre d’exemples négatifs couverts par R, n10 le nombre d’exemples positifs non-
couverts par R et n00 le nombre d’exemples négatifs non-couverts par R. Enfin, n1 et n0
désignent respectivement le nombre total d’exemples positifs et négatifs, tandis que n 1 et
n0 correspondent au nombre d’exemples couverts ou non-couverts par R.
On considère également les notations suivantes :
1 0
P 1 = nN ; P 0 = nN : Taux d’exemples positifs et négatifs sur E,
P1 = nN1 ; P0 = nN0 : Taux d’exemples couverts et non-couverts par R,
n1 n01
P11 = n11 ; P10 = n1 : Taux d’exemples positifs (resp. négatifs) parmi les exemples cou-
verts,
n1 n00
P01 = n00 ; P00 = n0 : Taux d’exemples positifs (resp. négatifs) parmi les exemples non-
couverts.
A partir de cette définition de l’entropie (dans le cas binaire), on définit les critères de
performance suivants :
176
1
X
Gain d’Information IG(R) = H(P 1 , P 0 ) − (Pi H(Pi1 , Pi0 ))
i=0
IG(R)
Rapport de Gain GR(R) =
H(P0 , P1 )
1
X
gini(R) = GI(P 1 , P 0 ) − (Pi GI(Pi1 , Pi0 ))
Indice de Gini i=0
Nous ne présenterons pas l’intégralité du rapport proposé par l’expert sur les résultats
obtenus, mais uniquement les aspects les plus significatifs quant à notre objectif descriptif
exploratoire.
58 14 1.32
De manière générale, les classes obtenues semblent reliées à la thématique des articles.
Les singletons méritant une analyse spécifique, ils ont été étudiés séparément. Après ana-
lyse des groupes, 14 clusters ont été jugés thématiquement pertinents par l’expert sur un
total de 44 groupes (après extraction des singletons), soit plus d’un quart des clusters.
De manière plus précise, l’expert nous apporte les observations suivantes :
• Les clusters 7 et 13 comprennent (uniquement) deux individus extraits de la même
revue (textes 186 et 188 : Verbum 2001, Sémantique des verbes, Nouvelles approches ;
textes 167 et 168 : Verbum 2000, Autour du futur). Les thèmes affichés des deux numéros
portent clairement sur un marqueur linguistique : le futur (effectivement élevé dans les
textes 167 et 168), et les verbes (beaucoup d’infinitifs et de passifs infinitifs dans les textes
186 et 188).
179
D.2. Étude des singletons
• Les clusters 17, 34 et 36, constitués de trois à quatre individus comprennent chacun
deux individus issus de la même revue.
• Les clusters 31 et 51 comprennent chacun trois articles provenant du même numéro
thématique. Si l’on prend l’exemple du cluster 31, il est constitué de cinq individus, dont
trois appartiennent à la même revue : Langue Française, 2001, La Parole intérieure, numéro
thématique plutôt détonnant, souvent plus historique/épistémologique que linguistique, la
parole intérieure étant difficile à appréhender de manière expérimentale. Les cinq textes
présentent les points communs de contenir peu d’indices de formalisation, moins de ponc-
tuations que les autres articles du corpus, très peu de renvois internes (pourtant très
courant dans les textes contenant des exemples, e.g. “comme nous le voyons en (1),...”),
et beaucoup de noms propres et de dates.
On voit cependant les limites de notre démarche eu égard au texte 126 (dans ce
même cluster 31), traitant des scènes d’actions radiophoniques : le texte n’est claire-
ment pas historique, contrairement aux quatre autres. Les noms propres ne renvoient
pas nécessairement à des noms du champ, mais au « studio Charles Trenet » par exemple,
tandis que les dates portent sur la diffusion des émissions radiophoniques.
• Le cluster 52, constitué de 8 individus comprend 4 articles extraits de cette même
revue sur la parole intérieure.
• Le cluster 8 est particulièrement intéressant, dans la mesure où il comprend les 5
articles (sur un ensemble de 9 individus) d’un numéro thématique de langage traitant de la
langue des signes ; la revue est particulière, dans la mesure où ses auteurs sont en majorité
distincts, sociologiquement (enseignants dans le secondaire, enseignant de LSF, etc.).
• Les clusters 42, 48 et 53 sont thématiquement intéressants, bien que moins ho-
mogènes : le cluster 53 comprend 4 articles (sur un total de 5) d’un Verbum (Référence
discursive et accessibilité cognitive), le cluster 42 quatre textes issus du Scolia de Reichler
(Problèmes de sémantique et de relations entre micro- et macro-syntaxe) et le cluster 48,
3 textes issus du Scolia Contextes.
• Enfin, les classes 56 et 58, malgré leur nombre important d’individus semblent per-
tinentes : après vérification, le cluster 58 rassemble des articles portant sur l’objet verbal,
et le cluster 56 contient des textes portant sur la sémantique/l’énonciation.
180
Annexe D. Expertise de quelques groupes de documents
1999). Les deux textes relèvent par contre clairement du genre et du domaine, mais c’est
leur objet et la méthodologie de traitement utilisée qui semble les avoir écartés.
Le premier texte (83) a visiblement été écarté du fait de l’emploi important des temps
de l’hypothétique : conditionnels passé (2.33% pour 0.39% en moyenne), plus que parfait
(2.13% pour 0.34%), conditionnels (1.94% pour 0.92%) et imparfaits (4.65% pour 1.42%).
Ce texte présente également de nombreux pronoms de 1ère personne du singulier et seconde
personne du pluriel, employés dans des exemples1 : nombre important de JE (11.69% pour
2.99%) et de VOUS - emploi le plus élevé remarqué - (9.27% pour 0.40%).
Le second texte (86) privilégie les 1ère et 2nde personnes du singulier pour exemplifier
l’objet étudié (« Si tu ne m’avais pas aidé, je n’aurais pas pu finir à temps »), ce qui
explique la présence importante de JE (8.93% pour 2.99%) et TU (8.65% pour 0.54%).
Le texte portant sur le chinois, on relève nettement moins de temps de l’hypothétique
que dans le texte 83 ; le texte contient beaucoup d’infinitifs (28% pour 17.79%), liées aux
nombreuses traductions (littérales) du chinois2 .
Les deux textes ont ainsi été écartés principalement en raison de leur objet, et plus
spécifiquement des exemples donnés, instituant une relation 1ère/2nde personne.
La plupart des individus isolés semblent l’avoir été en raison du thème de l’article -
généralement il s’agit d’un objet linguistique - et plus précisément en raison des nombreux
exemples qu’ils contiennent, et qui agissent sur la morphosyntaxe du texte : ainsi, l’article
de Francis Renaud (116), intitulé Les bases de la quantification réciproque, a été écarté
en raison du nombre important de pronoms indéfinis (27.24% pour 2.83%) et réflexifs
(26.26% pour 11.51%) quil contient ; celui de Manguin (210), intitulé Construction d’es-
paces sémantiques associés aux verbes de déplacement d’objets à partir des données des
dictionnaires informatisés des synonymes, en raison des nombreux exemples de verbes à
l’infinitif donnés (48.36% pour 17.79%) ; et celui de Manno (40), qui porte sur les actes
« pseudo-directifs » de la communication écrite, en raison des nombreuses relations d’in-
terlocution présentes dans les textes (valeurs très élevées pour les marqueurs associés aux
pronoms JE-TU-NOUS-VOUS).
A noter que les textes écartés détenaient, la plupart du temps, des « records » d’emplois
de certaines variables, et que deux textes proviennent du même auteur (Crévenat-Werner).
On peut penser que leur isolement est dû à des critères stylométriques.
181
D.3. Classifications basées sur les autres ensembles de descripteurs
Temps/Personnes 45 6 1.32
fondés sur des similarités morphosyntaxiques, dues à des composantes différentes : ainsi,
les textes 45 et 80 ont une répartition des temps verbaux très similaires, mais ces ca-
ractéristiques sont liées aux exemples dans le texte de Feuillet, et dans le corps de l’article
dans celui de Ildefonse, e.g. usage de l’imparfait, dans les exemples chez Feuillet (« si
j’en avais, je t’en donnerais »), et dans le texte chez Ildefonse (« Pouvait-on prétendre
qu’Apollonius voyait la relation de l’accusatif [...]»).
182
Bibliographie
[1] Aas (K.) et Eikvil (L.). – Text Categorisation : A Survey. – Rapport technique,
Norwegian Computing Center, 1999.
[2] Agarwal (R.). – (Almost) automatic semantic feature extraction from technical
text. In : Proceedings of the human language technology workshop. pp. 378–383. –
Princeton, New Jersey, 1994.
[3] Agirre (E.), Ansa (O.), Hovy (E.) et Martinez (D.). – Enriching Very Large Ontolo-
gies Using the WWW. In : Proceedings of the Ontology Learning Workshop, ECAI.
– Berlin, Germany, 2000.
[4] Agrawal (R.), Gehrke (J.), Gunopulos (D.) et Raghavan (P.). – Automatic subspace
clustering of high dimensional data for data mining applications. In : Proceedings
of Int. Conf. Management of Data ACM-SIGMOD, pp. 94–105. – Seattle, 1998.
[5] Ankerst (M.), Breunig (M.), Kriegel (H. P.) et Sander (J.). – OPTICS : Ordering
Points To Identify the Clustering Structure. In : Proceedings of Int. Conf. Ma-
nagement of Data ACM-SIGMOD, pp. 49–60. – Philadelphia, Pennsylvania, USA,
1999.
[6] Apté (C.), Damerau (F.) et Weiss (S. M.). – Automated learning of decision rules
for text categorization. ACM Trans. Inf. Syst., vol.12, No 3, 1994, pp. 233–251.
[7] Baker (L. D.) et McCallum (A. K.). – Distributional clustering of words for text
classification. In : Proceedings of SIGIR-98, 21st ACM International Conference
on Research and Development in Information Retrieval. pp. 96–103. – Melbourne,
AU, 1998.
[8] Ball (G. H.) et Hall (D. J.). – A novel method of data analysis and pattern classifi-
cation. – Rapport technique, Menlo Park, CA, Stanford Research Insitute, 1965.
[9] Baraldi (A.) et Blonda (P.). – A survey of fuzzy clustering algorithms for pattern
recognition. II. IEEE Transactions on Systems, Man and Cybernetics, Part B (Cy-
bernetics), vol.29, 1999, pp. 786–801.
[10] Berkhin (P.). – Survey Of Clustering Data Mining Techniques. – Rapport technique,
San Jose, CA, Accrue Software, 2002.
[11] Bezdek (J. C.). – Pattern Recognition with Fuzzy Objective Function Algoritms.
Plenum Press, New York, 1981.
Bibliographie
[12] Biernacki (C.), Celeux (G.), Govaert (G.), Langrognet (F.) et Vernaz (Y.). –
Mixmod : High Performance Model-Based Cluster and Discriminant Analysis.
http ://www-math.univ-fcomte.fr/mixmod/index.php, 2001.
[13] Bishop (C.M.). – Neural Networks for Pattern Recognition. – Oxford University
Press, 1995.
[14] Bisson (G.). – Learning in FOL with a similarity measure. In : 11th National Conf.
on Artificial Intelligence (AAAI). pp. 82–87. – San Jose, CA, 1992.
[15] Bisson (G.). – La similarité : une notion symbolique/numérique. Apprentissage
symbolique-numérique (tome 2), 2000.
[16] Boley (D.). – Principal Direction Divisive Partitioning. Data Mining and Knowledge
Discovery, vol.2, No 4, 1998, pp. 325–344.
[17] Bomze (I.), Budinich (M.), Pardalos (P.) et Pelillo (M.). – The maximum clique pro-
blem. In : Handbook of Combinatorial Optimization, éd. par Du (D.-Z.) et Pardalos
(P. M.). – Kluwer Academic Publishers, Boston, MA, 1999.
[18] Brandenburg (F.), Edachery (J.) et Sen (A.). – Graph clustering using distance-k
cliques. Lecture Notes in Computer Sciences, vol.1731, 1999, pp. 98–106.
[19] Brézellec (P.) et Didier (G.). – GIZMO : un algorithme de grille cherchant des
clusters homogènes. In : Conférence francophone d’Apprentissage (CAp’2001), pp.
101–116. – Grenoble, France, Juin 2001.
[20] Brito (P.). – Symbolic Pyramidal Clustering. In : Proceedings of the Indo-French
Workshop on Symbolic Data Analysis and its Applications. – Paris, France, Septem-
ber 1997.
[21] Cheeseman (P.) et Stutz (J.). – Bayesian Classification (AutoClass) : Theory and
Results. In : Advances in Knowledge Discovery and Data Mining, pp. 153–180. –
1996.
[22] Chuai-Aree (S.), Lursinsap (C.), Sophatsathit (P.) et Siripant (S.). – Fuzzy C-Mean :
A statistical feature classification of text and image segmentation method. In : Proc.
of Intern. Conf. on Intelligent Technology, pp. 279–284. – Assumption University
Bangkok, Thailand, December 2000.
[23] Church (K. W.) et Hanks (P.). – Word association norms, mutual information, and
Lexicography. In : Proceedings of the 27th. Annual Meeting of the Association for
Computational Linguistics. pp. 76–83. – Vancouver, B.C., 1989.
[24] Clark (P.) et Niblett (T.). – The CN2 induction algorithm. Machine Learning, vol.3,
1989, pp. 261–284.
[25] Clavier (V.), Cleuziou (G.) et Martin (L.). – Organisation conceptuelle de mots pour
la recherche d’information sur le web. In : Conférence d’Apprentissage CAp’2002,
éd. par PUG Presses Universitaires de Grenoble, pp. 220–235. – Orléans, Juin 2002.
[26] Cleuziou (G.). – Regroupements non-disjoints de mots pour la classification de
documents. In : Première Conférence en Recherche d’Information et Applications
CORIA’2004. pp. 41–56. – toulouse, janvier 2004.
[27] Cleuziou (G.), Clavier (V.) et Martin (L.). – Une méthode de regroupement de
mots fondée sur la recherche de cliques dans un graphe de cooccurrences. In : 5èmes
rencontres Terminologie et Intelligence Artificielle, éd. par ENSAIS (LIIA), pp. 179–
182. – Strasbourg, France, Mars 2003. Poster.
184
Bibliographie
[28] Cleuziou (G.), Martin (L.), Clavier (V.) et Vrain (C.). – DDOC : Overlapping
Clustering of Words for Document Classification. In : 11th Symposium on String
Processing and Information Retrieval, éd. par LNCS. pp. 127–128. – Padova, Italy,
October 2004.
[29] Cleuziou (G.), Martin (L.) et Vrain (C.). – Disjunctive Learning with a Soft-
Clustering Method. In : 13th International Conference on Inductive Logic Program-
ming, éd. par LNCS. pp. 75–92. – Szeged, Hungary, September 2003.
[30] Cleuziou (G.), Martin (L.) et Vrain (C.). – PoBOC : un algorithme de ”soft-
clustering”. Applications à l’apprentissage de règles et au traitement de données
textuelles. In : Journées Francophones d’ Extraction et de Gestion des Connais-
sances EGC’2004. pp. 217–228. – Clermont-Ferrand, janvier 2004.
[31] Cleuziou (G.), Martin (L.) et Vrain (C.). – PoBOC : an Overlapping Clustering
Algorithm. Application to Rule-Based Classification and Textual Data. In : Procee-
dings of the 16th European Conference on Artificial Intelligence, éd. par R. López
de Mántaras and L. Saitta, IOS Press, pp. 440–444. – Valencia, Spain, August 22-27
2004.
[32] Cohen (W.) et Hirsh (H.). – Joins that generalize : text classification using Whirl.
In : Proceedings of KDD-98, 4th International Conference on Knowledge Disco-
very and Data Mining, éd. par Rakesh Agrawal and Paul E. Stolorz and Gregory
Piatetsky-Shapiro. pp. 169–173. – New York, US, 1998.
[33] Dagan (I.), Karov (Y.) et Roth (D.). – Mistake-driven learning in text categorization.
In : Proceedings of EMNLP-97, 2nd Conference on Empirical Methods in Natural
Language Processing, éd. par Claire Cardie and Ralph Weischedel. pp. 55–63. –
Providence, US, 1997.
[34] Dash (M.), Choi (K.), Scheuermann (P.) et Liu (H.). – Feature selection for clustering
- A Filter Solution. In : proceedings of IEEE International Conference of Data
Mining (ICDM 2002). – Maebashi City, Japan, December 2002.
[35] Datta (P.) et Kibler (D.). – Symbolic Nearest Mean Classifiers. In : proceedings
of Fifteenth National Conference on Artificial Intelligence. pp. 82–87. – Providence,
Rhode Island, 1997.
[36] Davies (D. L.) et Bouldin (D. W.). – A cluster separation measure. IEEE Transac-
tions on Pattern Analysis and Machine Intelligence, vol.1, N o 2, 1979, pp. 224–227.
[37] Debourges (I.). – Construction de cartes pour l’exploration de corpus. – Thèse de
doctorat. LIFO, Université d’Orléans, juillet 2002.
[38] Deerwester (S. C.), Dumais (S. T.), Landauer (T. K.), Furnas (G. W.) et Harshman
(R. A.). – Indexing by Latent Semantic Analysis. Journal of the American Society
of Information Science, vol.41, No 6, 1990, pp. 391–407.
[39] DeJong (K. A.), Spears (W. M.) et Gordon (D. F.). – Using Genetic Algorithms for
Concept Learning. special issue on genetic algorithms for Machine Learning Journal,
vol.13, 1993, pp. 161–188.
[40] Dempster (A.P.), Laird (N.M.) et Rubin (D.B.). – Maximum Likelihood from In-
complete Data via the EM Algorithm. Journal of Royal Statistical Society B, vol.39,
1977, pp. 1–38.
[41] DeRaedt (L.), Lavrac (N.) et Dzeroski (S.). – Multiple Predicate Learning. In :
Proceedings of the Thirteen International Joint Conference on Artificial Intelligence.
pp. 1037–1043. – Chambéry, France, 1993.
185
Bibliographie
[42] Dhillon (I. S.), Mallela (S.) et Kumar (R.). – A divisive information theoretic feature
clustering algorithm for text classification. Journal of Machine Learning Researches,
vol.3, 2003, pp. 1265–1287.
[43] Dice (L. R.). – Measures of the amount of ecologic associations between species.
Journal of Ecology, 1945.
[44] Diday (E.). – Optimisation en classification automatique et reconnaissance de
formes. Note Scient. INRIA n˚6, 1972.
[45] Diday (E.). – La méthode des nuées dynamiques. Rev. Stat. Appliquées, vol.XIX,
No 2, 1975, pp. 19–34.
[46] Diday (E.). – Une représentation visuelle des classes empiétantes : Les Pyramides.
– Rapport technique, INRIA n˚291, Rocquencourt 78150, France, 1984.
[47] Diday (E.) et Esposito (F.). – An introduction to Symbolic Data Analysis and
the Sodas Software. International Journal on Intelligent Data Analysis, vol.7, N o 6,
2003.
[48] Domingos (P.). – The RISE System : Conquering Without Separating. In : Sixth
IEEE International Conference on Tools with Artificial Intelligence, pp. 704–707. –
New Orleans, LA, 1994.
[49] Domingos (P.) et Pazzani (M. J.). – Beyond Independence : Conditions for the
Optimality of the Simple Bayesian Classifier. In : International Conference on
Machine Learning, pp. 105–112. – Bari, Italy, 1996.
[50] Dunn (J. C.). – A fuzzy relative of the isodata process and its use in detecting
compact well-separated clusters. Journal of Cybernetics, vol.3, 1973, pp. 32–57.
[51] Dunn (J. C.). – Well separated clusters and optimal fuzzy partitions. Journal of
Cybernetics, vol.4, 1974, pp. 95–104.
[52] Emde (W.) et Wettschereck (D.). – Relational Instance-Based Learning. In : 13th
Int. Conf. on Machine Learning (ICML’96), éd. par L. (Saitta). pp. 122–130. – Bari,
Italy, 1996.
[53] Enguehard (C.). – Apprentissage naturel automatique d’un réseau sémantique. –
Thèse de doctorat. Université de Compiègne, 1992.
[54] Eschrich (S.). – Hierarchical Fuzzy Clustering as a Top-Down Perceptual Organiza-
tion Process. – Rapport technique, Computer Vision Project, Final Report, 2001.
[55] Ester (M.), Kriegel (H. P.), Sander (J.), Wimmer (M.) et Xu (X.). – Density-
Connected Sets and their Application for Trend Detection in Spatial databases.
In : Third International Conference on Knowledge Discovery and Data Mining. –
Newport Beach, California, USA, 1997.
[56] Ester (M.), Kriegel (H. P.), Sander (J.) et Xu (X.). – A Density-Based Algorithm
for Discovering Clusters in Large Spatial Databases with Noise. In : Second Inter-
national Conference on Knowledge Discovery and Data Mining, éd. par Simoudis
(E.), Han (J.) et Fayyad (U.). pp. 226–231. – Portland, Oregon, 1996.
[57] Estivill-Castro (V.), Lee (I.) et Murray (A. T.). – Criteria on Proximity Graphs for
Boundary Extraction and Spatial Clustering. In : Proceedings of the 5th Pacific-
Asia Conference on Knowledge Discovery and Data Mining. pp. 348–357. – Springer-
Verlag.
[58] Fano (R.M.). – Transmission of Information : A Statistical Theory of Communica-
tions. – Cambridge, Mass., MIT Press, 1961.
186
Bibliographie
[59] Faure (D.) et Nédellec (C.). – ASIUM : Learning subcategorization frames and res-
trictions of selection. In : 10th European Conference on Machine Learning (ECML
98) - Workshop on Text Mining, éd. par Y. Kodratoff. – Chemnitz, Germany, 1998.
[60] Fisher (D.). – Knowledge acquisition via incremental conceptual clustering. Machine
Learning, vol.2, 1987, pp. 139–172.
[61] Fraley (C.) et Raftery (A.). – Mclust : Software for modelbased cluster analysis.
Journal of Classification, vol.16, 1999, pp. 297–306.
[62] Fuhr (N.) et Buckley (C.). – A probabilistic learning approach for document in-
dexing. ACM Trans. Inf. Syst., vol.9, No 3, 1991, pp. 223–248.
[63] Fukuyama (Y.) et Sugeno (M.). – A New Method of Choosing the Number of
Clusters for the Fuzzy C-means Method. In : Proc. 5th Fuzzy Syst. Symp., pp.
247–250. – Japan, 1989.
[64] Fung (G.). – A comprehensive overview of basic clustering algorithms. 2001.
[65] Gaume (B.), Hathout (N.) et Muller (P.). – Désambiguı̈sation par proximité struc-
turelle. In : Actes de la Conférence Traitement Automatique du Langage Naturel
(TALN’2004). – Fez, Maroc, 2004.
[66] Gennari (J. H.). – An experimental study of concept formation. – Technical Re-
port nNo 90-06, Irvine : University of California, Department of Information and
Computer Science, 1990.
[67] Gennari (J. H.), Langley (P.) et Fisher (D.). – Models of incremental concept for-
mation. Journal of Artificial Intelligence, vol.40, 1989, pp. 11–61.
[68] Gil (À. J.), Capdevila (C.) et Arcas (A.). – On the Efficiency and Sensitivity of a
Pyramidal Classification Algorithm. Journal of Economic Literature, 1994.
[69] Gluck (M. A.) et Corter (J. E.). – Information, Uncertainty and the Utility of
Categories. In : Proceedings of the Seventh Annual Conference of the Cognitive
Science Society. pp. 283–287. – Irvine, California, 1985.
[70] Gnanadesikan (R.), Kettenring (J. R.) et Landwehr (J.M.). – Interpreting and asses-
sing the results of cluster analyses. Bulletin of the International Statistical Institute,
vol.47, No 2, 1977, pp. 451–463.
[71] Grabmeier (J.) et Rudolph (A.). – Techniques of Cluster Algorithms in Data Mining.
Data Mining and Knowledge Discovery, nNo 6, 2002, pp. 303–360.
[72] Grefenstette (G.). – Explorations in automatic thesaurus discovery. – Kluwer Aca-
demic Pub., 1994.
[73] Grefenstette (G.). – The WWW as a Resource for Example-Based MT Tasks. In :
Proc. ASLIB Translating and the Computer 21 Conf. – London, England, 1999.
[74] Guha (S.), Rastogi (R.) et Shim (K.). – CURE : an efficient clustering algorithm
for large databases. In : proceedings of ACM SIGMOD International Conference
on Management of Data, pp. 73–84. – Seattle, Washington, 1998.
[75] Guha (S.), Rastogi (R.) et Shim (K.). – ROCK : A Robust Clustering Algorithm
for Categorical Attributes. Information Systems, vol.25, No 5, 2000, pp. 345–366.
[76] Halkidi (M.), Batistakis (Y.) et Vazirgiannis (M.). – Clustering Validity Checking
Methods : Part II. ACM SIGMOD, vol.31, No 3, 2002, pp. 19–27.
187
Bibliographie
[77] Halkidi (M.) et Vazirgiannis (M.). – Clustering Validity Assessment : Finding the
Optimal Partitioning of a Data Set. In : proceedings of IEEE International Confe-
rence of Data Mining (ICDM 2001), pp. 187–194. – San Jose, California, USA,
2001.
[78] Harris (Z.), Gottfried (M.), Ryckman (T.), Mattick (P.), Daladier (A.), Harris (T. N.)
et Harris (S.). – The form of Information in Science : Analysis of an immunology
sublanguage. – Dordrecht : Kluwer Adademic Publishers, 1989.
[79] Hathaway (R. J.), Davenport (J. W.) et Bezdek (J. C.). – Relational duals of the
c-means clustering algorithms. Pattern Recognition, vol.22, No 2, 1989, pp. 205–212.
[80] Hawkins (D.). – Identification of Outliers. – London, Chapman and Hall, 1980.
[81] Hertz (J.), Krogh (A.) et Palmer (R. G.). – An Introduction to the Theory of Neural
Computation. – Santa Fe Institute Studies in the Sciences of Complexity lecture
notes. Addison-Wesley Longman Publ. Co., Inc., Reading, MA., 1991.
[82] Hinneburg (A.) et Keim (D. A.). – An Efficient Approach to Clustering in Large
Multimedia Databases with Noise. In : Knowledge Discovery and Data Mining, pp.
58–65. – New York City, USA, 1998.
[83] Hodson (F. R.), Sneath (P. H. A.) et Doran (J. E.). – Some experiments in the
numerical analysis of archaeological data. Biometrika, vol.53, 1966, pp. 311–324.
[84] Hoff (W. A.), Michalski (R. S.) et Stepp (Robert E.). – INDUCE 2 : A program
for learning structural descriptions from examples. – Rapport technique nN o 904,
Urbana, Illinois, Department of Computer Science, University of Illinois at Urbana-
Champaign, 1983.
[85] Hofmann (T.). – Probabilistic Latent Semantic Indexing. In : Proceedings of the
22nd Annual ACM Conference on Research and Development in Information Re-
trieval, pp. 50–57. – Berkeley, California, August 1999.
[86] Holman (E. W.). – Evolutionary and psychological effects in pre-evolutionary clas-
sifications. Journal of Classification, vol.2, 1985, pp. 29–39.
[87] Hull (D.). – Improving text retrieval for the routing problem using latent semantic
indexing. In : Proceedings of the 17th annual international ACM SIGIR confe-
rence on Research and development in information retrieval. pp. 282–291. – Dublin,
Ireland, 1994.
[88] Hösel (V.) et Walcher (S.). – Clustering Techniques : A Brief Survey. – Rapport
technique, AMS Subject Classication : 62H30, 68T10, 62-07 1, 2000.
[89] Ibekwe-San Juan (F.). – Recherche des tendances thématiques dans les publications
scientifiques. définition d’une méthodologie fondée sur la linguistique. – Thèse de
doctorat. Université de Grenoble3, 1997.
[90] Jaccard (P.). – The distribution of the flora in the alpine zone. New Phytol., vol.11,
1912, pp. 37–50.
[91] Jain (A. K.), Murty (M. N.) et Flynn (P. J.). – Data clustering : a review. ACM
Computing Surveys, vol.31, No 3, 1999, pp. 264–323.
[92] Jaromczyk (J.W.) et Toussaint (G.T.). – Relative Neighborhood Graphs And Their
Relatives. P-IEEE, vol.80, 1992, pp. 1502–1517.
[93] Joachims (T.). – Text categorization with support vector machines : learning with
many relevant features. In : Proceedings of ECML-98, 10th European Conference
188
Bibliographie
on Machine Learning, éd. par Claire Nédellec and Céline Rouveirol. pp. 137–142. –
Chemnitz, DE, 1998.
[94] Johnson (S. C.). – Hierarchical clustering schemes. Psychometrika, vol.32, 1967, pp.
241–254.
[95] Karypis (G.), Han (E.-H.) et Kumar (V.). – CHAMELEON : Hierarchical Clustering
Using Dynamic Modeling. Computer, vol.32, No 8, 1999, pp. 68–75.
[96] Kaufman (L.) et Rousseeuw (P. J.). – Clustering by means of medoids. In Dodge,
Y. (Ed.) Statistical Data Analysis based on the L1 Norm, 1987, pp. 405–416.
[97] Kaufman (L.) et Rousseeuw (P. J.). – Finding Groups in Data. An Introduction to
Cluster Analysis. – John Wiley & Sons, Inc., 1990.
[98] Kearns (M.), Mansour (Y.) et Ng (A.). – An Information-Theoretic Analysis of Hard
and Soft Assignment Methods for Clustering. In : Proceedings of the 13th Annual
Conference on Uncertainty in Artificial Intelligence (UAI-97). pp. 282–293. – San
Francisco, CA, 1997.
[99] Kettenring (J. R.), Rogers (W. H.), Smith (M. E.) et Warner (J. L.). – Cluster
analysis applied to the validation of course objectives. J. Educ. Statist., vol.1, 1976,
pp. 39–57.
[100] Knorr (E. M.) et Ng (R. T.). – Algorithms for Mining Distance-Based Outliers
in Large Datasets. In : Proceedings of the 24rd International Conference on Very
Large Data Bases. pp. 392–403. – New York City, USA, 1998.
[101] Kohonen (T.). – Self-Organization and Associative Memory. Springer, 1984.
[102] Krishnapuram (R.), Joshi (A.) et Yi (L.). – A fuzzy relative of the k-medoids
algorithm with application to document and snippet clustering. In : Proc. IEEE
Intl. Conf. Fuzzy Systems, pp. 1281–1286. – Korea, 1999.
[103] Lallich-Boidin (G.). – Communication homme-machine et recherche d’information
fondée sur le traitement automatique des langues. Applications, bilan, perspectives.
– Mémoire d’habilitation à diriger des recherches. Université Stendhal, Grenoble3,
1998.
[104] Lang (K.). – NewsWeeder : learning to filter netnews. In : Proceedings of the 12th
International Conference on Machine Learning. pp. 331–339. – San Mateo, CA,
USA, 1995.
[105] Larkey (L. S.) et Croft (W. B.). – Combining classifiers in text categorization.
In : Proceedings of SIGIR-96, 19th ACM International Conference on Research and
Development in Information Retrieval, éd. par Frei (H.-P.), Harman (D.), Schäuble
(P.) et Wilkinson (R.). pp. 289–297. – Zürich, CH, 1996.
[106] Law (M.), Figueiredo (M.) et Jain (A. K.). – Feature selection in mixture-based clus-
tering. In : Advances in Neural Information Processing Systems 15 (NIPS 2002),
pp. 609–616. – Vancouver, Canada, 2002.
[107] Lee (D. H.) et Kim (M. H.). – Database summarization using fuzzy isa hierarchies.
Ieee Trans. On Systems Man And Cybernetics Part B- Cybernetics, vol.27, 1997, pp.
68–78.
[108] Lee (D.T.) et Schachter (B.J.). – Two Algorithms for Constructing a Delaunay
Triangulation. Int. J. Computer Information Sci., vol.9, 1980, pp. 219–242.
[109] Lefèvre (P.). – La Recherche d’informations. Du texte intégral au thésaurus. – Paris,
Hermès, 2000.
189
Bibliographie
[110] Lelu (A.). – Modèles neuronaux pour l’analyse de données documentaires et tex-
tuelles. – Thèse de doctorat, Université de Paris VI, mars 1993.
[111] Lewis (D. D.). – An evaluation of phrasal and clustered representations on a text
categorization task. In : Proceedings of the 15th annual international ACM SI-
GIR conference on Research and development in information retrieval. pp. 37–50. –
Copenhagen, Denmark, 1992.
[112] Li (Y. H.) et Jain (A. K.). – Classification of text documents. Comput. J., vol.41,
No 8, 1998, pp. 537–546.
[113] Lin (D.). – An Information-Theoretic Definition of Similarity. In : Proceedings of the
Fifteenth International Conference on Machine Learning. pp. 296–304. – Madison,
Wisconsin USA, 1998.
[114] Lin (D.) et Pantel (P.). – Induction of semantic classes from natural language text.
In : Proceedings of SIGKDD, pp. 317–322. – San Francisco, CA, 2001.
[115] Lin (K. I.) et Kondadadi (R.). – A Word-Based Soft Clustering Algorithm for
Documents. In : Proceedings of 16th International Conference on Computers and
Their Applications. – Seattle, Washington, 2001.
[116] Liu (Huan) et Setiono (Rudy). – A Probabilistic Approach to Feature Selection - A
Filter Solution. In : International Conference on Machine Learning, pp. 319–327.
– Bari, Italy, 1996.
[117] MacQueen (J.). – Some methods for classification and analysis of multivariate obser-
vations. In : Proceedings of the Fifth Berkeley Symposium on Mathematical statistics
and probability. pp. 281–297. – Berkeley, 1967.
[118] Malerba (D.), Esposito (F.), Gioviale (V.) et Tamma (V.). – Comparing Dissimi-
larity Measures for Symbolic Data Analysis. In : Int. Conferences on Exchange of
Technologies and Know-How and New Techniques & Technologies for Statistics. –
Crete, Greece, 2001.
[119] Mallat (S.). – A wavelet tour of signal processing. Academic Press, 1998.
[120] Martin (L.) et Moal (F.). – A Language-Based Similarity Measure. In : 12th
European Conference on Machine Learning ECML 2001. pp. 336–347. – Freiburg,
Germany, 2001.
[121] Matula (D.W.) et Sokal (R.R.). – Properties of Gabriel graphs relevant to geographic
variation research and clustering of points in the plane. Geogr. Anal., vol.12, N o 3,
1980, pp. 205–222.
[122] Merz (C.J.) et Murphy (P.M.). – UCI repository of machine learning databases.
1998.
[123] Michalski (R. S.). – On the quasi-minimal solution of the general covering problem.
In : V International Symposium on Information Processing (FCIP 69), pp. 125–128.
– Yugoslavia, 1969.
[124] Michalski (R. S.). – Knowledge acquisition through conceptual clustering : A theore-
tical framework and an algorithm for partitioning data into conjunctive concepts. –
Technical Report nNo 1026, Department of Computer Science, University of Illinois
at Urbana-Champaign, Urbana, Illinois, 1980.
[125] Michalski (R. S.), Stepp (R. E.) et Diday (E.). – A recent advance in data ana-
lysis : Clustering objects into classes characterized by conjuctive concepts. Pattern
Recognition, vol.1, 1983.
190
Bibliographie
[126] Mitchell (T.). – Machine Learning. – New York, McGraw Hill, 1997.
[127] Mitra (P.), Murthy (C.A.) et Pal (S.K.). – Unsupervised Feature Selection Using Fea-
ture Similarity. IEEE Transactions on Pattern Analysis and Machine Intelligence,
vol.24, No 4, 2002.
[128] Moody (J.) et Darken (C.). – Fast Learning in Networks of Locally-Tuned Processing
Units. Neural Computation, vol.1, 1989, pp. 281–294.
[129] Morin (E.). – Extraction de liens sémantiques entre termes à partir de corpus de
textes techniques. – Thèse de doctorat. IRIN, Université de Nantes, décembre 1999.
[130] Moulinier (I.) et Ganascia (J.G.). – Applying an existing machine learning algorithm
to text categorization. In : Connectionist, statistical, and symbolic approaches to
learning for natural language processing, workshop in IJCAI ’95, éd. par Stefan
Wermter and Ellen Riloff and Gabriele Scheler. pp. 343–354. – Montreal, Canada,
1996.
[131] Muggleton (S.). – Inverting Entailment and Progol. New Generation Computing,
vol.13, 1995, pp. 245–286.
[132] Muggleton (S.) et Feng (C.). – Efficient induction of logic programs. In : Proceedings
of the 1st Conference on Algorithmic Learning Theory. pp. 368–381. – Tokyo, Japan,
1990.
[133] Muller (C.), Polanco (X.), Royaute (J.) et Toussaint (Y.). – Acquisition et structu-
ration des connaissances en corpus : éléments méthodologiques. – Technical Report
nNo RR-3198, Inria, Institut National de Recherche en Informatique et en Automa-
tique, Juin 1997.
[134] Murty (M. N.), Babu (T. R.) et Agrawal (V. K.). – Clustering Large Symbolic
Datasets. In : International Workshop on Symbolic Data Analysis. – Paris, France,
2004.
[135] Nadif (M.) et Jollois (F. X.). – Accélération de EM pour données qualitatives :
étude comparative de différentes versions. In : EGC 2004, 4th French-Speaking
Conference on Knowledge Discovery and Knowledge Management. pp. 253–264. –
Clermont-Ferrand, France, Janvier 2004.
[136] Ng (T. R.) et Han (J.). – Efficient and Effective Clustering Methods for Spatial
Data Mining. In : Proceedings of 20th International Conference on Very Large Data
Bases VLDB’94, éd. par Bocca (J. B.), Jarke (M.) et Zaniolo (C.). pp. 144–155. –
Santiago de Chile, Chile, 1994.
[137] Pantel (P.). – Clustering by Committee. – Ph.d. dissertation, Department of Com-
puting Science, University of Alberta, 2003.
[138] Pantel (P.) et Lin (D.). – Discovering word senses from text. In : Proceedings of
the eighth ACM SIGKDD international conference on Knowledge discovery and data
mining. pp. 613–619. – Edmonton, Alberta, Canada, 2002.
[139] Paterson (M.S.) et Yao (F.F.). – On Nearest Neighbor Graphs. Automata, Languages
and Programming, vol.623, 1992, pp. 416–426.
[140] Peel (D.) et McLachlan (G.). – User’s guide to EMMIX - version. – Technical
report, University of Queensland, Australia, 1998.
[141] Pellegrini (F.). – Static mapping by dual recursive bipartitioning of process and
architecture graphs. IEEE, 1994, pp. 486–493.
191
Bibliographie
[142] Pereira (F. C. N.), Tishby (N.) et Lee (L.). – Distributional Clustering of English
Words. In : 31st Annual Meeting of the Association for Computational Linguistics,
pp. 183–190. – Ohio, USA, 1993.
[143] Pessiot (J. F.), Caillet (M.), Amini (M. R.) et Gallinari (P.). – Apprentissage non-
supervisé pour la segmentation automatique de textes. In : Première Conférence
en Recherche d’Information et Applications CORIA’2004, pp. 213–227. – Toulouse,
France, janvier 2004.
[144] Plotkin (G. D.). – A note on inductive generalization. Machine Intelligence, vol.5,
1970.
[145] Poudat (C.) et Cleuziou (G.). – Genre and Domain Processing in an Information
Retrieval Perspective. In : Third International Conference on Web Engineering, éd.
par LNCS. pp. 399–402. – Oviedo, Spain, 2003.
[146] Prié (Y.). – Sur la piste de l’indexation conceptuelle de documents : une approche
par l’annotation. L’indexation, Document Numérique, vol.4, N o 1-2, 2000, pp. 11–35.
[147] Qiu (Y.) et Frei (H. P.). – Concept-based query expansion. In : Proceedings of
SIGIR-93, 16th ACM International Conference on Research and Development in
Information Retrieval, pp. 160–169. – Pittsburgh, US, 1993.
[148] Quinlan (J. R.). – Induction of decision trees. Machine Learning, vol.1, 1986, pp.
81–106.
[149] Quinlan (J. R.). – C4.5 : Programs for Machine Learning. – Morgan Kaufmann,
1993.
[150] Quinlan (J. R.) et Cameron-Jones (R. M.). – Induction of logic programs : FOIL
and related systems. New Generation Computing, Special issue on Inductive Logic
Programming, vol.13, No 3-4, 1995, pp. 287–312.
[151] Rabiner (L. R.), Levinson (S. E.), Rosenberg (A. E.) et Wilpon (J. G.). – Speaker
independent recognition of isolated words using clustering techniques. IEEE Trans.
Accoust. Speech Signal Process., vol.27, 1979, pp. 336–349.
[152] Rand (W. M.). – Objective Criteria for the evaluation of Clustering Methods. Jour-
nal of the American Statistical Association, vol.66, 1971, pp. 846–850.
[153] Rao (C. R.). – The utilization of multiple measurements in problems of biological
classification. Journal of Royal Statistical Society B, vol.10, 1948, pp. 159–203.
[154] Resnik (P.). – Using Information Content to Evaluate Semantic Similarity in a
Taxonomy. In : Proceedings of the 14th International Joint Conference on Artificial
Intelligence, IJCAI 95, pp. 448–453. – Montréal, Canada, 1995.
[155] Riloff (E.) et Shepherd (J.). – A corpus-based approach for building semantic lexi-
cons. In : Proceedings of the Second Conference on Empirical Methods in Natural
Language Processing, pp. 117–124. – Somerset, New Jersey, 1997.
[156] Robertson (S. E.) et Harding (P.). – Probabilistic automatic indexing by learning
from human indexers. J. Document 40, vol.4, 1984, pp. 264–270.
[157] Rodrı́guez (O.) et Diday (E.). – Pyramidal Clustering Algorithms in ISO-3D Project.
In : Workshop on Symbolic Data Analysis (PKDD 2000). – Lyon, France, 2000.
[158] Ruge (G.), Schwarz (C.) et Warner (A. J.). – Effectiveness and Efficiency in Natural
Language Processing for Large Amounts of Text. Journal of the American Society
for Information Science, vol.6, No 42, 1991, pp. 450–456.
192
Bibliographie
[159] Salton (G.) et McGill (M. J.). – Introduction to Modern Information Retrieval. –
McGraw-Hill, Inc., 1986.
[160] Sander (J.), Ester (M.), Kriegel (H. P.) et Xu (X.). – Density-Based Clustering in
Spatial Databases : The Algorithm GDBSCAN and its Applications. Data Mining
and Knowledge Discovery, vol.2, 1998, pp. 169–194.
[161] Schütze (H.), Hull (D. A.) et Pedersen (J. O.). – A Comparison of Classifiers and Do-
cument Representations for the Routing Problem. In : Research and Development
in Information Retrieval, pp. 229–237. – Seattle, Washington, USA, 1995.
[162] Sebag (M.). – Distance Induction in First Order Logic. In : Proceedings of ILP’97.
pp. 264–272. – Prague, Czech Republic, 1997.
[163] Sebag (M.) et Schoenauer (M.). – Topics in Case-Based Reasonning, chap. A Rule-
based Similarity Measure, pp. 119–130. – Springer-Verlag, 1994, LNAI, volume 837.
[164] Sebastiani (F.). – Machine learning in automated text categorization. ACM Comput.
Surv., vol.34, No 1, 2002, pp. 1–47.
[165] Sheikholeslami (G.), Chatterjee (S.) et Zhang (A.). – WaveCluster : A Multi-
Resolution Clustering Approach for Very Large Spatial Databases. In : Proc. 24th
Int. Conf. Very Large Data Bases, VLDB, pp. 428–439. – New York City, USA,
1998.
[166] Shin (S. I.) et Choi (K. S.). – Automatic Word Sense Clustering Using Collocation
for Sense Adaptation. In : The Second Global Wordnet Conference (GWC’04). pp.
320–325. – Brno, Czech Republic, 2004.
[167] Siegel (J. H.), Goldwyn (R. M.) et Friedman (H.P.). – Pattern and process of the
evolution of human septic shock. Surgery, vol.70, 1971, pp. 232–245.
[168] Slonim (N.) et Tishby (N.). – Document clustering using word clusters via the
information bottleneck method. In : Research and Development in Information
Retrieval, pp. 208–215. – Athenes, Greece, 2000.
[169] Smadja (F. Z.). – Retrieving Collocations from Text : Xtract. Computational Lin-
guistics, vol.19(1), 1994, pp. 143–177.
[170] Smadja (F. Z.), McKeown (K.) et Hatzivassiloglou (V.). – Translating colloca-
tions for bilingual lexicons : A statistical approach. Computational Linguistics, vol.1,
No 22, 1996, pp. 1–38.
[171] Sneath (P. H. A.) et Sokal (R. R.). – Numerical Taxonomy - The Principles and
Practice of Numerical Classification. – San Francisco, W. H. Freeman and Compagny,
1973.
[172] Sokal (R. R.) et Michener (C. D.). – A Statistical Method for Evaluating Systematic
Relationships. University of Kansas Science Bulletin, vol.38, 1958, pp. 1409–1438.
[173] Sorensen (T.). – A Method of Establishing Groups of Equal Amplitude in Plant
Sociology Based on Similarity of Species Content and Its Application to Analyses of
the Vegetation on Danish Commons. Biologiske Skrifter, vol.5, 1948, pp. 1–34.
[174] Sowa (J. F.). – Conceptual structures : Information processing in mind and machine.
– Addison-Wesley, 1984.
[175] Sparck-Jones (K.). – Synonymy and Semantic Classification. – Edinburg University
Press, 1987.
193
Bibliographie
[176] Srinivasan (A.), Muggleton (S.), King (R. D.) et Sternberg (M. J. E.). – Mutagenesis :
ILP experiments in a non-determinate biological domain. In : Proceedings of the
Fourth Inductive Logic Programming Workshop. – Bon, Germany, 1994.
[177] Stepp (R. E.) et Michalski (R. S.). – Conceptual Clustering : Inventing Goal-Oriented
Classifications of Structured Objects. In : Machine Learning : An A.I. Approach,
éd. par Michalski (R.), Carbonell (J.) et Mitchell (T.). – Kaufmann, 1986.
[178] Toussaint (G.T.). – Algorithms for computing relative neighborhood graph. Elec-
tronics Letters, vol.16, No 22, 1980, p. 860.
[179] Turenne (N.). – Apprentissage statistique pour l’extraction de concepts à partir
de textres. application au filtrage d’informations textuelles. – Thèse de doctorat.
ENSAIS, Université Louis-Pasteur Strasbourg, Novembre 2000.
[180] Turney (P. D.). – Mining the Web for Synonyms : PMI-IR versus LSA on TOEFL.
In : 12th European Conference on Machine Learning ECML 2001. pp. 491–502. –
Freiburg, Germany, 2001.
[181] Van Rijsbergen (C. J.). – Information Retrieval, 2nd edition. – Dept. of Computer
Science, University of Glasgow, 1979.
[182] Vilalta (R.), Achari (M.) et Eick (C. F.). – Piece-Wise Model Fitting Using Local
Data Patterns. In : ECAI, éd. par R. López de Mántaras and L. Saitta, IOS Press.
Proceedings of the 16th European Conference on Artificial Intelligence, pp. 559–563.
– Valencia, Spain, August 22-27 2004.
[183] Wang (W.), Yang (J.) et Muntz (R. R.). – STING : A Statistical Information
Grid Approach to Spatial Data Mining. In : Twenty-Third International Conference
on Very Large Data Bases, éd. par Jarke (M.), Carey (M. J.), Dittrich (K. R.),
Lochovsky (F. H.), Loucopoulos (P.) et Jeusfeld (M. A.). pp. 186–195. – Athens,
Greece, 1997.
[184] Wille (R.). – Restructuring Lattice Theory : an Approach Based on Hierarchies of
Concepts. In : Ordered Sets, éd. par Rival (I.), pp. 445–470. – Dordrecht-Boston :
Reidel, 1982.
[185] Wu (Z.) et Palmer (M.). – Verb semantics and lexical selection. In : 32nd. An-
nual Meeting of the Association for Computational Linguistics, pp. 133–138. – New
Mexico State University, Las Cruces, New Mexico, 1994.
[186] Xie (X. L.) et Beni (G.). – A Validity measure for Fuzzy Clustering. IEEE Transac-
tions on Pattern Analysis and Machine Intelligence, vol.23, N o 4, 1991.
[187] Xu (X.), Ester (M.), Kriegel (H. P.) et Sander (J.). – A Distribution-Based Clus-
tering Algorithm for Mining in Large Spatial Databases. In : 14th International
Conference on Data Engineering, pp. 324–331. – Orlando, FL, 1998.
[188] Yang (Y.) et Chute (C. G.). – An example-based mapping method for text catego-
rization and retrieval. ACM Trans. Inf. Syst., vol.12, No 3, 1994, pp. 252–277.
[189] Yang (Yiming). – An Evaluation of Statistical Approaches to Text Categorization.
Information Retrieval, vol.1, No 1/2, 1997, pp. 69–90.
[190] Zahn (C.T.). – Graph theoretical methods for detecting and describing gestalt
clusters. IEEE Transactions on Computers, vol.20, 1971, pp. 68–86.
[191] Zargayouna (H.) et Salotti (S.). – SemIndex : a model of semantic indexing on XML
documents. In : 26th European Conference on Information Retrieval (ECIR’2004).
– Sunderland, UK, 2004.
194
Une méthode de classification non-supervisée pour l’apprentissage de règles
et la recherche d’information
Le regroupement d’objets, dans un cadre non-supervisé, est une tâche importante et diffi-
cile en apprentissage. Ce processus intervient dans des contextes variés tels que la découverte de
connaissances, la simplification dans le représentation ou la description d’un ensemble de données.
Nous proposons, dans cette étude, l’algorithme de clustering PoBOC permettant de structurer
un ensemble d’objets en classes non-disjointes. Nous utilisons cette méthode de clustering comme
outil de traitement dans deux applications très différentes.
– En apprentissage supervisé, l’organisation préalable des instances apporte une connaissance
utile pour la tâche d’induction de règles propositionnelles et logiques.
– En Recherche d’Information, les ambiguı̈tés et subtilités de la langue naturelle induisent
naturellement des recouvrements entre thématiques.
Dans ces deux domaines de recherche, l’intérêt d’organiser les objets en classes non-disjointes
est confirmé par les études expérimentales adaptées.
Mots clés : Apprentissage, classification, fouille de données, recherche d’information.
Data clustering is a major, but a hard, task in the unsupervised learning domain. This process
is used in various context such as Knowledge Discovery, representation or description simplification
of a data set.
In this study, we present the clustering algorithm PoBOC which organizes a dataset into
overlapping classes which naturally match with real concepts of data. This clustering method is
used in two very different applications.
– In the supervised learning field, the induction of a set of propositional and first-order rules
is performed by first organizing each class into sub-classes.
– In the Information Retrieval field, the ambiguities from natural langage naturally induce
overlaps between thematic.
On these two research domains, the organization of a dataset into overlapping clusters is
validated with suitable experimental studies.
Keywords : Machine learning, classification, data mining, information retrieval.