Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

TH3628top

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 141

DEPARTEMENT D’INFORMATIQUE

MEMOIRE

Présenté par

BENFRIHA HICHEM
Pour obtenir

LE DIPLOME DE MAGISTER

Option : Informatique et Automatique

Intitulé :

CONTRIBUTION A LA CATEGORISATION DE TEXTES :


MODELISATION BOOLEENNE

Soutenu le : 16/02/2012 à la salle de conférence de la faculté des sciences

Devant les membres du jury :

Président : Mr D. BENHAMAMOUCH Professeur, Université d’Oran

Examinateur : Mr M. SENOUCI Maître de Conférences, Université d’Oran

Examinateur : Mr A. GHOMARI Maître de Conférences, Université d’Oran

Encadreur : Mr B. ATMANI Maître de Conférences, Université d’Oran

Co-encadreur : Mme F. BARIGOU Maître Assistante, Université d’Oran.


Mémoire de magister

Option : Informatique et Automatique

THEME

CONTRIBUTION A LA CATEGORISATION DE
TEXTES :

MODELISATION BOOLEENNE

Présenté par : Mr BENFRIHA HICHEM


Remerciements

Avant toute chose je tiens à remercier le grand « DIEUX » de m’avoir donné le


courage et la volonté qui m’ont permis de réaliser ce travail.

Mes remerciements particuliers à Mr Baghdad Atmani Maître de Conférences à


l’Université d’Oran et Madame Fatiha Barigou Maître Assistante à l’Université
d’Oran d’avoir acceptés d’encadrer ce projet. Merci pour vos précieux aides,
encouragements et éclaircissements.

Mes sincères remerciements à Mr Djilali Benhamamouch Professeur à l’Université


d’Oran d’avoir accepté de présider le jury. Je tiens aussi à remercier
chaleureusement les examinateurs de ce travail, Mr Mohamed Senouci Maître de
Conférences à l’Université d’Oran, et Mr Abdelghani Ghomari Maître de Conférences
à l’Université d’Oran.

Je n’oublierai pas d’adresser ma gratitude à notre directeur du laboratoire


d’informatique d’Oran « LIO », Mr Bouziane Beldjilali Professeur à l’Université
d’Oran.

Merci également à l’ensemble des collègues de l’équipe Simulation, Intégration et


fouille de donnés (SIF) et du laboratoire LIO, ainsi que les enseignements du
département d’informatique à l’université d’Oran.

Finalement, je pense que je ne suis pas arrivée à ce stade que grâce aux
encouragements et aides apportés par mes chers parents : mon père Benfriha
Bachir et ma mère Chabane Mehadjia, ma chère fiancé Ghellal Assia, mon chère
frère Mohammed et mes sœurs Nesserine et Wafaa ainsi que leurs maries
respectivement Khemliche Belarbi et Kalafate Tarik.

Merci à toutes les personnes qui ont contribué de prés ou de loin à l’aboutissement
de ce travail.

Merci
Introduction générale................................................................................................................ 1

Chapitre I : La fouille de texte et la catégorisation de documents

1.1. Introduction ........................................................................................................................ .5

1.2. La fouille de textes ................................................................................................. 5

1.2.1. Définitions ........................................................................................................... 7

1.2.3. Disciplines fondatrices de la fouille de textes ..................................................... 8

1.2.4. Domaine d’application de la fouille de textes ..................................................... 9

1.2.5. Les étapes de la fouille de textes ....................................................................... 12

1.3. La catégorisation de textes................................................................................................ 13

1.3.1 Problématique de la catégorisation des documents ........................................... 14

1.3.2 Le processus de catégorisation des documents ................................................. 14

1.3.2.1 La phase d’indexation ........................................................................ 15

1.3.2.2 La phase d'apprentissage ................................................................... 15

1.3.2.3 La phase de test ................................................................................ 22

1.3.3 Apprentissage automatique en catégorisation de document .............................. 22

1.3.3.1 Apprentissage non supervisé ............................................................... 23

1.3.3.2 Apprentissage supervisé ..................................................................... 23

1.3.4 Les algorithmes d'apprentissage supervisé ....................................................... 24

1.3.4.1 Les classifieurs bayésiens naïfs ........................................................... 25

1.3.4.2. La méthode des k-plus proches voisins ............................................... 26

1.3.4.3 Réseaux de neurones artificiels ........................................................... 28

1.3.4.4 Les machines à vecteurs supports (SVM) ............................................ 31

1.3.4.5 Les arbres de décision ......................................................................... 33

1.3.4.6 Les treillis de Galois ........................................................................... 35

1.4. Conclusion ........................................................................................................................ 36


Chapitre II : L’Analyse Formel de Concepts (AFC)

2.1 Introduction ........................................................................................................................ 38

2.2 Théorie des treillis : Notion de base .................................................................................. 38

2.2.1 Ensemble ordonné ............................................................................................... 38

2.2.2 Treillis................................................................................................................. 40

2.2.3 Fermeture ............................................................................................................ 41

2.2.4 Connexion de Galois ........................................................................................... 43

2.3 Analyse de Concepts Formels ........................................................................................... 43

2.3.1 Origine et contexte philosophique....................................................................... 43

2.3.2 Contexte formel ................................................................................................... 44

2.3.3 Connexion de Galois dans un contexte formel .................................................... 45

2.3.4 Concept formel .................................................................................................... 46

2.3.5 Treillis de concepts.............................................................................................. 47

2.3.6 Algorithmes de construction de treillis de concepts............................................ 48

2.3.6.1 Les algorithmes batch........................................................................... 49

2.3.6.2 Les algorithmes incrémentaux.............................................................. 52

2.3.6.3 Les algorithmes d’assemblages ............................................................ 54

2.4 Systèmes à Base de Treillis de Galois.............................................................................. 55

2.5. Conclusion......................................................................................................................... 56

Chapitre III : Conception du système LATTICE-CELL

3.1 Introduction ...................................................................................................................... 59

3.2. La catégorisation de textes ............................................................................................... 60

3.2.1 Problématique ..................................................................................................... 60

3.2.2 Le processus de catégorisation ......................................................................... 61

3.3. Outilles conceptuels et cellulaires .................................................................................... 61


3.3.1 Les treillis de Galois ........................................................................................... 61

3.3.2. Automate cellulaire pour des systèmes d’inférences -CASI-.............................. 64

3.3.2.1. Définition d’un automate cellulaire .................................................... 64

3.3.2.2. Architecture générale du système CASI .............................................. 65

3.3.2.3. Les fonctions de transitions du moteur d’inférence............................. 67

3.4. Architecture générale du système LATTICE-CELL ......................................................... 68

3.5 Méthodologie de catégorisation des comptes rendus hospitaliers.................................... 69

3.5.1. Le corpus d’étude .............................................................................................. 69

3.5.2. Construction de l’index ...................................................................................... 69

3.5.3. Réduction du nombre des termes ....................................................................... 69

3.5.4. Représentation vectorielle ................................................................................. 70

3.5.5. Elaboration du treillis de Galois Cellulaire....................................................... 71

3.5.6. Phase de Catégorisation (Test) ......................................................................... 77

3.5.6.1. Prétraitement ....................................................................................... 77

3.5.6.2. Calcul de la similarité ......................................................................... 77

3.5.6.3. Inférence cellulaire.............................................................................. 79

3.5.6.4. Vote majoritaire .................................................................................. 80

3.6 Conclusion........................................................................................................................ 81

Chapitre IV : Conception du système LATTICE-CELL

4.1. Introduction ..................................................................................................................... 84

4.2. L’AFC et les Treillis de Galois ........................................................................................ 85

4.3. Discussion sur les treillis de Galois ................................................................................. 85

4.4. L’automate cellulaire CASI .............................................................................................. 87

4.5. Vers les solutions hybrides ............................................................................................... 87

4.5.1. Classification des systèmes hybrides.................................................................. 88

4.5.2 Types d’Intégration .......................................................................................... 88


4.5.3 Degré de Couplage ............................................................................................ 89

4.6 Architecture fonctionnelle du système LATTICE-CELL ................................................. 90

4.7 Expérimentations............................................................................................................... 91

4.7.1. Applications........................................................................................................ 92

4.7.2. Mesures de performances................................................................................... 96

4.7.3. Résultats ............................................................................................................ 98

4.7.3.1 Résultats pour le CORPUS1 ................................................................. 99

4.7.3.2 Résultats pour le CORPUS2 ............................................................... 101

4.7.4. L’impact des fonctions de réduction des termes pour les corpus 1 et 2........... 103

4.8. Etude de complexité ...................................................................................................... 103

4.9 Conclusion ..................................................................................................................... 105

Conclusion générale et perspectives ..................................................................................... 107

Annexes

Référence bibliographiques
TABLE DES FIGURES

Chapitre I
Figure 1.1. Apports disciplinaires et domaines d'application de la fouille de textes .............. 11

Figure 1.2. Vue schématique des étapes de la fouille de textes .............................................. 12

Chapitre II
Figure 2.1 Le treillis de concepts correspondant au contexte formel K = (G, M, I)
donné dans la table 2.1 ...................................................................................... 48
Figure 2.2 Les étapes de la construction incrémentale du treillis de concepts
correspondant au contexte formel donné dans la table 2.2 .................... 53
Figure 2.3 Les treillis de concepts correspondant aux contextes formels donnés
dans les tables 2.4.............................................................................................. 54
Figure 2.4 Liens lien entre les concepts des treillis B(K1) et B(K2) et ceux du
treillis B(K) ..................................................................................................... 55

Chapitre III

Figure 3.1 Relation binaire et treillis de Galois associé (Diagramme de Hasse) .................. .62

Figure 3.2 Diagramme général de système cellulaire CASI................................................... 65

Figure 3.3 Automate cellulaire pour des systèmes d’inférence ....................................... 67

Figure 3.4 Architecture générale du système LATTICE-CELL .............................................. 68

Figure 3.5 Treillis de Galois générer à partir du tableau 3.1................................................ 74

Figure 3.6 Initialisation de la couche Celfact par TCell_F .................................................... 75


Figure 3.7 Initialisation de la couche Celrule par TCell_R.................................................... 75
Figure 3.8 Initialisation de la matrice d’entre RE par TCell_RE........................................... 76
Figure 3.9 Initialisation de la matrice de sortie RS par TCell_RS ......................................... 76
Figure 3.10 la couche Celfact après l’utilisation de la mesure de similarité ......................... 79
Figure 3.11 la couche Celfact après l’inférence cellulaire..................................................... 80

Chapitre IV
Figure 4.1 Schéma global du système hybride LATTICE-CELL ........................................... 90
Figure 4.2 L’impact des mesures de similarités du CORPUS1 .............................................. 99

Figure 4.3 Résultats de comparaisons des performances pour le CORPUS1 ..................... 100

Figure 4.4 L’impact des mesures de similarités du CORPUS2 ............................................ 101

Figure 4.5 Résultats de comparaisons des performances pour le CORPUS 2 ..................... 102
LISTE DES TABLEAUX

Chapitre II
Tableau 2.1 Un contexte formel représentant les planètes du système solaire...................... 44

Tableau 2.2 Contexte formel représentant les planètes du système solaire avec renommage
des attributs et des objets .................................................................................... 50

Tableau 2.3 Les ensembles de rectangles maximaux calculés par l’algorithme de Chein à

partir du contexte formel donné dans le tableau 2.2 .......................................... 51

Tableau 2.4 Découpage du contexte formel en deux parties K1, K2 ..................................... 54

Chapitre III

Tableau 3 .1 Représentation vectorielle (exemple illustratif de 9 CR et 6 termes d’index) .... 71

Tableau 3.2 Vecteur de termes produit issu de la phase de prétraitement .............................. 77

Chapitre IV

Tableau 4.1 Répartition des volumes des documents du CORPUS1 ...................................... 93

Tableau 4.2 Répartition des volumes des comptes rendus du CORPUS2 .............................. 95

Tableau 4.3 Table de confusion .............................................................................................. 96

Tableau 4.4 L’impact des mesures de similarités du CORPUS1 ............................................ 99

Tableau 4.5 Comparaison des résultats pour le CORPUS1 ................................................ 100

Tableau 4.6 L’impact des mesures de similarités du CORPUS2 .......................................... 101

Tableau 4.7 Comparaison des résultats pour le CORPUS 2 ................................................. 102


Introduction
Générale
INTRODUCTION GENERALE

Contexte de l’étude

La fouille de textes (FT) est une thématique scientifique très dynamique dont les
caractéristiques pluralistes et plurielles en font un des carrefours les plus vivaces de notre
époque. Pluralistes, car elle met en relation la recherche universitaire et la recherche en milieu
industriel, la préoccupation en sciences fondamentales et les enjeux politico-économiques, de
par ses multiples applications à destination du grand public. Plurielle, puisqu’elle unit des
thématiques disciplinaires allant de l’informatique, au marketing, en passant par les
statistiques, la linguistique, la sociologie et les sciences de la communication. La fouille de
textes définit une méthodologie scientifique issue de ces disciplines d’origines où vont se
mêler simulation, expérimentations, observation et évaluation.

Ainsi la FT et ses tâches telles que : la recherche et l’extraction d’informations, la


catégorisation de textes, le résumé automatique et le filtrage d’information, etc. est la réponse
actuelle du monde de la recherche et de l'industrie au problème de la surcharge
informationnelle de type textuel. Il est admis que les textes constituent l'essentiel des
informations (80 %) disponibles dans les mémoires électroniques.

Cependant, les mêmes problèmes qui se sont posés pour les données structurées telle
que l’organisation, l’analyse et la découverte de nouvelles connaissances se posent également
pour les textes, mais de façon plus aiguë. La surabondance des textes pose de nouveaux défis
informatiques en termes de stockage et de traitement en temps réel. Face à ces défis,
l’amélioration des techniques existantes de découverte de nouvelles connaissances à partir de
textes telle que les arbres de décision (ID3), les K-plus proches voisins (K-PPV), le classifieur
NaiveBays, les machines à vecteurs supports (SVM) et les treillis de Galois, etc. est devenue
un axe majeure dans la dernière décennie.

Nous nous intéressons, dans le cadre de ce mémoire, à l’utilisation et l’amélioration


des treillis de Galois pour un processus de catégorisation de texte médicaux.

1
Problématique du projet

Face à l’accroissement de l’information disponible dans les établissements hospitaliers


que possèdent de nombreuses bases de données d’informations médico-administratives la
catégorisation automatique de textes s’impose comme une technologie clé dans la recherche
et l’extraction d’information, ainsi la complexité d’exprimer ou de prédire des maladies reste
une tâche très difficile pour les experts du domaine, et pour les experts cogniticiens sachant
que l’interprétation des phénomènes médicaux peut être de diverses façons et sous différentes
formes.

L’objectif de ce mémoire est d’apporter une contribution à ce sujet en proposant un


nouveau système hybride baptisé LATTICE-CELL de catégorisation des comptes rendus
hospitaliers du service de pneumo-pédiatrie de l’Etablissement Hospitaliers spécialisé d’Oran
(EHS) par l’utilisation conjointe de treillis de Galois [1] et d’automate cellulaire CASI [2].

L’AFC et les treillis de Galois

L'Analyse Formel de Concepts (AFC) est une branche de la théorie des treillis qui
permet la génération de concepts. Un concept formel est un couple complet qui associe un
ensemble d'objets (extension) à un ensemble d'attributs (intention) permettant ainsi de
regrouper les objets qui ont des caractéristiques communes. L'AFC est un domaine de
recherche actif qui évolue énormément chaque année à cause de son utilité grandissante.

Même si l'AFC semble abstraite et très théorique, elle fait l'objet de plusieurs
applications dans des domaines variés (réutilisation en génie logiciel, repérage de
l'information, applications web, catégorisation de textes). Le treillis de concepts est utile dès
lors qu'on souhaite explorer de l'information volumineuse pour en extraire des regroupements
conceptuels. L'AFC peut aussi bien servir à faire de la classification des textes ou des pages
web, recherche d'images basée sur le contenu, découvrir de l'information sur une population
ou bien classer des données dans un entrepôt. Toutes ces applications sont déjà réalisables
grâce aux nombreux algorithmes existants pour générer les concepts. Et pour cela l’ACF a été
centrée autour de la notion de concept qui, du point de vue philosophique, est considéré
comme l’unité de base de la pensée humaine.

2
L’utilisation des treillis de Galois permet une organisation géométrique intuitive et
offre un cadre pour la classification supervisée grâce à la notion de concept : concept =
intension + extension. Le principal avantage du treillis de Galois réside dans son exhaustivité.
De cet avantage découle un inconvénient majeur : tous les algorithmes de construction de
treillis ont une complexité exponentielle en fonction du nombre d’attributs et d’objets.

Ainsi, et dans plusieurs applications de prospection de données, la production d'un


ensemble exhaustif de connaissances (concepts) peut être très coûteuse et comporter plusieurs
éléments absolument pas pertinents pour un utilisateur donné. Aussi, il serait avantageux
d'offrir une possibilité de réduire cette complexité en stockage mémoire et en temps de
réponse des treillis de Galois en modélisant cette structure complexe par les automates
cellulaires.

La Machine Cellulaire « CASI » (Cellular Automata for Symbolic Induction)

La machine « CASI » [2] (cellular Automata for System Induction) publiée


récemment par le docteur Atmani Baghdad chef d’équipe SIF simulation intégration et fouille
de données au sein de Laboratoire d’Informatique d’Oran LIO dirigé par le professeur
Beldjilali Bouziane, est un automate pour l’inférence cellulaire. En plus, grâce à sa
modélisation booléenne elle offre une souplesse de calculs, un temps de calcul réduit et une
meilleure gestion de mémoire.

Organisation du mémoire

Ce mémoire est structuré en deux parties. Elles sont organisées selon l’aspect
théorique et l’aspect applicatif.

La première partie est consacrée à l’aspect théorique en présentant l’étude de l’état de


l’art. Elle se compose de deux chapitres :

Le chapitre 1, présente le domaine de la fouille de textes « Text Mining » et nous


détaille une des taches de cette discipline qui est la catégorisation de textes.

3
Le chapitre 2, là où, aborde l’Analyse Formelle de Concepts (AFC) à savoir les
notions de base et les définitions mathématiques relatives à la théorie des ensembles ordonnés
et les algorithmes proposés dans ce domaine relatifs à la construction des treillis de Galois.

La deuxième partie est consacrée à l’aspect applicatif en présentant la conception et


l’expérimentation du système LATTICE-CELL. Elle se compose de deux chapitres :

Dans le chapitre 3, nous présentons la conception du système LATTICE-CELL avec la


méthodologie utilisée pour la catégorisation des comptes rendus hospitaliers

Dans le chapitre 4, nous présentons la phase d’expérimentation, et les résultats de


comparaison entre le système LATTICE-CELL et quelques algorithmes de catégorisation de
textes.

Enfin, nous terminons ce mémoire par une conclusion générale et quelques


perspectives avant de présenter les Annexes A, et B.

L’annexe A est dédié à la présentation de la plateforme Galicia utilisée pour la


construction du treillis de Galois et l’annexe B est dédié à la présentation de quelles que
interfaces du logiciel implémenté.

4
Chapitre 1

La fouille de textes et la catégorisation


des documents
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.1 Introduction

La fouille de textes (FT) ou l'extraction de connaissances dans les textes (ECT) est une
spécialisation de la fouille de données et fait partie du domaine de l'intelligence artificielle.
Cette technique est un ensemble de traitements informatiques consistant à extraire des
connaissances selon un critère de nouveauté ou de similarité dans des textes produits par
des humains pour des humains [3, 4]. Nombreuse tâches de la fouille de textes ont étés
proposées dans la littérature parmi elles on trouve la catégorisation automatique de textes
qui s’impose comme une technologie clé dans la recherche et l’extraction d’information,
où de nos jours, la demande d’outils de recherche permettant de gérer la surcharge
d’information a conduit à un intérêt pour la catégorisation automatique de textes dans
l’espoir de réduire le travail humain de façon significative, et à résoudre des problèmes
d’accès à l’information voulu [5].

Ce chapitre présente d’abord le domaine de la fouille de textes, ces tâches et domaines


d’applications. Il expose ensuite la tâche de catégorisation de textes et la notion de
représentation numérique de textes. Enfin nous présentons les techniques de catégorisation
utilisées pour catégoriser les textes.

1.2 La fouille de textes

La (FT), ou text mining, est introduite au milieu des années quatre-vingt-dix sous le
terme Knowledge Discovery in Textual Databases (KDT) [6] ou Text Data Mining (TDM)
[7], puis traduit en français dans [8] par Extraction des Connaissances à partir de Textes
(ECT).

Dans le texte introductif de l’atelier « Text Mining » de la conférence KDD 2000 [9],
les organisateurs écrivent que : «l’objectif de la fouille de textes est d’exploiter
l’information contenue dans les documents textuels de différentes manières, incluant les
analyses classiquement faites en fouille de données : découvrir des patrons et des
tendances dans les données, trouver des associations entre les notions, construire des règles
de prédiction, etc.». Dans [7] : « la fouille de données textuelles est un processus d’analyse
exploratoire de données qui permet de révéler de nouvelles connaissances ou de permettre
de répondre, de façon pertinente, à des questions. ». Pour [8] : « le but d’un processus de
5
Chapitre 1 : La fouille de textes et la catégorisation des documents

fouille de textes est de trouver des relations intéressantes impossibles ou difficiles à


détecter par une analyse séquentielle de l’information ».

Ainsi la FT désigne l'application des techniques d'extraction de connaissances à partir


des données non structurées ou très faiblement structurées que sont les textes [10].
Certaines parties des textes peuvent en effet avoir été annotées avec des métadonnées. Il
existe un consensus attribué à Feldman et Dagan [6] pour les premiers travaux clairement
désignés de Knowledge discovery in Texts et Text Mining, ces travaux de la découverte
des connaissances à partir des textes (DCT) étaient très imprégnés des travaux faits en
extraction de connaissances dans des bases de données (ECBD) sur les données
structurées. Compte tenu des difficultés inhérentes au traitement automatique des langues,
à savoir les difficultés d'une analyse syntaxique et sémantique profonde des phrases, ces
premiers travaux avaient opté pour des traitements de surface, assez robustes, qui
permettaient une application directe des techniques de fouille de données aux textes [10].
Ainsi, les textes n'étaient pas vraiment considérés dans leur dimension linguistique. Dans
[6], aucun traitement linguistique n'avais été effectué afin de choisir les unités textuelles
préalablement à l'étape de fouille. La FT s'est appuyée uniquement sur des techniques
statistiques afin de trouver des distributions déviantes. A l'époque de cette publication, la
fouille sur les données textuelles devait d'abord imposer une structure aux textes. En
somme, il s’agirait d'apposer des étiquettes aux textes afin d'en dériver des données
structurées. Par conséquent, Feldman et Dagan, [6] ont désigné la catégorisation de textes
comme une des premières applications de la DCT.

La catégorisation a pour objectif d'assigner une catégorie (étiquette) à un texte, en


fonction de son thème et à l'aide de catégories préalablement élaborées [11,5]. Le système
doit déterminer le sujet d'un texte pour lui attribuer un concept issu d'une hiérarchie de
concepts. Après la catégorisation, le système étudie la distribution des concepts dans
l'ensemble des textes afin de détecter des concepts surprenants (ayant une distribution
déviante par rapport à des modèles de distribution statistiques donnés) [11]. Sont ensuite
considérés comme intéressants les concepts dont la distribution dévie de la norme. L'écart
entre la distribution constatée et la norme est mesuré par une mesure de distance telle que
la distance de Kullback-Leibler. Celle-ci mesure le degré de « surprise » à l'observation
d'une distribution p, alors qu'une distribution q est attendue [10].

6
Chapitre 1 : La fouille de textes et la catégorisation des documents

L'étude de Feldman et Dagan [6] s'est également intéressée au suivi des tendances.
L'objectif était d'évaluer les écarts entre un modèle de distribution issu de données anciennes
et ceux observés dans de nouvelles données. Deux biais importants sont à remarquer dans leur
méthodologie. Tout d'abord, elle nécessitait un effort humain considérable pour la
construction de la hiérarchie des concepts. Deuxièmement, le processus de catégorisation
n'était pas automatisé, ce qui représentait à nouveau une tâche très lourde. Dans la mesure où
les étapes essentielles dans cette étude étaient manuelles (la construction du référentiel des
connaissances et la catégorisation) [10].

Par ailleurs, et selon [12] les unités textuelles dont les distributions semblaient
intéressantes étaient toutes des mots isolés (ship, loan, earn, coffee). Or, de nombreux
concepts dans un domaine donné apparaissent sous forme de pluri termes (termes composés
de plusieurs mots) tels que « impôt sur le revenu » dans le domaine économique [10]. Depuis
cette étude, des progrès considérables ont été faits sur la mise au point d'outils linguistiques
permettant d'extraire des termes à partir des textes, d'une part, et, d'autre part, sur
l'amélioration d'algorithmes de classification supervisée permettant d'automatiser la phase de
catégorisation de textes [13].

1.2.1. Définitions

Selon [10,11], la première définition de la fouille de textes, présentée en tant que telle,
est celle de Feldman et al. [12].

Définition 1 : « La fouille de textes est la science qui extrait des motifs cachés à partir
de grandes collections de textes ».

Définition 2 : S'inscrivant dans la tradition de l'ECBD, Kodratoff [8], définit la DCT


comme « la science qui découvre les connaissances dans les textes ». Cette définition est
assortie des mêmes exigences qu'en ECBD, à savoir que « les connaissances découvertes
doivent être ancrées dans le monde réel et doivent modifier le comportement d'un agent
humain ou mécanique ».

7
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.2.2. Disciplines fondatrices de la fouille de textes

Contrairement aux données structurées, les textes posent un problème supplémentaire,


difficile à résoudre. Ce sont des énoncés en langage naturel qui sont destinés à n'être compris
que par les humains. De plus, étant donné l'absence de structure explicite (les unités ne sont
pas préalablement étiquetées ou ne sont pas inscrites dans des tables), il faut déterminer les
parties d'un texte susceptibles de contenir un type d'information recherché. Toutes les formes
dans un texte n'on pas le même intérêt au regard des connaissances qu'elles peuvent livrer. En
d'autres termes, les textes posent tout d'abord le problème de la détermination des unités de
compte, les unités à extraire qui seront ensuite soumises aux algorithmes de fouille. Ce
problème est en soi celui des recherches menées depuis plusieurs décennies en traitement
automatique des langues (TAL) ou ingénierie linguistique [3]. Les disciplines qui contribuent
au développement des méthodes de FT sont les mêmes qu'en fouille de données (FD), mis à
part le rôle prépondérant des techniques linguistiques et de l'ingénierie linguistique :

 linguistique : alors que l'ECBD et la FD puisent essentiellement dans les disciplines


telles que la statistique, l'apprentissage et l'informatique, la linguistique est une
composante non négligeable dans des méthodes de FT. Les autres techniques issues
des disciplines telles que la statistique, l'informatique et l'apprentissage sont
appliquées une fois qu'un certain niveau de traitement linguistique a été effectué sur
les textes [10,11].

 statistique : tout comme en FD, elle donne à la FT des outils permettant de procéder à
la vérification des hypothèses [10,11];

 apprentissage: spécialité de l'intelligence artificielle, elle fournit les méthodes parmi


les plus utilisées actuellement pour traiter de nombreux problèmes d'extraction et de
classification des informations à partir d'un corpus de textes. Cela va de la
catégorisation de textes à la recherche de règles d'implications au sein d'un ensemble
de textes. Les problèmes dans lesquels les algorithmes d'apprentissage excellent sont
des problèmes de prédiction, à savoir prédire l'appartenance d'un nouvel individu à des
classes préexistantes [10,11];

8
Chapitre 1 : La fouille de textes et la catégorisation des documents

 informatique : cette discipline est bien sur incontournable pour l'automatisation des
traitements à effectuer. Ainsi, l'ingénierie linguistique, qui allie les deux disciplines :
linguistique et informatique, est-elle au cœur de nombreux systèmes de FT. Une autre
spécialité de l'informatique, les bases de données, déjà concernée par la gestion des
entrepôts de données, développe des méthodes qui peuvent être appliquées à la FT.
Ainsi, les règles d'association, dérivées de la dépendance fonctionnelle en base de
données, sont-elles utiles en FT [10,11];

 visualisation de l'information : étant donné que la FT travaille sur de grands


ensembles de textes à la fois, il est souhaitable pour certaines tâches d'aboutir à des
visions synthétiques des résultats. Les recherches en techniques de visualisation
contribuent donc à rendre plus suggestifs ou intelligibles certains types de résultats.
C'est notamment le cas lorsque les algorithmes d'agrégation sont employés. Ceux-ci
procèdent par réduction de l'information et leur cartographie dans un espace à 2D ou
3D. Par conséquent, de nombreux systèmes de fouille de textes intègrent des outils de
visualisation de l'information [10,11].

1.2.3. Domaine d’application de la fouille de textes

Etant donné la coexistence de deux acceptions de la FT, l'une restrictive et l'autre plus
large, les contours de la FT demeurent encore flous. De ce fait, il est difficile d'identifier
clairement les frontières de cette spécialité en termes de méthodes et d'applications, de
différencier ses objectifs de ceux des spécialités existantes. Par conséquent, fournir une liste
exhaustive et consensuelle des thèmes de recherche et des applications de la FT est une
entreprise délicate. Et parmi ses domaines d’application on peut citer :

 économie (commerce, marketing) : tout comme pour la FD, la gestion de la relation


clients est un domaine d'application de prédilection de la FT. Cependant, ici ce sont les
textes des clients qui sont les cibles des méthodes de FT. L'objectif est soit la
catégorisation de ces textes, soit le routage automatique des courriels. Les méthodes
développées combinent en général des connaissances linguistiques (extraction de
mots-clés, termes) et des techniques statistiques pour la classification. Un autre type

9
Chapitre 1 : La fouille de textes et la catégorisation des documents

d'application concerne l'amélioration des services rendus aux clients, notamment via le
service de maintenance par l'analyse des plaintes reçues, ou par l'analyse des textes
dans les enquêtes d'opinion ou des forums de discussion;

 gestion des ressources humaines : cela concerne l'analyse automatique des sondages,
internes sur la motivation du personnel, l'analyse automatique des curriculum vitae
pour la recherche de compétences particulières ;

 veille concurrentielle : il peut s'agir de l'analyse systématique des articles de presse,


de dépêches et de sites de concurrents pour la surveillance des concurrents, recherche
de clients potentiels, surveillance de l'image de marque de la société;

 veille technologique et scientifique: les méthodes de fouille de textes contribuent au


processus de recherche et développement et d'innovation par l'analyse automatique des
publications scientifiques et des brevets. L'objectif est d'identifier des indicateurs de
tendances ou des spécialités émergeantes. Des techniques d'agrégation et de
visualisation de l'information sont particulièrement sollicitées pour ce type
d'application ;

 question-réponse : les systèmes de question-réponse ont franchi un pas


supplémentaire mais significatif dans la résolution des vieux problèmes de la
recherche d'information (RI). Ces systèmes doivent fournir à l'utilisateur la réponse à
sa question et non un classement de documents susceptibles de la contenir. Ainsi, de
tels systèmes mettent en œuvre des traitements linguistiques assez complexes pour
apparier la question (et ses différentes formulations prévisibles) à des morceaux de
textes dans le corpus sondé. En ce sens, ces systèmes se rapprochent des objectifs de la
FT prise dans son acception large dans la mesure où ils permettent à l'utilisateur de
trouver directement une information recherchée parmi une masse considérable
d'informations, et ce, même lorsque la réponse apparaît dans une formulation
inattendue (synonymie, expansion structurelle, commentaire) ;

 extraction d'information: pour des applications telles que le filtrage et routage


d'informations, il s'agit de rechercher certains types d'informations tels que les entités

10
Chapitre 1 : La fouille de textes et la catégorisation des documents

nommées. Les techniques linguistiques permettent de spécifier les motifs (patrons)


recherchés ;

 catégorisation de textes : l'organisation de ressources d'information dans les


organismes via les sites Internet ou Intranet constitue un facteur d'efficacité dans le
travail. La catégorisation de textes permet de réduire le temps passé à organiser
manuellement les ressources dont on dispose ;

 découverte scientifique et bioinformatique : ce domaine connaît actuellement une


explosion de publications dont l'exploration manuelle est devenue impossible. Afin de
ne pas passer à côté des découvertes faites par d'autres chercheurs, les outils de FT
peuvent « découvrir » certaines relations de causalité, de dépendance entre les objets
biologiques (gènes, séquences ADN).

La figure 1.1 illustre la nature pluridisciplinaire de la fouille de textes et sa place


centrale dans la plupart des activités nécessitant l'exploration d'une grande masse de textes.

Figure 1.1. Apports disciplinaires et domaines d'application de la fouille de textes [10].

11
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.2.4. Les étapes de la fouille de textes

La figure 1.2 ci-après montre les principales étapes de la fouille de textes, depuis la
collecte des textes jusqu'à la découverte de nouvelles informations.

Figure 1.2. Vue schématique des étapes de la FT [10].

Dans ce schéma proposé dans [10], les traitements effectués à chaque stade varient en
fonction de l'application et du type de connaissances utilisé. La phase de prétraitements peut
être plus ou moins élaborée. Elle peut inclure l'élimination de mots vides (mots
grammaticaux) ou une normalisation plus poussée des textes dans le cas d'un corpus très
technique (corpus médical, par exemple). La phase du choix des unités d'analyse peut faire

12
Chapitre 1 : La fouille de textes et la catégorisation des documents

appel aux connaissances linguistiques (extraction des termes, des relations sémantiques entre
eux) ou simplement statistique, avec la recherche des n-grammes dans les textes (séquences
de mots adjacents qui se répètent dans le corpus). Les deux techniques peuvent enfin être
combinées lorsqu'il s'agit de choisir, parmi les unités extraites, celles qui ont un poids
discriminant (indexation automatique). Certaines applications de fouille de textes peuvent
nécessiter des traitements de nature sémantique avec la recherche de relations entre les unités
extraites. La phase de fouille à proprement parlé va puiser dans un panel de techniques pour
choisir celle(s) adaptée(s) à l'application et aux types de résultats attendus.

1.3 La catégorisation de textes

La catégorisation automatique de textes est une des tâches classiques de la recherche


d'information et, en tant que telle, elle a suscité de nombreuses études depuis relativement
longtemps [3, 11, 13]. On retrouve des travaux portant sur ce sujet depuis au moins le début
des années 60. Mais la recherche dans ce domaine est toujours très pertinente, car les résultats
obtenus aujourd'hui sont encore sujets à amélioration. La catégorisation de textes est l'activité
du TAL qui consiste à classer de façon automatique des ressources documentaires,
généralement en provenance, d'un coté, d'un corpus de textes ou d'une banque de documents
textuels et de l'autre, d'un ensemble prédéfini de catégories. Cette activité est essentielle dans
de nombreux domaines : elle permet d'organiser des corpus documentaires, de les trier, et
d'aider à les exploiter dans des secteurs tels que l'administration, l'aéronautique, la recherche
sur internet, les sciences [5,11].

Ainsi la catégorisation des documents rentre dans cette acceptation large de la fouille
de textes, et que Sebastini [13,14] résume ainsi : « La fouille de textes est de plus en plus
employée pour désigner toutes les tâches qui, en analysant de grandes quantités de textes et en
détectant des motifs, essaie d’extraire des informations probablement utiles (bien que
seulement probablement correctes). Selon cette vision, la catégorisation des documents est
une instance de la fouille de textes ».

13
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.3.1 Problématique de la catégorisation des documents

Le problème de la catégorisation des documents peut se résumer à trouver un modèle


ou une fonction mathématique capable d’assigner automatiquement un document à une
catégorie avec le plus grand taux de réussite possible [5, 11, 14], cette fonction se traduit par :

Ω: × →{ , }

Où : D représente l’ensemble des documents et C représente l’ensemble des catégories.


Pour chaque couple (di, cj) appartenant à D×C, la fonction de catégorisation Ω renvoi Vrai si
le document appartient à la catégorie et Faux sinon.

1.3.2 Le processus de catégorisation de textes

Schématiquement, un système de catégorisation des documents s'entraîne sur les textes


déjà classés dans chaque catégorie afin d'en modéliser les traits distinctifs. Il lui faut donc au
départ ce corpus d'apprentissage. De cette phase d'apprentissage, il induit une fonction,
appelée modèle ou classifieur, qui sert à prédire la catégorie de nouveaux textes. Les
algorithmes de catégorisation des documents peuvent se différencier par le type de
classification produite [5, 10, 11].

On distingue habituellement la classification binaire et la classification multiple. Dans


le premier cas, un texte n'est affecté qu'à une seule catégorie. Dans le deuxième cas, le texte
peut être affecté à plusieurs catégories avec une indication de son degré d'appartenance à
chaque catégorie. Ce degré est généralement traduit sous forme numérique par le calcul d'une
fonction d'appartenance analogue à celle qui calcule l'ordonnancement des documents dans
des systèmes de recherche d'information (RI).

La synthèse des différents documents [5, 10, 11, 15] permet de constater un large
consensus sur la méthodologie globale à adopter pour la catégorisation automatique des
documents. Celle-ci comprend trois phases principales : une phase d’indexation, une phase
d’apprentissage et une phase de test.

14
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.3.2.1 La phase d’indexation

La linguistique peut intervenir à diverses étapes du processus. En général, elle


intervient dans la préparation des données et est utilisée pour représenter les lemmes
sans ambiguïté.

1.3.2.2 La phase d'apprentissage

La phase d'apprentissage est la plus importante. Au cours de cette phase initiale, nous
devons effectuer trois choix :

 choix des documents (filtering),

 choix de la représentation des documents (descripteurs),

 choix du classifieur.

 réduction des dimensions

a) Choix des documents

La première étape consiste à constituer une base de données de documents


textuels. Pour cela, on peut soit utiliser un corpus existant, soit en constituer un ad hoc. Les
documents doivent être étiquetés [5, 12, 13].

b) Choix de la représentation des documents

Pour appliquer des techniques de catégorisation des documents, la première étape


consiste à obtenir une représentation de ces textes afin qu'un algorithme d’apprentissage
puisse les manipuler [5, 10, 14, 15]. Etant donné que les textes sont des données non
structurées ou très faiblement structurées, il faut au préalable déterminer les unités textuelles
qui constitueront les entrées aux algorithmes de catégorisation.

Selon l'approche statistique et informatique, les textes peuvent être réduits à une
séquence de formes séparées par des séparateurs (en général l'espace). Il serait donc aisé, de

15
Chapitre 1 : La fouille de textes et la catégorisation des documents

ce point de vue, d'appliquer les mêmes techniques de catégorisation qui fonctionnent sur des
données structurées aux textes, moyennant un minimum de préparation. Cette vision des
textes en tant que données numériques est présente dans de nombreux travaux en fouille de
textes. Weiss et al. [16] expliquent que les textes ne sont pas fondamentalement différents des
données structurées puisqu'ils seront transformés en des données mesurables. Représentés
sous forme matricielle, on peut en extraire des vecteurs numériques pour chaque objet, en
tenant compte des informations de bas niveau, à savoir la présence/absence ou la fréquence
des mots dans des documents.

Ainsi, le choix d'un mode de représentation adéquat des instances à traiter est une
étape incontournable en apprentissage automatique : on doit opter pour une façon uniforme et
judicieuse d'abstraire les données avant de les soumettre à un algorithme. Comme
l'apprentissage joue un rôle dans la catégorisation automatique de textes, le choix d'un mode
de représentation y devient un enjeu. Par la suite, il sera question de la sélection d'attributs,
presque toujours impliqués en catégorisation automatique de textes et on éliminera les
attributs jugés inutiles à la catégorisation [17, 18].

Un grand nombre de chercheurs dans le domaine ont choisi d'utiliser une


représentation vectorielle [18] dans laquelle chaque texte est représenté par un vecteur de n
termes pondérés. A la base, les n termes sont tout simplement les n différents mots
apparaissant dans les textes de l'ensemble d'entraînement.

 Représentation en « sac de mots »

La représentation de textes la plus simple a été introduite dans le cadre du


modèle vectoriel elle porte le nom de « sac de mots ». L’idée est de transformer les textes
en vecteurs dont chaque composante représente un mot. Les composantes du vecteur
sont une fonction de l’occurrence des mots dans le texte. Cette représentation des
textes exclut toute analyse grammaticale et toute notion de distance entre les mots :
c’est pourquoi cette représentation est appelée « sac de mots » d’autres auteurs parlent
«d’ensemble de mots » lorsque les poids associés sont binaires.

16
Chapitre 1 : La fouille de textes et la catégorisation des documents

 Représentation des textes par des groupes de mots

Malgré la simplicité de l'utilisation de mots comme unité de représentation, certains


auteurs proposent plutôt d'utiliser les groupes de mots comme unités. Les groupes de mots
sont plus informatives que les mots seuls, car les groupes de mots ont l'avantage de conserver
l'information relative à la position du mot dans ces groupes. Logiquement, une telle
représentation doit obtenir de meilleurs résultats que ceux obtenus via les mots. Cependant,
les expériences menées ont montrée que les résultats n'étaient pas meilleurs [14] et que
surtout ces approches sont trop difficiles à mettre en œuvre. Les qualités sémantiques sont
conservées, les qualités statistiques sont largement dégradées [18].

 Représentation des textes avec des racines lexicales et des lemmes

Dans le modèle précédent (représentation en «sac de mots»), chaque flexion d'un mot
est considérée comme un descripteur différent et donc une dimension de plus ; ainsi, les
différentes formes d'un verbe constituent autant de mots. Par exemple : les mots
«déménageur, déménageurs, déménagement, déménagements, déménager, déménage,
déménagera, etc.» sont considérés comme des descripteurs différents alors qu'il s'agit de la
même racine «déménage» ; les techniques de désuffixation consistent à rechercher les racines
lexicales, et de lemmatisation cherchent à résoudre cette difficulté. Pour la recherche des
racines lexicales, plusieurs algorithmes ont été proposés ; les algorithmes de « stemming » les
plus connus pour l’anglais sont ceux de Lovins [20] et de Porter [21].

La lemmatisation permet le regroupement des formes morphologiques d'une même


unité linguistique en une seule unité appelée lemme. Elle réduit ainsi des mots en entités
premières, appelées lemmes ou formes canoniques. Par exemple «journal» est la forme
canonique de «journal» et «journaux». Le lemme est l'infinitif pour les verbes, la forme
masculine singulière pour les noms, etc. La lemmatisation permet de réfléchir en fonction du
sens des mots en faisant abstraction de leurs formes. Elle permet d'analyser le contenu d'une
collection de documents, sans avoir à rentrer l'ensemble de ses variantes pour chacun des
mots contenus dans les documents [22].

17
Chapitre 1 : La fouille de textes et la catégorisation des documents

 Pondération des termes

Une fois que l’on choisit les composantes du vecteur représentant un texte j, il faut
décider de la façon d’associer un poids à chaque coordonnée de son vecteur dj. Il existe
différentes méthodes pour calculer les poids Wkj. Ces méthodes sont basées sur les deux
observations suivantes :

 Plus le terme tk est fréquent dans un document dj, plus il est en rapport avec le
sujet de ce document.
 Plus le terme tk est fréquent dans une collection, moins il sera utilisé comme
discriminant entre document.

Différentes pondérations sont recensées dans [23] :

 La pondération booléenne est la plus simple. Le poids Wij vaut 1 si le terme i


apparaît au moins une fois dans le document j, 0 sinon.
 La fréquence du terme prend en compte le nombre d’occurrence d’un terme dans
un document. Cette mesure repose sur l’idée que plus un terme apparaît dans un
document, plus il est important. Alors la fréquence du terme tk dans le document
dj peut être calculée par la formule suivante :

#( , )
( , ) =
∑# ( , )

Où #( , ) est le nombre d’occurrences du terme dans . Le dénominateur est le


nombre d’occurrences de tous les termes dans le document .

 Enfin, TF × IDF (acronyme pour « Terme Frequency × inversdocument


Frequency ») a été introduit dans le cadre du modèle vectoriel, il donne
beaucoup d’importance aux mots qui apparaissent souvent à l’intérieure d’un

18
Chapitre 1 : La fouille de textes et la catégorisation des documents

même texte, ce qui correspond bien à l’idée intuitive que ces mots sont plus
représentatifs du document. Mais sa particularité est qu’elle donne également
moins de poids aux mots qui appartiennent à plusieurs documents : pour refléter
le fait que ces mots ont un faible pouvoir de discrimination entre les classes [17].
Le poids d’un terme dans un document est calculé ainsi :

| |
TF × IDF ( , ) = (1 + #( , )) × ( )
# ( )

Où :
#( , ) : Le nombre d’apparition de terme dans le document .
|Tr| : Le nombre de document du corpus d’apprentissage.
# ( ) : Le nombre de documents de cet ensemble dans lesquels apparait au moins
une fois le terme

c) Réduction des dimensions

Les modèles de classification de texte, considèrent, pour la plupart, des documents


avec des représentations « sac de mots » qui ne prennent pas en compte l'ordre des mots dans
les documents ni leur structure, de telle sorte que le vocabulaire apparaissant dans le corpus
d'entrainement constitue l'ensemble initial d'attributs. En effet, plus l'espace de représentation
est de dimension élevée, plus il y a de paramètres à estimer, et la taille de la base
d'apprentissage doit évoluer en conséquence. Chaque composante du vecteur d'attributs
correspondant à un terme, des espaces à plusieurs milliers de dimensions sont rapidement
atteints. La taille de l'espace de description est alors très importante et donc limitative (en
terme de complexité) pour l'utilisation de techniques de classification classiques. De plus,
beaucoup d'attributs composant ce vocabulaire sont peu discriminants et peu pertinents,
ajoutons à cela le fait que la matrice documents × mots est très éparse (beaucoup de 0). Par
conséquent, le problème d'extraction d'attributs pertinents pour la classification de documents
est fortement lié à la nécessité de réduire la dimension et d'améliorer la pertinence de l'espace
de description des documents [5,14].

Autres raisons qui nécessitent la réduction de l'espace : un modèle plus simple sera
plus facile à comprendre et à interpréter ; le déploiement sera facilité, nous aurons besoin de
19
Chapitre 1 : La fouille de textes et la catégorisation des documents

moins d'informations à recueillir pour la prédiction ; enfin, un modèle simple se révèle


souvent plus robuste en généralisation c.-à-d. lorsqu'il est appliqué sur la population. Pour
cela, plusieurs techniques ont été mises en place pour réduire la dimension du vocabulaire,
des techniques qui se divisent en deux grandes familles :

 Sélection d’attributs

La sélection d'attributs prend les attributs (ou mots) d'origine et conserve seulement
ceux jugés utiles à la classification, selon une certaine fonction d'évaluation, en attribuant un
score à chaque terme en fonction de son pouvoir discriminant : un terme fortement
discriminant du point de vue de la classification thématique aura un score plus élevé qu'un
terme moins discriminant. Il suffit alors de ne conserver que les termes dont le score est le
plus élevé pour réduire considérablement la dimension de l'espace. Selon [24], il présente une
étude comparative de cinq mesures de sélection d'attributs utilisées dans les systèmes de
catégorisation. Nous présentons les trois mesures les plus utilisées lors de la sélection
d'attributs.

1. Le gain d'information « GI » : est directement issu de la théorie de l'information. Il


mesure la quantité d'information apportée par la connaissance de l'apparition ou non d'un
terme dans le processus de décision. Soit c1, c2,…ck l'ensemble des catégories. Le gain
d'information IG(t) apporté par un terme t est défini comme suit :

( )= − + ( ) \ \ + ( ̅) \ ( ̅) \ ( ̅)

P ( ) peut être estimé par la proportion de documents de la base appartenant à la


classe cj et P(t) comme étant la proportion de documents contenant le terme t.

De même, P ( \ t) peut être calculée par la fraction de documents de la classe


contenant le terme t. Enfin, P ( \ ̅) est la fraction de documents de la classe ne contenant
pas le terme t . Il suffit alors de ne conserver que les termes ayant le meilleur score.

20
Chapitre 1 : La fouille de textes et la catégorisation des documents

2. La statistique du χ 2 : mesure la corrélation entre un terme t et une catégorie c. Elle est


définie comme suit :

[ ( , ) × ( ,̅ ̅) − ( ,̅ ) × ( , ̅)]²
( , )= ×
( ) × ( ̅) × ( ) × ( )̅

3. L'information mutuelle « MI » : mesure la quantité d'information apportée par la


connaissance de l'apparition d'un terme dans une certaine catégorie. La faiblesse de cette
mesure est qu'elle est beaucoup trop influencée par la fréquence des mots. Pour une même
probabilité conditionnelle sachant la catégorie, un terme rare va être avantagé, car il risque
moins d'apparaître en dehors de la catégorie.

( \ )
( , )=
( )× ( )

 Extraction d'attributs

A partir des termes de départ, elles créent de nouveaux termes, en faisant soit des
regroupements ou des transformations. Plusieurs techniques ont été mises en place la plus
connue est sous le nom de Latent Semantic Indexing (LSI) [25, 26], elle consiste, en
revanche, à définir un nouvel ensemble de termes, chaque nouveau terme étant construit par
combinaison linéaire des termes initiaux. Le regroupement de termes («Term clustering») fait
aussi partie de ces techniques et a pour but de grouper les termes qui ont une sémantique
commune. Les groupes (clusters) ainsi créés deviennent les termes d'un nouvel espace
vectoriel.

d) Choix du classifieur

La dernière étape consiste à identifier l'algorithme (le classifieur) qui fera la meilleure
estimation de la catégorisation d'un texte.

21
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.3.2.3 La phase de test

Lorsque le système est opérationnel, il suffit de présenter un nouveau document au


système pour obtenir une prédiction sur sa catégorie.

1.3.3 Apprentissage automatique en catégorisation de textes

C’est principalement par apprentissage automatique que l’on tente de résoudre le


problème de la catégorisation automatique de textes. Dans cette optique, plusieurs algorithmes
mis au point pour des problèmes quelconques en apprentissage automatique ont été adaptés et
appliqués dans ce domaine de recherche. Mais, on doit d’abord définir la notion
d’apprentissage automatique. L’apprentissage automatique fait référence au développement, à
l’analyse et à l’implémentation de méthodes qui permettent à une machine (au sens
large) d’évoluer grâce à un processus d’apprentissage, et ainsi de remplir des tâches qu’il
est difficile ou impossible de remplir par des moyens algorithmiques plus classiques [14].

L'apprentissage est aussi un des domaines clés de l'Intelligence Artificielle.


L'étymologie accorde à l'être intelligent la faculté d'association. Etre intelligent, au sens
premier du terme, c'est pouvoir repérer ou créer des liens entre des objets. C'est une vision
plutôt synthétique de l'Intelligence. On trouve aujourd'hui dans ce mot par extension bien
d'autres connotations : rapidité, adaptabilité, faculté d'analyse, aptitude à apprendre ... En fait
parler d'intelligence pour des êtres humains ou des machines ne peut se faire que par référence
à l'homme. Turing [27] l'a bien compris, lorsqu'il a défini son fameux test : une machine est
intelligente si son comportement ressemble à celui de l'homme à s'y tromper. En effet,
l'Intelligence Artificielle a pour but de reconstituer, à l'aide de moyens artificiels, des
raisonnements et des actions intelligentes et ce par apprentissage. Autrement dit,
l'apprentissage automatique est les champs d'étude où l'on essaie de mimer et de reproduire la
capacité de l'homme à apprendre.

L'apprentissage peut être de deux types :

22
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.3.3.1 Apprentissage non supervisé

Il n'y a pas de classes prédéfinies et le but est d'effectuer les meilleurs regroupements
possibles entre les objets dans lesquels les observations diffèrent très peu au regard de ses
valeurs. L'apprentissage non supervisé, appelé aussi apprentissage par observations ou par
découverte, consiste à trouver des «régularités» dans l'échantillon d'apprentissage.

1.3.3.2 Apprentissage supervisé

L'apprentissage supervisé est une technique d'apprentissage automatique où l'on


cherche à produire automatiquement des règles à partir d'une base de données d'apprentissage
contenant des exemples de cas déjà traités.

Plus précisément, la base de données d'apprentissage est un ensemble de couples


entrée-sortie ( , ) ; 1 ≤ n ≤ N avec ∈ X et ∈ Y, que l’on considère être tirées selon
une loi sur inconnue

La méthode d'apprentissage supervisé utilise cette base d'apprentissage afin de


déterminer une représentation compacte de F notée G et appelée fonction de prédiction, qui à
une nouvelle entrée x associe une sortie G(x). Le but d'un algorithme d'apprentissage
supervisé est donc de généraliser pour des entrées inconnues ce qu'il a pu « apprendre » grâce
aux données déjà traitées par des experts. On distingue généralement deux types de problèmes
que l'on cherche à résoudre avec une méthode d'apprentissage automatique supervisée :

 ⊂ ℜ: Lorsque la sortie que l'on cherche à associer à une entrée est une valeur dans un
ensemble continu de réels, on parle d'un problème de régression.

 = 1 … . : Lorsque l'ensemble des valeurs de sortie est de cardinal fini, on parle d'un
problème de classification car le but est en fait d'attribuer une étiquette à une entrée
donnée.

23
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.3.4 Les algorithmes d'apprentissage supervisé

Dans le courant de l'apprentissage automatique, différents types de classificateurs ont


été mis au point, toujours dans le but d'atteindre un degré maximal de précision et d'efficacité,
chacun ayant ses avantages et inconvénients [10].

Parmi les classificateurs existants, on peut faire des regroupements et distinguer des
grandes familles. Par exemple, on peut discerner les classificateurs probabilistes qui utilisent
l'ensemble d'entrainement, c'est-à-dire les textes déjà classés, pour estimer les paramètres de
la distribution de probabilité des mots par rapport aux catégories. C'est dans cette famille
qu'on retrouve entre autres le classificateur bayésien naïf. On trouve aussi des classificateurs
se basant sur un profil, les classificateurs linéaires. Dans ce contexte, le profil est un vecteur
de termes pondérés construit pour chaque catégorie, dans le but de les représenter d'une façon
générale.

Ce vecteur est bien sur construit à l'aide des données d'entrainement. Quand un
nouveau texte doit être classé, il est alors comparé à ce vecteur « type ». Un avantage de cette
approche est qu'elle produit un classificateur compréhensible par un humain, dans le sens où
le profil de la catégorie peut être interprété assez facilement. Par contre, l'inconvénient
principal de tous les classificateurs linéaires est que l'espace est divisé en seulement deux
portions, ce qui peut être restrictif, car tous les problèmes ne sont pas nécessairement
linéairement séparables. Les machines à support vectoriel s'apparentent aux classificateurs
linéaires, dans le sens où elles tentent de séparer l'espace en deux, mais certaines
manipulations mathématiques les rendent adaptables à des problèmes non linéaires. Il y a
aussi une famille de classificateurs qui se basent sur l'exemple. On parle alors d'apprentissage
à base d'instances. Les nouveaux textes à classer sont comparés directement aux documents
de l'ensemble d'entrainement. L'algorithme des k-voisins les plus proches est sans doute le
plus connu de cette famille [5, 10, 14, 15].

24
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.3.4.1 Les classifieurs bayésiens naïfs

Fondés sur le théorème de Bayes, les classifieurs bayésiens naïfs cherchent à prédire la
valeur d'un nouvel objet (document, texte, événement, état) à partir d'une estimation des
probabilités prenant en compte des connaissances ou observations existantes (probabilités a
priori) et des croyances [5, 10]. Les réseaux bayésiens mêlent ainsi données objectives et
subjectives. Le théorème de Bayes donne des outils mathématiques pour expliquer comment
on peut changer ou ajuster les croyances à la lumière des nouvelles observations. C'est en se
sens que l'on appelle également les réseaux bayésiens.

Le théorème de Bayes est formulé ainsi:

( \ = )× ( = )
( = \ )=
( )

Il traduit la règle suivante : pour calculer la probabilité de la variable aléatoire R, étant


donné les observations P(R = r I e), il faut multiplier la probabilité de R = r, étant donnée
P(e I R = r), par la probabilité de la variable, avant de rencontrer les observations P(R = r),
le tout divisé par la probabilité générale des observations P(e) [10]. La probabilité de la
variable P(R = r), avant de rencontrer les données P(e), est la probabilité a priori. Elle est
déterminée de manière subjective, en fonction des connaissances de l'expert.

Les réseaux bayésiens offrent une représentation graphique et intuitive des relations de
probabilité conditionnelle entre un ensemble d'événements passés et à venir. Cette
représentation graphique est notamment utile lorsque le modèle probabiliste est complexe. Un
réseau bayésien est un graphe orienté dont les noeuds représentent les variables qui peuvent
être discrètes ou continues, les arcs représentent les relations de causalité ou des probabilités
conditionnelles. Ce graphe est acyclique et ne contient pas de boucles. Le graphe est associé à
un ensemble de tables de probabilités de noeuds où chaque noeud a sa table de probabilité. A
chaque variable est assignée une valeur de probabilité conditionnelle en fonction de la valeur
d'une autre variable. Pour trouver ces valeurs, on s'appuie sur les observations passées (un

25
Chapitre 1 : La fouille de textes et la catégorisation des documents

historique de l'événement étudié sur une période suffisamment longue) [5, 10, 14]. En
l'absence de telles données historiques, il est usuel de s'appuyer sur des probabilités
subjectives évaluées par des experts. Le réseau est actualisé au fur et à mesure de
l'actualisation de la valeur de certains noeuds, par exemple en présence de nouvelles preuves.
Ce processus d'actualisation est appelé la propagation.

Transposé à la problématique de la catégorisation des textes, Sebastiani [13, 14]


définit la fonction Fi (dj) du classifieur bayésien en termes de probabilité ( ̅ \ ̅ ) qu'un
document, représenté par un vecteur (binaire ou pondéré) ̅ = ( ,……, | | ) de termes,
appartienne à la catégorie Ci. En appliquant le théorème de Bayes, le calcul de cette
probabilité devient:

( )× ( ̅ \ )
( \ )=
( ̅ )²

Où ( ̅ ) est la probabilité qu'un document sélectionné au hasard soit représenté par le


vecteur d1, P (Ci) est la probabilité qu'un document tiré au hasard appartienne à la catégorie Ci

1.3.4.2. La méthode des k-plus proches voisins

La méthode des k-plus proches voisins (k-nearest neighbour ou k-NN) peut être,
considérée comme un raffinement des méthodes d'agrégation. C'est une des techniques
d'apprentissage supervisé les plus intuitives à utiliser et à comprendre par son mode de
fonctionnement [10]. Le principe est assez simple : les textes qui sont proches ont tendance à
avoir des valeurs de prédiction similaires. Ainsi, si l'on connaît les valeurs de prédiction d'un
texte, on peut prédire celles de ses voisins les plus proches. Pour prédire la classe d'un
nouveau texte, il faut trouver ses voisins les plus proches. Il est usuel de ne pas considérer
seul le voisin le plus proche de l'objet à classer, mais ses k-plus proches voisins afin de
minimiser les risques d'erreurs dus à une prédiction s'appuyant sur un unique voisin [6].

26
Chapitre 1 : La fouille de textes et la catégorisation des documents

Plusieurs paramètres sont à fixer dans cette méthode. Tout d'abord, l'algorithme doit
produire, pour chaque catégorie, un modèle qui associe des poids à des textes et une valeur
seuil pour décider de l'appartenance d'un texte à une catégorie donnée. Ensuite, il faut choisir
la taille des k voisins. Dans l'absolu, il peut exister de très nombreux voisins d'un objet w,
dont les valeurs de similarité sont très faibles, mais non nulles. C'est la raison pour laquelle on
considère seulement les k-plus proches voisins. Le paramètre k peut varier en fonction de la
quantité des données dans le contexte du mot Wi ou en fonction de l'application. Enfin, il faut
choisir parmi les mesures de similarité existantes celle qui sera utilisée pour comparer un
nouvel objet aux cas déjà classés. Le résultat d'une méthode de k-plus proches voisins est une
décision assortie d'une valeur qui prédit l'appartenance de l'objet di à la catégorie Ci.

Dans une étude visant à comparer plusieurs méthodes de catégorisation, Lewis et al.
[28] ont employé une variante pondérée de la méthode des k-plus proches voisins (weighted
KNN). Ils ont testé plusieurs valeurs des paramètres énumérés ci-dessus. La difficulté est de
combiner systématiquement les différentes valeurs de chaque paramètre avec celles des autres
paramètres.

Lewis et al. [28] ont testé huit valeurs de seuil pour l'appartenance d'un document à
une catégorie donnée, 15 valeurs de k (comprises entre 1 et 800) et 23 valeurs de taille de
l'index (comprises entre 50 et 47152). Cependant, ils n'ont pas testé toutes les combinaisons
possibles. Ils ont maintenu fixes les valeurs par défaut de deux paramètres en faisant varier
celles du troisième paramètre jusqu'à trouver une valeur optimale. Pour choisir les plus
proches voisins d'un nouveau document, l'algorithme choisit les k documents du corpus
d'apprentissage ayant le produit scalaire le plus élevé avec le nouveau document. Pour chaque
catégorie, l'algorithme fait la somme des produits scalaires des voisins appartenant à cette
catégorie pour fournir la valeur de prédiction de cette catégorie par rapport au nouveau
document. Ainsi, la valeur de prédiction de la catégorie Cj par rapport à un nouveau document
x (un vecteur des poids des termes) est calculée par la formule suivante, extraite de [10] :

, = ( , ̅) × ( ̅, )
∈ ( )

27
Chapitre 1 : La fouille de textes et la catégorisation des documents

Etant donné que les vecteurs de x et d ont été normalisés, leur produit scalaire est égal
au cosinus de l'angle qui les sépare, d'où cos(x, d). Le résultat de ce calcul est comparé au
seuil associé à la catégorie pour déterminer si le document à classer (x) doit être assigné à
cette catégorie ou non.

Pour évaluer la pertinence des résultats, cette méthode fournit une mesure de
confiance assortie à la prédiction sous forme de probabilité. Pour cela, elle peut s'appuyer sur
deux critères. Le premier critère est la distance qui sépare un voisin de l'objet à classer. Plus
cette distance est petite, plus la confiance accordée à la prédiction est élevée et vice versa. Le
deuxième critère est le degré d'homogénéité entre les prédictions faites par les k-plus proches
voisins de celui considéré. Si tous les voisins de k font la même prédiction, celle-ci aura une
confiance beaucoup plus élevée seulement si la moitié de ses voisins s'accordent.

1.3.4.3 Réseaux de neurones artificiels

Les réseaux de neurones artificiels renvoient à un ensemble de méthodes d'analyse des


données qui, dans leur conception, tentent de simuler le fonctionnement des neurones
humains. La première étude sur l'implantation d'un réseau de neurones est attribuée à
McCullough et Pitts dans un papier publié en 1943. De nombreux autres ouvrages ont été
écrits sur les méthodes s'inspirant des réseaux de neurones [29, 30, 31]. Les réseaux de
neurones ont trouvé de nombreuses applications dans des secteurs aussi divers que la défense
(guidage des missiles), la classification (la classification des espèces animales par analyse des
séquences ADN, détection de fraude par carte bancaire), la reconnaissance des motifs
(reconnaissance optique des caractères, vérification du montant de chèques, tri de courriers
postaux), les estimations boursières.

Les réseaux de neurones peuvent fonctionner selon deux modes : supervisé (appelé
également apprentissage- associatif) ou non supervisé (auto-organisation). Dans le premier
cas, le réseau est doté d'exemples d'apprentissage et des résultats désirés. Dans l'apprentissage
non supervisé, le réseau dispose simplement du corpus des données dans lequel il doit
découvrir lui-même les propriétés statistiques saillantes permettant de déterminer les classes.

28
Chapitre 1 : La fouille de textes et la catégorisation des documents

Il n'existe pas de définition consensuelle d'un réseau neuronal artificiel. Très


schématiquement, une méthode à base de réseau neuronal désigne une architecture de réseau
de processeurs (unités) connectés aux autres via les canaux de communication, appelés
connexions synaptiques ou également poids ou efficacités. Les neurones communiquent en
envoyant des signaux sur des connexions unidirectionnelles pondérées. Les connexions
transportent en général des informations encodées sous forme numérique. Un réseau de
neurones peut être représenté par un graphe orienté dont les noeuds sont les neurones
artificiels. Deux problèmes fondamentaux doivent être résolus dans la construction d'un
réseau de neurones :

 la détermination des poids synaptiques,


 le choix d'une architecture pour le réseau.

Il existe plusieurs architectures de réseaux de neurones : fixe, variable, incrémentale,


cascade corrélation. L'architecture la plus courante est l'architecture fixe. Dans celle-ci, on
distingue trois types d'unités : une première couche d'unités d'entrée qui reçoit des données,
les neurones cachés (couche intermédiaire) dont les valeurs (signaux) ne sont pas visibles à
l'utilisateur, et les neurones de sortie qui rendent les résultats. Certains réseaux neuronaux
complexes peuvent comporter plus d'une couche de neurones cachés. Ce sont les neurones
intermédiaires qui posent des problèmes d'apprentissage lorsqu'il faut corriger les erreurs du
modèle. Classiquement, ces deux problèmes : détermination des poids et architecture du
réseau sont traités séparément, alors qu'ils mériteraient d'êtres considérés ensemble. Pour
déterminer l'architecture du réseau, il est usuel de choisir un nombre de neurones des couches
cachées par la technique d'essai-erreur. Hornik et al. [32] ont montré qu'une seule couche
cachée, avec un nombre suffisant d'unités, peut approximer n'importe quelle fonction des
entrées. Torres-Moreno [33] propose de traiter les deux problèmes simultanément par une
architecture incrémentale avec une seule couche intermédiaire et une seule sortie. L'idée de
Torres-Moreno [33] est de partir d'une architecture la plus simple possible et d'augmenter le
nombre de neurones cachés en fonction des besoins. Si, dans une première passe, le neurone
de sortie rend un résultat erroné, ce résultat va être acheminé en entrée à une nouvelle unité
(en modifiant l'architecture) qui va tenter de résoudre le problème. L'avantage de cette
approche incrémentale est une réduction du temps de traitement et du phénomène de sur-

29
Chapitre 1 : La fouille de textes et la catégorisation des documents

apprentissage. En effet, plus il y a de couches, plus le risque de sur-apprentissage est élevé


[28].

La plupart des réseaux neuronaux requièrent des règles d'apprentissage pour pouvoir
ajuster les poids des exemples face aux observations (données) présentées en entrée du réseau.
Le but est de permettre au réseau « d'apprendre » à partir des exemples. Pour faire de la
prédiction, les neurones d'entrée acceptent des valeurs qui peuvent provenir des neurones
voisins ou d'une source externe. Ces valeurs sont multipliées par celles stockées dans les
connexions des neurones d'entrée. Les valeurs stockées correspondent aux poids de chaque
critère de prédiction [28]. Ce poids peut être déterminé dans la phase d'apprentissage par
l'observation des valeurs des variables concernées dans la base d'exemples. Une fonction de
seuillage est ensuite appliquée. La valeur résultante est la valeur de prédiction [10].

Pour créer un classifieur neuronal, on doit lui soumettre de nombreux exemples du


problème modélisé. Pour illustrer son fonctionnement sur une application de gestion de la
relation client, nous reprenons cet exemple très simple, extrait de Berson et al. [34]. Un réseau
de neurones est utilisé pour prédire la valeur d'un nouveau client d'une banque d'après deux
variables : âge et revenus annuels. Dans la phase d'apprentissage, on présente au réseau de
nombreux enregistrements des clients, notamment les valeurs des champs « revenus » et
« âge », ainsi que la valeur (classement) des clients telle qu'elle a été décidée par les analystes
de la banque. Chaque variable est ensuite pondérée afin de déterminer son importance dans le
réseau. Par exemple, un poids de 0,7 est attribué à la variable « âge », tandis qu'un poids de
0,1 est attribué à la variable « revenus ». Dans cet exemple, la valeur de chaque variable du
client a été normalisée pour être comprise entre 0 et 1, l'analyste estime ici que la
variable âge a sept fois plus d'importance que la variable « revenus ». Le réseau va s'entraîner
sur ces exemples et faire des prédictions pour chaque client. Etant donné un nouveau client
qui a 47 ans et gagne 65 000 $ par an, le réseau devrait induire sa « valeur » à partir du
modèle construit sur les exemples du corpus d'apprentissage [10, 28].

Pour améliorer la performance d'un classifieur à base de réseau neuronal, on compare


les exemples du corpus d'apprentissage avec les prédictions faites par le réseau. L'idée est
d'amener le réseau à changer son comportement, de sorte à réduire progressivement la marge
d'erreurs. Il lui faut donc identifier les neurones qui ont le plus contribué à la « faute »

30
Chapitre 1 : La fouille de textes et la catégorisation des documents

(la prédiction erronée) et modifier leurs poids en conséquence. Ainsi, les neurones les plus
« fautifs » verront leurs poids diminuer proportionnellement à hauteur de leur contribution à
la « faute ». Les neurones qui ont contribué de manière marginale à l'erreur n'auront qu'une
modification mineure de leurs poids. La correction est repropagée en arrière, depuis les
neurones de sortie en passant par les neurones cachés, jusqu'aux neurones d'entrée. Cette
opération est connue sous le nom de rétro-propagation. La rétro propagation est valable
uniquement dans le cas d'une architecture fixe [28].

1.3.4.4 Les machines à vecteurs supports (SVM)

Le concept des machines à vecteurs supports (Support Vector Machine ou SVM a été
défini par Vapnik en 1995 [35], puis repris par Joachims [36] qui l'a appliquée à la
catégorisation des textes. L'idée sous-jacente est d'une simplicité trompeuse: supposons que
l'espace de représentation des objets à classer soit linéairement séparable, l'objectif du SVM
est de trouver une surface linéaire de séparation, appelée hyperplan (H), ayant une marge
maximale entre les exemples positifs ou négatifs du corpus d'apprentissage [18, 28]. En
d'autres termes, l'hyperplan doit trouver une ligne séparatrice telle que la distance qui sépare
les vecteurs les plus proches de l'hyperplan soit maximale. Cela garantit un bon niveau de
généralisation car de nouveaux exemples peuvent être assez différents de ceux ayant servi à
trouver l'hyperplan (les vecteurs supports). Ils peuvent alors être situés très clairement d'un
côté ou l'autre de l'hyperplan. L'hyperplan fonctionne alors à la manière d'un classifieur. La
catégorie d'appartenance d'un nouvel objet entrant dans l'espace de représentation est
déterminée par la position de celui-ci par rapport à l'hyperplan. Les points le plus proches de
l'hyperplan (H) sont des vecteurs supports qui ont permis de déterminer l'hyperplan. Seuls ces
derniers seront utilisés pour classer un nouvel objet. Le schéma figure 1.3, extrait de Bellot
[37], illustre le fonctionnement d'un classifieur SVM.

31
Chapitre 1 : La fouille de textes et la catégorisation des documents

= + +
H
+ +
+
+++ +

+ *
d
d = * *
d d
 * * *
+

Figure 1.3 Exemple de classification de deux types d’objets (+,*).


L’hyperplan H sépare les deux classes avec une marge de d

Dans cet exemple, les deux classes d'objets sont parfaitement séparables. Il n'en est pas
toujours ainsi dans la réalité. Il existe parfois une zone d'ombre où la technique ne parvient
pas à séparer clairement les objets, peut-être parce que les, objets à isoler ont des propriétés
communes. Dans le cas où les objets à classer ne sont pas linéairement séparables, le SVM va
les représenter dans un espace de dimensions plus élevées, à l'aide d'une fonction noyau, afin
de trouver une séparation linéaire [14]. La recherche de l'hyperplan est faite dans cet espace
de grandes dimensions.

Les données d'entrée au classifieur SVM doivent être représentées sous forme
vectorielle. S'agissant des données textuelles, il faut que les mots du texte soient codés sous
forme numérique (présence/absence ou occurrences). Ces vecteurs sont ensuite normalisés, en
général pour les ramener à une l'échelle de valeurs comprises entre 0 et 1 afin d'éviter de trop
grandes variations pouvant pénaliser des petites valeurs. Tout comme pour la méthode des k-
plus proches voisins, le classifieur SVM doit produire un modèle permettant de déterminer un
seuil d'appartenance à chaque catégorie. Ainsi, seuls les documents dont les vecteurs
atteignent ce seuil seront affectés à une catégorie. Le classifieur SVM est entièrement
automatisé et ne nécessite pas le réglage manuel de nombreux paramètres. C'est l'algorithme
qui règle automatiquement ces paramètres.

32
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.3.4.5 Les arbres de décision

Selon [37], les premières implantations des arbres de décision remontent aux années
1970. L'objectif était d'automatiser tout le processus de génération et de validation des
hypothèses. Le terme « arbre de décision » recouvre plusieurs types d'ombres en fonction de
l'objectif. On parle d'arbre de classification lorsqu'il s'agit de prédire la classe d'appartenance
d'un objet, d'arbre de régression lorsque le résultat est de prédire une valeur numérique, par
exemple le prix d'une maison. Un troisième type d'arbre, appelé CART (Classification And
Regression Trees) réunit les deux précédents. Les principaux algorithmes des arbres de
décision sont ID3 [38], C4.5 et C5.0 [39]. Comme toute méthode d'apprentissage supervisée,
les arbres de décision ont besoin d'exemples d'objets déjà classés. Ces exemples sont
représentés sous forme d'attributs/valeurs. Si la tâche considérée est la catégorisation de
textes, on s'attendra à disposer des exemples sous la forme du couple « texte i, catégorie k ».

Le principe de construction d'un arbre de décision est assez simple. Il s'agit de


déterminer les règles qui à chaque branche de l'arbre, permettent de subdiviser l'ensemble de
données en deux sous-ensembles plus homogènes. Ainsi, la tâche de classification à chaque
noeud est binaire. Appliqué à la catégorisation de textes, l'objectif sera, étant donné un
ensemble de textes, de déterminer les règles qui permettent de subdiviser ces textes en
fonction des attributs communs. Le processus de subdivision est récursif. Poussé à son
extrême, l'arbre peut atteindre un niveau de profondeur élevé où chaque feuille contiendra un
seul élément. Ce n'est en général pas le résultat recherché. Par ailleurs, cela conduirait au
phénomène bien connu de sur-apprentissage (overffiting).

La plupart des algorithmes d'arbre de décision arrêtent de subdiviser les branches de


l'arbre lorsqu'une de ces conditions est remplie :
 la catégorie ne contient qu'un seul élément, il n'y a donc plus de question qui puisse la
subdiviser davantage ;
 tous les éléments d'une catégorie ont les mêmes caractéristiques, donc la condition
d'homogénéité est remplie;

33
Chapitre 1 : La fouille de textes et la catégorisation des documents

 à la subdivision prochaine, l'amélioration attendue est si petite qu'elle ne justifie pas


l'effort de subdivision.

Les branches ou noeuds de l'arbre représentent les règles permettant de déterminer la


valeur des feuilles. Ces règles sont souvent formulées sous la forme « Si... alors... ». Certains
algorithmes disposent d'heuristiques pour déterminer ces règles, d'autres les choisissent au
hasard. L'algorithme CART essaie toutes les règles. Il sélectionne ensuite la meilleure règle
qui subdivise les données en deux ensembles en se basant sur la mesure de l'entropie. Ensuite,
il soumet à nouveau toutes les questions à ces deux ensembles, et ainsi de suite. Cette
technique est très coûteuse en temps. Néanmoins, l'avantage de cet algorithme est qu'il
construit des arbres complexes qu'il peut ensuite élaguer (pruning) afin de déterminer la
profondeur idéale de l'arbre.

L'algorithme ID3 emploie quant à lui la mesure du « gain d'information » (Information


Gain) pour déterminer les règles de subdivision de l'arbre. Cette mesure repose sur la mesure
de l'entropie :

( )=− −

Où E = entropie, S = des exemples de taille N, p = nombre d'exemples positifs, n est le


nombre d'exemples négatifs dans l'ensemble S des N.

La mesure du gain d'information est définie comme la différence entre l'entropie 'd'un
sous-ensemble avant la subdivision et les entropies des sous-ensembles obtenues par la
subdivision. La mesure du gain d'information calcule la réduction attendue de l'entropie face à
une règle donnée. Plus la valeur de l'entropie est petite, mieux est la qualité des règles de
subdivision et, par conséquent, plus homogènes sont les catégories obtenues. Ainsi, une
entropie de 0 signifie que tous les exemples appartiennent à la même catégorie. Une entropie
de 1 signifie, au contraire, que les exemples sont très hétérogènes et que la règle n'a pas
permis d'opérer une subdivision pertinente.

34
Chapitre 1 : La fouille de textes et la catégorisation des documents

1.3.4.6 Les treillis de Galois

Les treillis de concepts formels (ou treillis de Galois) sont une structure mathématique
permettant de représenter les classes non disjointes sous-jacentes à un ensemble d’objets
(exemples, instances, tuples ou observations) décrits à partir d’un ensemble d’attributs
(propriétés, descripteurs ou items). Ces classes non disjointes sont aussi appelées concepts
formels, hyper-rectangles ou ensembles fermés. Une classe matérialise un concept (à savoir
une idée générale que l’on a d’un objet). Ce concept peut être défini formellement par une
extension (exemples du concept) ou par une intension (abstraction du concept) [40].

Les premiers travaux formels sur les treillis de concepts se situent en algèbre
universelle, à travers les travaux de Birkhoff [1, 41], et plus tard de Barbut et Monjardet [42].
Les travaux de Wille [43, 44], de Duquenne [45, 46], de Ganter [47] ont permis de montrer
l’utilité de cette structure pour l’analyse de données. En classification supervisée,
l’apprentissage se ramène dans le cas général à un problème de recherche dans l’espace des
hypothèses. A ce titre l’espace de versions développé par Mitchell [48] présente des liens
étroits avec le treillis de concepts, tant d’un point de vue structurel que du point de vue de la
complexité du modèle. Malgré la complexité exponentielle sous-jacente à la construction de la
structure du treillis de concepts, plusieurs méthodes de classification ont été développées et
ont produit des résultats comparables à ceux de méthodes standards, aussi bien en ce qui
concerne la précision que l’efficacité en temps. En outre cette structure présente des
propriétés particulières qui favorisent son usage pour la fouille de données, notamment pour
la recherche de règles d’association [49] et pour l’apprentissage de concepts [50]. La
problématique de mise en œuvre des algorithmes par niveaux, largement étudiée en fouille de
données, et dont une formalisation algébrique est proposée par Ganascia [51], est bien
présente dans les modélisations réalisées avec cette structure.

Certains travaux de recherche se sont inspirés du modèle des espaces des versions
pour construire des modèles d’apprentissage à partir des treillis de concepts. CHARADE
(Cubes de Hilbert Appliqués à la Représentation et à l’Apprentissage de Descriptions à partir
d’Exemples) [52] est la première méthode à utiliser la correspondance de Galois, pour générer
un ensemble de règles d’association non redondantes dont le but peut être restreint à une

35
Chapitre 1 : La fouille de textes et la catégorisation des documents

classe prédéfinie. Pour limiter l’espace de recherche, plusieurs heuristiques sont définies
comme des paramètres que l’utilisateur peut sélectionner en fonction des propriétés des règles
qu’il souhaite obtenir ou de la nature du problème qu’il traite. Le principe de classement à
partir de cet ensemble de règles n’est pas explicitement formulé par l’auteur. L’utilisateur
peut ensuite les employer pour construire sa méthode de classement. Ganascia [52] mentionne
un certain nombre d’extensions de CHARADE ayant permis de traiter des applications de
grande taille, notamment pour la catégorisation de textes, la découverte médicale,
l’apprentissage de caractères chinois et l’extraction de connaissances dans une base de
données épidémiologiques.

1.4 Conclusion

Nous avons passé en revu, dans ce chapitre le domaine de la fouille de texte et la


notion de catégorisation des documents, nous avons vu dans un premier temps que la fouille
de texte est une inter-discipline hétérogène dans sa composition méthodologique, dans ses
communautés, dans les tâches et applications visées. La fouille de texte est actuellement
définie par ces objectifs, lesquels sont suffisamment larges pour que tous les travaux visant à
extraire des informations automatiques à partir des textes puissent s’en réclamer. Dans
l’hypothèse où l’on serait tenté d’adopter la définition restrictive de la fouille de texte se pose
alors la question : comment évaluer objectivement les sorties des systèmes de la fouille de
texte ? Le fait d’extraire des motifs ou des relations à partir des textes constitue-t-il une
nouvelle connaissance ? Comment mesurer l’utilité réelle des résultats ? Les exigences de la
compréhensibilité et de l’utilisabilité des résultats doivent être abordées en fonction des
tâches précises de la fouille et dans le cadre d’une application donnée.

Ensuite nous avons abordé une des tâches de la fouille de texte qui est la
catégorisation des documents que nous appelons aussi classification des documents. Nous
avons présenté les techniques utilisées dans la littérature pour effectuer cette tâche. La notion
de représentation numérique des textes été aussi abordée. C’est sur cette représentation que
nous pouvons utiliser les techniques de catégorisation pour déterminer la catégorie d’un
document. Parmi les méthodes de catégorisation les plus utilisées et que nous avons choisi
dans notre projet sont les treillis de Galois [1]. Cette dernière fera l’objet du prochain chapitre.

36
Chapitre 2

L’Analyse Formelle
de Concepts
Chapitre 2 : L’Analyse Formelle de Concepts

2.1 Introduction

L’Analyse de Concepts Formels (ACF), appelée aussi Analyse Formelle de Concepts


(AFC), est un formalisme qui constitue un pont entre les mathématiques, en particulier la
théorie des ensembles ordonnés, et les applications d’analyse de données. Il s’agit de la
restructuration, commencée par Wille [43] et finalisée par Ganter [47] et Wille [44], de la
théorie des treillis définie par G. Birkhoff [1] en adéquation avec la philosophie de la pensée
humaine définie par C.S. Peirce.

Dans ce chapitre nous dresserons un état de l’art qui couvre à la fois les notions de
base et les définitions mathématiques relatives à la théorie des ensembles ordonnés et les
algorithmes proposés dans ce domaine relatives à la construction des treillis de Galois. La
suite du chapitre est organisée comme suit :

Dans la section 2.2 nous rappelons les notions de base de la théorie des treillis
nécessaires à la compréhension de l’ACF. Dans la section 2.3 nous détaillons les notions et les
définitions relatives à l’ACF et nous donnons un survol des principaux algorithmes
développés dans le cadre de l’ACF ainsi que les différents systèmes de classification basés sur
les Treillis.

2.2 Théorie des treillis : Notion de base

2.2.1 Ensemble ordonné :

Définition 1 (Relation binaire)

Une relation binaire R entre deux ensembles M et N est un ensemble de couples


d’éléments (m, n) tels que m ∈ M et n ∈ N, i. e. un sous ensemble de M × N. (m, n) ∈ R
(aussi noté par mRn) signifie que l’élément m est en relation R avec l’élément n.

Si M = N, on parle de relation binaire sur M×R-1 où R-1 est la relation inverse de R, i.e.
la relation entre N et M telle que nR−1m ⇔ mRn [40,53].

38
Chapitre 2 : L’Analyse Formelle de Concepts

Définition 2 (Relation d’ordre partiel)

Une relation binaire R sur un ensemble E est dite relation d’ordre partiel (ou
simplement relation d’ordre) sur E si elle vérifie les conditions suivantes pour tous x, y, z
∈E:

 (x, x) ∈ R (R est réflexive)


 si (x, y) ∈ R et x =~ y alors (y, x) ∈/ R (R est antisymétrique)
 si (x, y) ∈ R et (y, z) ∈ R alors (x, z) ∈ R (R est transitive)

Une relation d’ordre R est souvent notée par ≤ (R -1 est notée par “≥”) et on dit que
“x est plus petit que y” lorsque x ≤ y [40,53].

Définition 3 (Ensemble ordonné)

Un ensemble partiellement ordonné (ou simplement ensemble ordonné) est un couple


(E, ≤) où E est un ensemble et “≤” est une relation d’ordre sur E.

Dans un ensemble ordonné (E, ≤), deux éléments x et y de E sont dits comparables
lorsque x ≤ y ou y ≤ x, autrement ils sont dits incomparables. Pour deux éléments
comparables et différents, x ≤ y et x =~ y, on note x < y. Un sous ensemble de (E, ≤)
dans lequel tous les éléments sont comparables est appelé chaîne. Un sous ensemble de
(E, ≤) dans lequel tous les éléments sont incomparables est appelé anti-chaîne [40,53].

Définition 4 (Successeur, prédécesseur, couverture)

Soient (E, <) un ensemble ordonné et x, y ∈ E. y est dit successeur de x lorsque x <
y et il n’existe aucun élément z ∈ E tel que x < z < y. Dans ces cas, x est dit prédécesseur
de y et on note x -< y. Lorsque x est un prédécesseur de y on dit que x couvre y (et que y
est couvert par x). La couverture de x est formée par tous ses successeurs.

Tout ensemble ordonné, (E, <), peut être représenté graphiquement par un diagramme
appelé “diagramme de Hasse" (ou diagramme de couverture) et obtenu comme suit :

39
Chapitre 2 : L’Analyse Formelle de Concepts

Tout élément de E est représenté par un petit cercle dans le plan Si x, y ∈ E et x -< y
alors le cercle correspondant à y doit être au-dessus de celui correspondant à x et les deux
cercles sont reliés par un segment.

À partir d’un tel diagramme on peut lire la relation d’ordre comme suit : x < y si et
seulement s’il existe un chemin ascendant qui relie le cercle correspondant à x à celui
correspondant à y [53].

Définition 5 (Principe de dualité des ensembles ordonnés)

Soit (E, <) un ensemble ordonné. La relation inverse “>” de “<” est aussi une
relation d’ordre sur E. “>” est appelée duale de “<” et (E, >) est appelé le dual de
l’ensemble ordonné (E, <).

Le diagramme de Hasse de (E, >) peut être obtenu à partir de celui de (E, <) par une
simple réflexion horizontale. De plus, il est possible de dériver les propriétés duales de
(E, >) à partir des propriétés de (E, <).

2.2.2 Treillis de Galois

Définition 6 (Majorant, minorant, supremum, infimum)

Soient (E, <) un ensemble ordonné et S un sous ensemble de E. Un élément a ∈ E est


dit majorant de S lorsque a > s ∀ s ∈ S. De façon duale, a ∈ E est dit minorant de S
lorsque a < s ∀ s ∈ S.

Le plus petit majorant (respectivement minorant) de S, s’il existe, est appelé


supremum ou borne supérieure (respectivement infimum ou borne inférieure) de S et noté
V S (respectivement S). Dans le cas ou S = {x, y}, V S et S sont aussi notés par x V y
et x y respectivement.

Dans tout ensemble ordonné, lorsque le supremum (respectivement l’infimum) existe,


il est unique [40,53].

40
Chapitre 2 : L’Analyse Formelle de Concepts

Définition 7 (Treillis, treillis complet)

Un treillis est un ensemble partiellement ordonné ( , <) tel que et existent


pour tout couple d’éléments , ∈ . Un treillis est dit complet si et S existent
pour tout sous ensemble S de E. En particulier, un treillis complet admet un élément
maximal (top) noté par T et un élément minimal (bottom) noté par L. Tout treillis fini est
un treillis complet [40,53].

Définition 8 (Demi-treillis)

Un ensemble ordonné (E, <) est un sup-demi-treillis (respectivement inf-demi-


treillis) si tout couple d’éléments x, y ∈ E admet un supremum x V y (respectivement un
infimum x y) [40,53].

2.2.3 Fermeture

Définition 9 (Fermeture)

On appelle opérateur de fermeture sur un ensemble ordonné, (E, ≤), toute application
ϕ : E → E qui vérifie les propriétés suivantes pour tout x, y ∈ E :

 x ≤ ϕ(x) (ϕ est extensive),


 si x ≤ y alors ϕ(x) ≤ ϕ(y) (ϕ est monotone croissante),
 ϕ(x) = ϕ (ϕ(x)) (ϕ est idempotente).

Un élément x ∈ E est dit fermé pour ϕ si et seulement si x = ϕ(x) [40,53].

Définition 10 (Système de fermeture)

Un système de fermeture (dit aussi système de fermés noté C) sur un ensemble E est
un ensemble de parties de E contenant E et fermé pour l’intersection.

41
Chapitre 2 : L’Analyse Formelle de Concepts

Formellement C ⊆ P(E) est un système de fermeture si les conditions suivantes sont


vérifiées :

 E∈C;
 si A ⊆ C alors A ∈ C (l’intersection de toute suite de fermés de A appartient à
C)

Les deux notions, opérateur de fermeture et système de fermeture, sont fortement liées.
En effet, tout système de fermeture peut être considéré comme l’ensemble de tous les
fermés d’un opérateur de fermeture. Inversement, il est possible de définir un opérateur de
fermeture sur tout système de fermeture. Cette relation est exprimée dans le théorème
suivant [40,53] :

Théorème 1

Si C est un système fermé sur E alors l’application ϕ C suivante :

ϕ C : X → ∩ {A∈C | X⊆A} définit un opérateur de fermeture sur E (ϕ C : E → E).

Inversement, l’ensemble C ϕ = {ϕ(X) | X ⊆ E} de tous les fermés pour un opérateur de


fermeture ϕ est un système fermé.

La notion de fermeture est aussi liée à la définition des treillis. En effet, l’ensemble des
fermés dans un ensemble E étant donné un opérateur de fermeture sur E forme un treillis
complet. Inversement, tout treillis complet est isomorphe au treillis des fermés d’un
opérateur de fermeture et on a le théorème suivant [53] :

Théorème 2

Si C est un système fermé alors (C, ⊆) est un treillis complet avec X =∩X
et V X = ϕ C (U X) ∀ X ⊆ C. Inversement, tout treillis complet est isomorphe au treillis des
fermés d’un opérateur de fermeture [40].

42
Chapitre 2 : L’Analyse Formelle de Concepts

2.2.4 Connexion de Galois

Définition 11 (Connexion de Galois)

Soient ϕ : P → Q et ψ : Q → P deux applications entre deux ensembles ordonnés (P,


≤ P ) et (Q, ≤ Q ). ϕ et ψ forment une connexion de Galois entre (P, ≤P) et (Q, ≤Q) si
elles vérifient les conditions suivantes pour tous p, p1, p2 ∈ P et q, q1, q2 ∈ Q :

 si p1 ≤ p p2 alors ϕ (p2) ≤ Q ϕ (p1),


 si q1 ≤ Q q2 alors ψ (q2) ≤ p ψ (q1),
 p ≤ P ψ (ϕ(p)) et q ≤ Q ϕ (ψ(q)).

Les conditions données dans la définition précédente sont équivalentes à la formule


suivante :
P≤ P ψ(q) ⇔q≤ Q ϕ (p)

2.3 Analyse de Concepts Formels

2.3.1 Origine et contexte philosophique

L’Analyse de Concepts Formels (ACF) [41,54] a été présentée comme un domaine de


mathématiques appliquées qui consiste à restructurer la théorie des treillis [1] afin de
faciliter son utilisation dans des applications du monde réel et de permettre l’interprétation
de ses notions en dehors du cadre théorique aussi bien par des mathématiciens que par des
non-mathématiciens. L’objectif à travers la mise en place de l’ACF est d’atteindre une
théorie structurée qui expose les pensées formelles selon des interprétations significatives
et permettre ainsi des communications et des discussions critiques de leurs contenus [55].

Pour cela l’ACF a été centrée autour de la notion de concept qui, du point de vue
philosophique, est considérée comme l’unité de base de la pensée humaine. De manière
informelle, un concept peut être défini comme un groupement d’individus et de leurs
propriétés communes. Toujours en liaison avec le point de vue philosophique, en
particulier celui de Pierce [53] qui considère que “dans tout processus de raisonnement ou

43
Chapitre 2 : L’Analyse Formelle de Concepts

d’argumentation, on ne peut étudier qu’une part de la réalité”, l’ACF extrait les concepts à
partir de contextes restreints. De tels contextes, appelés contextes formels, constituent le
point de départ de l’ACF.

2.3.2 Contexte formel

Définition 12 (Contexte formel)

Un contexte formel est un triplet K = (G, M, I) où G est un ensemble d’objets, M est


un ensemble d’attributs et I est une relation binaire entre G et M appelée relation
d’incidence de K et vérifiant I ⊆ G × M. Un couple (g, m) ∈ I (noté aussi gIm) signifie
que l’objet g ∈ G possède l’attribut m ∈ M.

Un contexte formel peut être représenté sous la forme d’un tableau où les lignes
correspondent aux objets et les colonnes correspondent aux attributs. Les cases du tableau
sont remplies comme suit : si le i ème objet g est en relation I avec le j ème attributs alors la
case intersection de la ligne i et la colonne j contient “1” sinon la case est vide. Le tableau
2.1 donne un exemple de contexte formel représentant les planètes du système solaire.
Dans cet exemple de contexte, Mercure possède les attributs : petite taille, proche du soleil
et n’est pas un satellite.

Attributs Taille Distance su soleil Satellite

Objet Petite Moyenne Grande Proche Loin Oui Non


Mercure 1 1 1
Venus 1 1 1
Terre 1 1 1
Mars 1 1 1
Jupiter 1 1 1
Saturne 1 1 1
Uranus 1 1 1
Neptune 1 1 1
Pluton 1 1 1

Tableau 2.1 Un contexte formel représentant les planètes du système solaire [53].

44
Chapitre 2 : L’Analyse Formelle de Concepts

2.3.3 Connexion de Galois dans un contexte formel

Définition 13

Soit K un contexte formel. Pour tout A ⊆ G et B ⊆ M, on définit :

A' = { m∈M|∀g∈A, gIm}


B' = { g∈G|∀m∈B, gIm}

Intuitivement, A' est l’ensemble des attributs communs à tous les objets de (A) et (B ')
est l’ensemble des objets possédant tous les attributs de B. Les applications ' : B(G) →
B(M) et ': B(M) → B(G) sont appelées opérateurs de dérivation entre l’ensemble des
objets et l’ensemble des attributs dans un contexte formel. La composition de ces
opérateurs produit deux opérateurs " : B(G) → B(G) et " : B(M) → B(M). Le premier
opérateur permet d’associer à un ensemble d’objets A l’ensemble maximal d’objets dans G
ayant les attributs communs aux objets de A. Cet ensemble est noté par A". De façon duale,
le second opérateur permet d’associer à un ensemble d’attributs B l’ensemble maximal
d’attributs dans M communs aux objets ayant les attributs dans B. Cet ensemble est noté
par B".

Les opérateurs " : B(G) → B(G) et " : B(M) → B(M) définissent deux fermetures
respectivement sur l’ensemble des parties de G, B(G) (noté aussi par 2 G ), et sur l’ensemble
des parties de M, B(M) (noté aussi par 2 M ). Les ensembles A" et B" sont des fermés pour
ces deux opérateurs respectifs. L’ensemble des fermés de B(G) muni de l’inclusion est un
treillis complet. De la même façon, l’ensemble des fermés de B(M) muni de l’inclusion est
un treillis complet. Les opérateurs de dérivation ' : B(G) → B(M) et' : B(M) → B(G)
forment une bijection entre les ensembles de fermés de B(G) et B(M) et définissent un
isomorphisme entre les deux treillis respectifs : à chaque fermé A dans B(G) correspond
un unique fermé B dans B(M) et vice versa. De cette façon, les opérateurs de dérivation " :
B(G) → B(G) et " : B(M) → B(M) forment une connexion de Galois entre (B(G), ⊆) et
(B(M), ⊆) [53, 54, 55].

45
Chapitre 2 : L’Analyse Formelle de Concepts

2.3.4 Concept formel

Les paires de fermés reliées par cette connexion de Galois, détaillée dans la section
précédente, forment les concepts formels définis comme suit.

Définition 14 (Concept formel)

Soit K = (G, M, I) un contexte formel. Un concept formel est un couple (A, B) tel que
A ⊆ G, B ⊆ M, A' = B et B' = A. A et B sont respectivement appelées extension (extent)
et intension (intent) du concept formel (A, B). L’ensemble des concepts formels associés
au contexte formel K = (G, M, I) est noté par B (G, M, I) [40,53].

Dans un contexte formel, un concept correspond à un rectangle maximal de la table


formée par la relation binaire du contexte : tout objet de l’extension a tous les attributs de
l’intension. Il est important de noter que cette notion de rectangle maximal est
indépendante de l’ordre des lignes et des colonnes. Ces ensembles maximaux d’objets et
d’attributs correspondent à des fermés dans P(G) et P(M) respectivement. Un sous-
ensemble B de M est l’intension d’un concept formel dans B (G, M, I) si et seulement si
B" = B (B est fermé pour ") et, de façon duale, un sous ensemble A de G est l’extension
d’un concept formel dans B (G, M, I) si et seulement si A" = A (A est fermé pour ").

Les concepts de B (G, M, I) sont ordonnés par une relation d’ordre hiérarchique entre
concepts (appelée aussi relation de subsomption) notée par “≤” et définie comme suit.

Définition 15 (Relation de “subsomption”)

Soient (A1, B1) et (A2, B2) deux concepts formels de B (G, M, I). (A1, B1) ≤ (A2,
B2) si et seulement si A1 ⊆ A2 (ou de façon duale B2 ⊆ B1). (A2, B2) est dit super-
concept de (A1, B1) et (A1, B1) est dit sous-concept de (A2, B2). La relation “≤” est
dite relation de subsomption.

La relation “≤” s’appuie sur deux inclusions duales, entre ensembles d’objets et entre
ensembles d’attributs et peut ainsi être interprétée comme une relation de

46
Chapitre 2 : L’Analyse Formelle de Concepts

généralisation/spécialisation entre les concepts formels. Un concept est plus général qu’un
autre concept s’il contient plus d’objets dans son extension. En contre partie, les attributs
partagés par ces objets sont réduits. De façon duale, un concept est plus spécifique qu’un
autre s’il contient moins d’objets dans son extension. Ces objets ont plus d’attributs en
commun [40,53].

2.3.5 Treillis de concepts

Définition 16 (Treillis de concepts)

La relation “≤” permet d’organiser les concepts formels en un treillis complet (B (G,
M, I), ≤) appelé treillis de concepts ou encore treillis de Galois [28] et noté par B (G, M,
I) ou B(K). Le supremum et l’infimum dans B(K) sont donnés par :

( , )= ,
∈ ∈ ∈

"

( , )= ,
∈ ∈ ∈

Le diagramme de Hasse représentant le treillis de concepts correspondant au contexte


formel donné dans le tableau 2.1 est donné dans la figure 2.1. La notation des concepts est
dite réduite : elle s’appuie sur l’héritage à la fois des attributs et des objets entre les concepts
du treillis [56]. Les attributs sont placés au plus haut dans le treillis : à chaque fois qu’un
nœud N est étiqueté par un attribut m, tous les descendants de N dans le treillis héritent
l’attribut m. De façon duale, les objets sont placés au plus bas dans le treillis : à chaque fois
qu’un nœud N est étiqueté par un objet g, g est hérité “vers le haut” et tous les ancêtres de N
le partagent. Ainsi l’extension A d’un concept (A, B) est obtenue en considérant tous les
objets qui apparaissent sur les descendants du nœud N dans le treillis et son intension B est
obtenue en considérant tous les attributs qui apparaissent sur les ancêtres du nœud N dans le
treillis.

Le treillis de concepts est une représentation équivalente des données contenues dans
un contexte formel qui met en avant les groupements possibles entre objets et attributs

47
Chapitre 2 : L’Analyse Formelle de Concepts

ainsi que les relations d’inclusion entre ces groupements. De plus, la représentation
graphique du treillis de concepts, sous la forme d’un diagramme de Hasse, facilite la
compréhension et l’interprétation de la relation entre les objets et les attributs d’une part et
entre objets ou attributs d’autre part. L’avantage de cette représentation est qu’à partir d’un
treillis de concepts il est toujours possible de retrouver le contexte formel correspondant et
inversement.

Figure 2.1 Le treillis de concepts correspondant au contexte formel K = (G, M, I)


donné dans le tableau 2.1 [53].

2.3.6 Algorithmes de construction de treillis de concepts

La construction du treillis de concepts d’une relation binaire donnée peut être


décomposée en trois parties [56,57] :

 l’énumération des rectangles maximaux (les fermés),


 la recherche de la relation d’ordre partiel entre ces rectangles
 et la représentation graphique du treillis (construction du diagramme de
HASSE correspondant au treillis).

Les deux premières étapes constituent le problème de calcul des concepts d’un treillis
de concepts à partir d’un contexte formel et peuvent être exécutées simultanément ou de
manière séquentielle (dans l’ordre donné plus haut). Cependant, la troisième étape fait
partie du problème de visualisation de graphes. De ce fait, ces deux problématiques sont
souvent traitées indépendamment ce qui a donné lieu à deux axes de recherche

48
Chapitre 2 : L’Analyse Formelle de Concepts

complémentaires : le premier consiste à proposer des algorithmes de plus en plus


performants (complexité, temps d’exécution, occupation mémoire, passage à l’échelle)
pour le calcul de treillis de concepts à partir de contextes formels et le deuxième consiste à
fournir des outils efficaces pour la visualisation de ces treillis.

Le problème de calcul des concepts d’un treillis de concepts à partir d’un contexte
formel a fait l’objet de nombreux travaux de recherche qui ont abouti à la proposition
d’une variété d’algorithmes dont les plus connus sont Chein [58], Norris [59] (la méthode
dite de malgrange), NextClosure [60, 61], Bordat [62], Close-by-One [63], Godin [64],
Galois [65,66], Nourine [67], Lindig [68], Titanic [69,70], Divide&Conquer [71,72] et
AddIntent [73].

Chacun de ces algorithmes se distingue des autres par plusieurs critères dans la
stratégie de calcul des concepts, la recherche de l’ordre entre ces concepts, les structures de
données utilisées pour le stockage des résultats intermédiaires et le résultat final. Ces
principaux algorithmes ont fait l’objet d’une comparaison détaillée dans [74]. Cette
comparaison a montré qu’aucun algorithme n’est meilleur que tous les autres sur tous les
plans et que les performances d’un algorithme dépendent fortement des caractéristiques du
contexte formel en entrée.

Dans la suite de cette section nous allons répartir les algorithmes en fonction de leurs
stratégies d’acquisition de données à partir d’un contexte formel. Considérant ce critère, on
distingue trois familles d’algorithmes : les algorithmes batch qui considèrent la totalité du
contexte dès le départ, les algorithmes incrémentaux qui considèrent le contexte ligne par
ligne et les algorithmes d’assemblage qui répartissent le contexte en deux et calculent les
concepts correspondant à chaque moitié puis font l’assemblage.

2.3.6.1 Les algorithmes batch

Les algorithmes batch constituent la première génération des algorithmes de


construction de treillis. Ils prennent en entrée le contexte formel tout entier et calculent les
concepts formels et l’ordre entre ces concepts simultanément ou de manière séquentielle.

49
Chapitre 2 : L’Analyse Formelle de Concepts

L’un des premiers algorithmes proposés de cette catégorie est l’algorithme de Chein
[58] qui génère les concepts par niveaux. L’algorithme est itératif. Son point de départ est
l’ensemble L1 de couples (A, B) représentant les lignes du contexte formel (A contient un
seul élément de G et B = A'). A chaque étape i, l’algorithme part d’un ensemble Li et
construit les éléments de L i+1 . Un élément (A3, B3) de L i+1 est obtenu en combinant deux
éléments (A1, B1) et (A2, B2) de Li comme suit : A3 = A1 U A2 et B3 = B1 n B2. Les
éléments de Li inclues dans au moins un élément de L i-1 ne sont pas maximaux et sont
donc supprimés. L’algorithme s’arrête lorsque L i+1 contient moins de deux éléments. Les
éléments non supprimés après l’arrêt de l’algorithme sont les concepts du contexte formel
considéré. Pour illustrer le fonctionnement de cet algorithme, nous considérons l’exemple
de contexte formel donné dans le tableau 2.1 avec un renommage des attributs et des objets
pour faciliter la lisibilité des concepts lors des étapes d’exécution de l’algorithme.

Le contexte considéré est donné dans le tableau 2.2 et les traces d’exécution de
l’algorithme sont données dans le tableau 2.3. Les concepts formels calculés par
l’algorithme à partir du contexte formel considéré sont les éléments non barrés dans le
tableau 2.3. La complexité de l’algorithme de Chein est O (|G| 3|M||L|), |G| étant le
nombre d’objets dans le contexte, |M| le nombre d’attributs et |L| le nombre de concepts
formels dans le treillis obtenu.

a b c d e f g
1 1 1 1
2 1 1 1
3 1 1 1
4 1 1 1
5 1 1 1
6 1 1 1
7 1 1 1
8 1 1 1
9 1 1 1

Tableau 2.2 Contexte formel représentant les planètes du système solaire avec renommage
des attributs et des objets

50
Chapitre 2 : L’Analyse Formelle de Concepts

L1 L2 L3 L4
1×adg ** (12×adg) 12 × adj 1234 × a ∅
2×adj ** (12×adg) 13× ad ** (134×adg) 3456789
3×adf ** (34×adf) 134 × ad ** (1234×adg) ×f
4×adf ** (34×adf) 19 × a ** (129×adg)
5×cef ** (56×cef) 1234 × ad
6×cef ** (56×cef) 129 × a ** (12349×adg)
7×bef ** (78×bef) 34 × adf
8×bef ** (78×bef) 35 × f ** (356×adg)
9×aef 356 × f ** (3567×adg)
3567 × f ** (35678×adg)
35678 × f ** (345678×adg)
39 × af ** (349×adg)
345678 × f ** (3456789×adg)
349 × af
56 × cef
57 × ef ** (578×adg)
578 × ef ** (5789×adg)
5789 × ef ** (56789×adg)
56789 × ef
78 × bef

Tableau 2.3 Les ensembles de rectangles1 maximaux calculés par l’algorithme de Chein à
partir du contexte formel donné dans le tableau 2.2 [53].

Les autres algorithmes batch les plus connus sont les suivants. L’algorithme
NextClosure [61] constitue l’algorithme de référence pour le calcul des fermés dans un
contexte formel. Il s’appuie sur l’ordre lexicographique entre ensembles d’attributs pour
calculer les fermés. Le calcul des fermés peut être appliqué aux attributs (NextIntent) auquel
cas on obtient les intensions des concepts formels ou bien aux objets (NextExtent) auquel cas
on obtient les extensions des concepts formels. L’avantage majeur de cet algorithme est qu’il
ne garde pas en mémoire l’ensemble des fermés déjà calculés puisqu’il s’appuie sur un test de
canonicité pour vérifier qu’un fermé n’a pas été généré.

De ce fait, seul le dernier fermé généré doit être gardé en mémoire. La complexité
théorique de l’algorithme NextClosure est O (|G| 2|M||L|). L’algorithme Bordat [62]
construit les concepts en s’appuyant sur une structure d’arbre pour garder les résultats
intermédiaire. Sa complexité est O (|G||M| 2|L|). L’algorithme Closeby-One [63] utilise une
technique similaire à NextClosure pour la génération des concepts et une structure particulière
1
Les rectangles barrés correspondent à des rectangles non maximaux. Les rectangles qui les contiennent sont
indiqués entre parenthèses et l’itération durant laquelle ils ont été calculés est donnée par *

51
Chapitre 2 : L’Analyse Formelle de Concepts

appelée arbre CbO pour garder en mémoire les concepts générés. Sa complexité est O
(|G| 2|M| |L|). Finalement, l’algorithme Titanic [70] utilise la notion de fréquence pour
calculer les concepts sans faire d’intersection entre les ensembles d’attributs.

2.3.6.2 Algorithmes incrémentaux

Les algorithmes incrémentaux considèrent le contexte formel ligne par ligne (ou
colonne par colonne) et construisent le treillis de concepts par ajouts successifs de ligne ou
de colonne tout en conservant sa structure. A une étape k, les concepts formels
correspondants au k premières lignes du contexte formel sont calculés.

L’ajout de la (k + 1) ème ligne entraîne la modification d’une partie des concepts


calculés à l’étape k et l’ajout d’éventuels nouveaux concepts. Conçu ainsi, les algorithmes
incrémentaux permettent de gérer les contextes dynamiques, où le nombre d’objets et/ou
d’attributs peut évoluer, sans avoir à recalculer le treillis à partir de zéro suite à une
modification du contexte.

Les étapes de la construction incrémentale du treillis de concepts correspondant au


contexte donné dans le tableau 2.2 sont schématisées dans la figure 2.2. Bien que la
motivation du coté applicatif des algorithmes incrémentaux n’est apparue qu’au milieu des
années 90 [65, 75, 76] le premier algorithme incrémental publié, l’algorithme de Norris
[59], date de 1978 et reste parmi les plus performants [74]. La complexité de l’algorithme
de Norris est O (| G | 2 | M || L |).

52
Chapitre 2 : L’Analyse Formelle de Concepts

Figure 2.2 Les étapes de la construction incrémentale du treillis de concepts


correspondant au contexte formel donné dans le tableau 2.2

Plus tard, deux nouveaux algorithmes incrémentaux similaires à celui de Norris ont été
proposés dans le cadre des approches d’analyse de données par treillis de concepts incluant
la classification et la recherche d’information [76,65] : l’algorithme Galois [66] et
l’algorithme de Godin [75,76].

Dans cette même catégorie, on distingue l’algorithme de Nourine et Raynaud [70]


connus pour être le seul algorithme de construction de treillis (toutes catégories
confondues) à avoir la plus petite complexité théorique (O ((|G|+|M|) |G||L|)) et
l’algorithme le plus récent AddIntent [73] qui construit les concepts du treillis de manière
récursive. La complexité de l’algorithme AddIntent est O (|G| 2 |M||L|).
53
Chapitre 2 : L’Analyse Formelle de Concepts

2.3.6.3 Algorithmes d’assemblage

Les algorithmes d’assemblage constituent une évolution des algorithmes incrémentaux


qui généralise le caractère incrémental à des ensembles d’objets/attributs. Ils permettent de
diviser un contexte formel en deux parties verticalement ou horizontalement puis de
calculer le treillis de concepts correspondant à chaque partie et enfin d’assembler les
treillis obtenus en un seul. Le seul algorithme connu de cette famille est l’algorithme
Divide&Conquer [71,72]. La complexité de l’algorithme est O (|G| 2|M||L|).

Pour illustrer le principe de cette approche, nous considérons à nouveau le contexte


formel K donné dans le tableau 2.2 qu’on divisera en deux contextes K1 et K2 comme le
montre le tableau 2.4 (K1 à gauche et K2 à droite).

a b c d e f g
1 1 1 1 1
2 1 1 2 1
3 1 1 3 1
4 1 1 4 1
5 1 5 1 1
6 1 6 1 1
7 1 7 1 1
8 1 8 1 1
9 1 9 1 1

Tableau 2.4 – Découpage du contexte formel en deux parties K1 , K2 .

Les treillis B(K1) et B(K2) correspondant aux deux contextes K1 et K2 sont donnés
dans la figure 2.3.

Figure 2.3 Les treillis de concepts correspondant aux contextes formels donnés dans le tableau 2.4
: B(K1) à gauche et B(K2) à droite.

54
Chapitre 2 : L’Analyse Formelle de Concepts

Les liens entre les concepts des treillis B(K1) et B(K2) et ceux du treillis B(K) sont
donnés par la figure 2.4.

Figure 2.4 – Liens entre les concepts des treillis B(K1) et B(K2)
et ceux du treillis B(K).

2.4 Systèmes à Base de Treillis de Galois

Ici sont présentés succinctement, dans l’ordre chronologique de leur apparition,


quelques systèmes d’apprentissage basés sur des treillis de Galois.

Le système GRAND (GRAph-based iNDuction) [77] a été introduit en 1988 par


Oosthuizen, et s’adapte à la classification supervisée ou non supervisée. Dans ce système,
la classe d’un objet est un attribut comme les autres. L’algorithme utilisé pour ce système
est l’algorithme qui porte son nom.

Le système LEGAL (LEarning with GAlois Lattice) [78,79], introduit par M.


Liquière et E. Mephu Nguifo, se particularise par le fait qu’il ne construit pas entièrement
le treillis. La connaissance apprise est représentée par un sup-demi treillis, et utilise
l’algorithme de Carpineto et Romano pour la construction du treillis. L’ensemble initial

55
Chapitre 2 : L’Analyse Formelle de Concepts

des objets est séparé en deux parties : les exemples (ou exemples positifs) et les contre-
exemples (ou exemples négatifs) : on a donc O = O+ + O-. Considérant une hypothèse (ou
régularité) comme une conjonction d’attributs (intension de concept), elle peut être définie
comme valide si elle vérifie au moins a exemples positifs, pseudo-cohérente si elle rejette
au moins Q exemples négatifs, et pertinente si elle est valide et pseudo-cohérente. Les
valeurs de a et Q sont définies par l’utilisateur. Seuls les noeuds de régularité valide sont
insérés dans le treillis. L’objectif de LEGAL est de déterminer l’ensemble P des régularités
pertinentes qui caractérisent les exemples positifs.

Le Système GALOIS [80] a été introduit par Carpineto et Romano en


1993. L’ensemble des données est séparé en deux parties égales, une première partie
permettant la construction du treillis de Galois, la seconde partie permettant de tester
le classifieur. L’idée générale est basée sur la similarité entre un nouvel objet à
classer et les concepts du treillis une fois construit. Cette similarité repose sur le
nombre de concepts dont l’intension est égale ou plus générale (incluse) dans
l’ensemble des attributs de l’objet.

RULEARNER [81] utilise l’algorithme d’Oosthuizen pour la construction du treillis à


partir d’une base d’exemples. Il définit des nœuds positifs si le pourcentage d’exemples
négatifs couverts par le nœud est inférieur à un seuil donné.

GRAAL [82] étend les treillis de Galois aux objets structurés. Ce système permet
ainsi de généraliser des opérateurs pour des graphes étiquetés.

IGLUE [83], enfin, fait suite à LEGAL et combine l’utilisation du treillis et


l’algorithme du plus proche voisin. Il utilise une fonction d’entropie pour sélectionner les
nœuds pertinents. IGLUE sélectionne ainsi, contrairement à LEGAL, tous les sous-
ensembles d’exemples significatifs.

2.5 Conclusion

Dans ce chapitre nous avons passé en revu un état de l’art qui couvre à la fois les
notions de base et les définitions mathématiques relatives à la théorie des ensembles ordonnés
et les algorithmes proposés dans ce domaine relatifs à la construction des treillis de Galois.

56
Chapitre 2 : L’Analyse Formelle de Concepts

Nous avons rappelé les notions de base de la théorie des treillis nécessaires à la
compréhension de l’ACF et nous avons détaillé les notions et les définitions relatives à l’ACF
et nous avons donné un survol des principaux algorithmes développés dans le cadre de l’ACF
ainsi que les différents systèmes de classification basés sur les Treillis.

Le prochain chapitre va illustrer le système LATTICE-CELL que nous proposons pour


la catégorisation de textes en utilisant un modèle basé sur les treillis de Galois comme
algorithme d’apprentissage.

57
Chapitre 3

Conception du système
LATTICE-CELL
Chapitre 3 : Conception du système LATTICE-CELL

3.1 Introduction

Depuis une dizaine d’année et devant la croissance extraordinaire du nombre de


comptes rendus hospitaliers que possèdent nos établissements hospitaliers, la catégorisation
automatique de documents est considérée parmi les composants les plus importants dans un
système de recherche d’information, car elle permet d’organiser les documents par catégories.
Cette catégorisation permet d’accélérer, cibler et améliorer la recherche d’information.

Dans ce chapitre, nous proposons une nouvelle approche de catégorisation de textes par
l’utilisation conjointe de treillis de Galois et de l’automate cellulaire CASI [2] afin de réduire
la complexité de stockage et le temps de calcul engendrés par les treillis. Nous présentons
notre système nommé LATTICE-CELL [84], et nous illustrons par une expérimentation
effectuée sur un ensemble de comptes rendus du service de pneumo-pédiatrie de
l’Etablissement Hospitalier Spécialisé (EHS) d’Oran. Le processus de construction du modèle
pour la catégorisation est divisé en trois étapes :

 prétraitement des comptes rendus et construction de la base d’apprentissage;


 élaboration du modèle de catégorisation guidé par une modélisation booléenne du
treillis ;

 catégorisation des nouveaux comptes rendus.

Le prétraitement consiste à construire une représentation numérique des comptes rendus,


tous en passant par un processus d’indexation qui consiste à extraire les termes représentatifs
du corpus [10]. Pour générer le treillis de Galois, l’index construit dans la phase de
prétraitement est utilisé pour organiser les comptes rendus en fonction de leurs termes
communs. Une fois le treillis de Galois construit, nous passons à sa modélisation booléenne,
afin d’extraire le modèle de catégorisation qui sera utilisé pour affecter une catégorie aux
nouveaux comptes rendus.

Ce chapitre est organisé comme suit : dans la section 3.2 nous présentons un survol sur
la notion de catégorisation de textes à savoir sa définition, sa problématique et son processus.
Dans la section 3.3, nous présentons les outils mis en œuvre dans nos travaux, à savoir les

59
Chapitre 3 : Conception du système LATTICE-CELL

treillis de Galois et la machine cellulaire CASI. L’architecture générale de notre système est
présentée dans la section 3.4. Une étude détaillée sur notre système LATTICE-CELL est
présentée dans la section 3.5. Nous décrivons dans cette section notre méthodologie de
catégorisation des comptes rendus hospitaliers, avant de conclure ce chapitre dans la section
3.6.

3.2 La catégorisation de textes

Rappelons que la catégorisation de textes est une instance de la FT ou elle cherche à


déterminer automatiquement la catégorie d’appartenance d’un texte entrant dans un système a
partir d’exemples déjà classés, et que plusieurs méthodes de catégorisation automatique ont été
proposées dans la littérature telles que les méthodes basées sur l’ingénierie des connaissances
et celles utilisant des techniques d’apprentissage automatique.

Nous nous intéressons dans ce mémoire aux méthodes utilisant les techniques
d’apprentissage automatique, où on va générer automatiquement à partir d’un ensemble de
comptes rendus un modèle de catégorisation basé sur une modélisation booléenne des treillis
de Galois.

3.2.1 Problématique

Le problème de la catégorisation des comptes rendus peut se résumer à trouver un


modèle ou une fonction mathématique capable d’assigner automatiquement un compte rendu
à une maladie avec le plus grand taux de réussite possible [85, 86], cette fonction se traduit
par :

: × →{ , }

Ou : D représente l’ensemble des comptes rendus et C représente l’ensemble des


maladies. Pour chaque couple (di, cj) appartenant à D×C, la fonction de catégorisation Ω
renvoi Vrai si le compte rendu appartient à la catégorie et faux sinon.

60
Chapitre 3 : Conception du système LATTICE-CELL

3.2.2 Le processus de catégorisation

Comme nous avons vu dans le chapitre 1, ce processus peut être divisé en trois
phases :

 La phase de prétraitement: a pour objectif de produire un index de termes qui


représente au mieux les comptes rendus, elle comporte le nettoyage du corpus,
la normalisation, le traitement linguistique (morphologique, lemmatisation,
analyse syntaxique, analyse sémantique) et sélection des termes d’index ;

 La phase d’apprentissage : a pour objectif d’induire une fonction de


catégorisation à partir d’un jeu d’entrainement 1 ;

 La phase de catégorisation (ou de test): elle permet d’évaluer de façon


définitive, le processus de catégorisation grâce au jeu de test2 .

3.3. Outils conceptuels et cellulaires

3.3.1 Les treillis de Galois

Nous introduisons tout d’abord les principaux concepts des treillis de Galois :

Soient deux ensembles finis E et E’ (E est un ensemble d’objets et E’ est l’ensemble de


leurs propriétés), et une relation binaire R ⊆ E x E’ entre ces deux ensembles. La figure 3.1
montre un exemple de relation binaire entre deux ensembles. Selon la terminologie de Wille
[43], le triplet (E, E’, R) est un contexte formel correspondant à un unique treillis de Galois. Il
représente des regroupements naturels d’éléments de E et E’.

Soient P (E) une partition de E et P (E’) une partition de E’. Chaque élément du treillis
est un couple, appelé aussi concept, noté (X, X’). Un concept est composé de deux ensembles X
⊆ P(E) et X’ ⊆ P (E’) satisfaisant les deux propriétés suivantes :

1
On appelle jeu d’entrainement l’ensemble des comptes rendus dont le diagnostic est connu à priori.
2
Le jeu de test est un ensemble de couple (comptes rendus, diagnostic) dont l’information associée au diagnostic n’est
utilisée que lors de l’évaluation du système.

61
Chapitre 3 : Conception du système LATTICE-CELL

= ( ) ( )= { ∈ |∀ ∈ , ′}

= ′( ) ′( ′) = { ∈ | ∀ ′ ∈ ′, ′}

Un ordre partiel sur les concepts est défini de la manière suivante: Soit C2=(X2, X’2)
et C3=(X3, X’3) deux concepts.

2< 3 ⇔ 2⊆ 3⇔ 2⊆ 3

Cet ordre partiel est utilisé pour dessiner un graphe appelé diagramme de Hasse,
illustré par la figure 3.1. Il existe un arc entre deux concepts C2 et C3 si C2<C3 et s’il n'y a
pas d’autre élément Ci dans le treillis tel que C1<Ci<C2. Dans un diagramme de Hasse, la
direction des arcs est par convention toujours dans le même sens, soit vers le haut. Le graphe
peut être interprété comme une représentation de la relation de généralisation/spécialisation
entre les couples, où C2<C3 signifie que C3 est plus général que C2 (et C2 est situé au-dessus
de C3 dans le diagramme).

Figure 3.1 Relation binaire et treillis de Galois associé (Diagramme de Hasse).

Le treillis de concepts montre les points communs entre les objets du domaine. La
première partie d’un concept est l’ensemble des objets et est appelée l’extension. La seconde
partie – l’intension – révèle les propriétés communes des objets de l’extension. La partie
droite de la figure 3.1 montre un exemple de treillis de concepts. Par exemple, dans ce treillis,

62
Chapitre 3 : Conception du système LATTICE-CELL

le concept 3 = {(2, 5), (d)} contient dans son extension les objets 2 et 5, qui ont la propriété d
en commun.

La notion de treillis de Galois établissant une relation entre deux ensembles est à la
base d’un ensemble de méthodes de classification conceptuelles. Cette notion fut introduite
par [1] et [42]. Les treillis de Galois consistent à regrouper des objets en classes. Celles-ci
vont matérialiser les concepts du domaine d’étude. Les objets individuels sont discriminés en
fonction de leurs propriétés communes, ce qui permet d’effectuer une classification
sémantique. L’algorithme que nous avons choisi est « DEVIDE & CONQUER » [71], ce
dernier appartient à une nouvelle génération des treillis de Galois (Algorithmes d’assemblage)
qui est une version améliorée des algorithmes incrémentaux [53] (voir chapitre 2, Section
2.3.6) où nous avons vus que cette famille d’approches permettent de diviser un contexte
formel en deux parties verticalement ou horizontalement puis de calculer le treillis de
concepts correspondant à chaque partie et enfin d’assembler les treillis obtenus en un seul.
L’algorithme 1 présente la phase d’assemblage.

ALGORITHME 1 Construction du treillis de Galois global

Procédure Construction du treillis de Galois global


Entré : L1=B1 1, L2 = B2 2 /* Couples de treillis en entrée pour la phase
d’assemblage */
Sortie : L = B     /* treillis L en sortie */
B: = Ø /* Initialisation du treillis*/
1. Trier (B1); Trier (B2) /* Trie des concepts dans un ordre croissant*/
2. Pour chaque couples (Ci, Cj) dans B1 x B2
2.1 E: = Ext (Ci) Ext (Cj) /* Intersection de la partie Extension */
2.2 I:= Int (Ci) Int (Cj) / /* Union de la partie Intension */
2.3 C: = Récup_P_C (E, Ci, Cj) /* Récupération provisoire du prochain concept
C à partir des contextes formels*/
2.4 Si C = Nul Alors Ck: = Générer_Concept (Ik, Ek)
3. B: = B  {Ck}
4. Detect_proch (Ck+1, Ci, Cj) /* détection du concept prédécesseurs dans L */

63
Chapitre 3 : Conception du système LATTICE-CELL

3.3.2. Automate cellulaire pour des systèmes d’inférences -CASI-

3.3.2.1 Définition d’un automate cellulaire

Un automate cellulaire [2] est une grille composée de cellules qui changent d’état dans
des étapes discrètes. Après chaque étape, l’état de chaque cellule est modifié selon les états de
ses voisines calculés dans l’étape précédente. Les cellules sont mises à jour d’une manière
synchrone, et les transitions sont effectuées simultanément. En appliquant des règles simples
et des transitions spécifiques, un automate cellulaire peut effectuer d’une manière globale, des
opérations complexes. Certains des concepts principaux pour les automates cellulaires sont :

 Configuration : L’état global de l’automate cellulaire, appelé configuration, est défini


par les états de toutes ses cellules.

 Voisinage : Le prochain état de chaque cellule dépend de l’état actuel de ses voisines.
La transition de l’automate cellulaire, d’une configuration à une autre, est la
conséquence des transitions locales de toutes les cellules. Le voisinage d’une cellule
est défini par l’ensemble de ses voisines dont les états sont pris en compte pour chaque
transition.

 Parallélisme : Toutes les cellules constituant l’automate cellulaire sont mises à jour
d’une manière simultanée et synchrone.

 Déterministe : Le nouvel état de chaque cellule est déterminé par son état, et l’état
seulement de son voisinage.

 Homogénéité : Toutes les cellules utilisent la même règle de transition pour


déterminer leur prochain état.

 Discrétisation : Un automate cellulaire évolue discrètement dans le temps.

Un automate cellulaire peut être décrit par les quatre composants suivants :

64
Chapitre 3 : Conception du système LATTICE-CELL

 Dimension : Il n’y a aucune limite à la dimension d’un automate cellulaire, mais dans
la pratique, on utilise des automates avec 1, 2, ou 3 dimensions.

 Voisinage de la cellule : Ceci définit l’ensemble de cellules voisines dont l’état sera
pris en compte pour déterminer le prochain état de chaque cellule.

 Espace d’état : C’est l’ensemble fini d’éléments que peut prendre une cellule.
Fonction de transition : C’est l’ensemble de règles qui détermine le nouvel état de
chaque cellule selon son état précédant, et les états précédents des cellules de son
voisinage.

3.3.2.2 Architecture générale du système CASI

CASI [2] est un automate pour l’inférence cellulaire, il est composé de trois modules,
un module COG (Cellular Optimization and Generation) pour l’optimisation et la génération
des règles, un module CIE (Cellular Inference Engine) pour l’inférence cellulaire et un
module CV (cellular validation) pour la validation cellulaire. La figure 3.2 récapitule le
diagramme général du système cellulaire CASI :

COG CIE CV
(Cellular (Cellular Inference
Optimization and Engine) (Cellular validation)
Generation)

Knowledge Base Facts


and Rules

Figure 3.2 Diagramme général de système cellulaire CASI

65
Chapitre 3 : Conception du système LATTICE-CELL

Moteur d’inférence cellulaire (CIE)

Le module CIE (Cellular Inference Engine) simule le principe de fonctionnement


de base d’un Moteur d’Inférence en utilisant deux couches finies d’automates finis. La
première couche, Celfact, pour la base des faits et, la deuxième couche, Celrule, pour la base
de règles. Chaque cellule au temps t+1 ne dépend que de l’état des ses voisines et du sien au
temps t. Dans chaque couche, le contenu d’une cellule détermine si et comment elle participe
à chaque étape d’inférence : à chaque étape, une cellule peut être active (1) ou passive (0),
c’est-à-dire participe ou non à l’inférence. Le principe adopté est simple :

 Toute cellule i de la première couche Celfact est considérée comme fait établi si sa
valeur est 1, sinon, elle est considérée comme fait à établir. Elle se présente sous trois
états : état d’entrée (EF), état interne (IF) et état de sortie (SF).

 Toute cellule j de la deuxième couche Celrule est considérée comme une règle
candidate si sa valeur est 1, sinon, elle est considérée comme une règle qui ne doit pas
participer à l’inférence. Elle se présente sous trois états : état d’entrée (ER), état interne
(IR) et état de sortie (SR). Les matrices d’incidence RE et RS représentent la relation
entrée/sortie des faits et sont utilisées en chaînage avant et en chaînage arrière en
inversant leur ordre.

 la relation d’entrée, notée iREj, est formulée comme suit : ∀i ∈ [1, l], ∀j ∈ [1, r], si
(le Fait i ∈ à la Prémisse de la règle j) alors R E (i, j) ← 1.

 la relation de sortie, notée iRsj, est formulée comme suit : ∀i ∈ [1, l], ∀j ∈ [1, r], si
(le Fait i ∈ à la Conclusion de la règle j) alors RS (i, j) ← 1.

 Les matrices d’incidence RE et RS représentent la relation entrée/sortie des Faits et sont


utilisées en chaînage avant. On peut également utiliser RS comme relation d’entrée et
RE comme relation de sortie pour lancer une inférence en chaînage arrière. On note
qu’une cellule du voisinage d’une cellule qui appartient à Celfact (respectivement à
Celrule) n’appartient pas à la couche Celfact (respectivement à Celrule).

66
Chapitre 3 : Conception du système LATTICE-CELL

 Enfin, puisqu’il y’a l cellules dans la couche Celfact, EF, IF et SF seront considérés en
tant que vecteurs de dimension l (EF, IF, SF ∈ {0,1} l). De même, puisqu’il y’à r
cellules dans la couche Celrule, ER, IR et SR seront considérés en tant que vecteurs de
dimension r (ER, IR, SR ∈ {0,1} r). La figure 3. 3 représente le schéma général de
l’automate cellulaire.

3.3.2.3 Les fonctions de transitions du moteur d’inférence cellulaire – CIE –

Le cycle de base d’un moteur d’inférence, pour établir un fait F en chaînage avant,
fonctionne traditionnellement comme suit :

1. Recherche des règles applicables (évaluation et sélection) ;


2. Choisir une parmi ces règles, par exemple R (filtrage) ;
3. Appliquer et ajouter la partie conclusion de R à la base des faits (exécution).

Le cycle est répété jusqu’à ce que le fait F soit ajouté à la base des faits, ou s’arrête
lorsqu’aucune règle n’est applicable.

Figure 3. 3 Automate cellulaire pour des systèmes d’inférence

La dynamique de l’automate cellulaire, pour simuler le fonctionnement d’un Moteur


d’Inférence, utilise deux fonctions de transitions δfact et δrule, où δfact correspond à la phase
d’évaluation, de sélection et de filtrage, et δrule correspond à la phase d’exécution.

67
Chapitre 3 : Conception du système LATTICE-CELL

La fonction de transition δfact:

( , , , , , ) ( , , , +( . ), , )

La fonction de transition δrule :

( , , , , , ) +( . ), , , , ,

3.4. Architecture générale du système LATTICE-CELL

LATTICE-CELL est un système qui est conçu pour la catégorisation des comptes
rendus hospitaliers du service de pneumo-pédiatrie de l’Etablissement Hospitalier Spécialisé
(EHS) d’Oran. Chaque service se distingue par ses propres caractéristiques structurelles et
fonctionnelles. L’ensemble des modules de ces services forment l’unité opératrice du logiciel
dont la figure 3.4 illustre le schéma général :

Apprentissage Catégorisation

Traitement Segmentation
Linguistique

Lemmatisation
Comptes rendus Comptes rendus
Étiquetés Non étiquetés
Elimination des
mots vides
Construction
de l’index Réduction Vecteur de mots
C
A
S
Représentation I Test
Vectorielle

Application d’algorithme Modélisation


Treillis de Compte rendus
d’apprentissage Booléenne
Galois Catégorisé

Figure 3.4 Architecture générale du système LATTICE-CELL

68
Chapitre 3 : Conception du système LATTICE-CELL

3.5 Méthodologie de catégorisation des comptes rendus hospitaliers

3.5.1 Le corpus d’étude :

Pour valider notre travail nous avons rassemblé un corpus de comptes rendus du service
de pneumo-pédiatrie. Bien sûr après avoir saisie ces comptes rendus, nous avons sélectionné
84 pour la phase d’apprentissage et 42 pour la phase de test. Ces comptes rendus représente 5
maladies : Asthme, dilatation des branches, les pathologies infectieuses, les pathologies
malformatives et les pathologies tumorales.

3.5.2 Construction de l’index

Pour extraire et réduire les termes, qui vont permettre d’établir les fichiers d’entrées du
module d’apprentissage, nous procédons à l’indexation du corpus d’étude.

Le module indexation établit une première liste du vocabulaire en procédant au


découpage du texte en mots, et selon les choix effectués par l’utilisateur, à l’élimination des
mots vides en utilisant une liste prédéfinie et/ou la lemmatisation de cet ensemble de mots.
Cet ensemble de vocabulaire est par la suite réduit, par le choix de l’utilisateur de l’une des
trois mesures implémentées dans LATTICE-CELL : MI, G I, X 2 .

3.5.3 Réduction du nombre des termes

Cette étape peut s’effectuer en utilisant une sélection de termes (lemmes) qui consiste
à conserver seulement les mots qui sont jugés utiles à la catégorisation selon une certaine
fonction d’évaluation, en attribuant un score à chaque terme en fonction de son pouvoir
discriminant, il suffit alors de ne conserver que les mots dont le score est le plus élevé pour
réduire considérablement la dimension de l’espace. La valeur d’un terme peut être mesurée de
plusieurs manières, nous avons implémenté pour cette étude les méthodes les plus utilisées
qui sont :
1. Le gain d’information GI,
2. L’information mutuelle MI,
3 . La mesure du X2.

69
Chapitre 3 : Conception du système LATTICE-CELL

Algorithme 2 Réduction du nombre des termes


1. Récupérer l’index des termes issu du traitement l’linguistique ;
2. Choisir la mesure de réduction et le seuil K (introduis par l’utilisateur) ;
3. Si (Select_Mesure =MI) alors
4. Calculer_MI ;
/* Calculer l’information mutuelle de chaque terme à partir de l’index des termes*/
5. Sinon
6. Si (Select_Mesure =GI) alors
7. Calculer_GI ;
/* Calculer le gain d’information de chaque terme à partir de l’index des termes*/
8. Sinon
9. Calculer_ X 2 ;
/* Calculer la mesure de X 2 de chaque terme à partir de l’index des termes*/
10. Finsi ;
11. Finsi ;
12. Meilleure_termes ← Sortie_termes(K) ;
/*Trier les termes par ordre décroissant puis garder les K premiers termes*/

Ainsi, l’utilisateur est sensé saisir un seuil K pour préciser le nombre de termes qui
doivent figurer dans l’index en sortie. Le procédé consiste à calculer la mesure élue pour tous
les attributs, puis, il faut prendre les K premiers attributs correspondants aux plus grandes
valeurs calculées.

3.5.4 Représentation vectorielle

Avant d’entamer le processus d’apprentissage, les comptes rendus doivent respecter


une certaine représentation. Cette étape est très importante. Pour des besoins d’illustration,
nous avons sélectionné 9 comptes rendus (CR) représentant trois maladies : Asthme (A) pour
les comptes rendus CR1, CR2, CR3, Maladies infectieuses (MI) pour les comptes rendus
CR4, CR5, CR6, maladie Malformatives (MM) pour les comptes rendus CR7, CR8, CR9, et 6
termes d’index.

70
Chapitre 3 : Conception du système LATTICE-CELL

La représentation en vecteurs de dimension N est la technique la plus simple (N étant


la dimension de l’index). Ceci revient à la définition d’un espace vectoriel engendré par les
termes retenus lors de la construction de l’index. On aura ainsi une matrice à deux dimensions
dans laquelle les lignes et les colonnes représentent respectivement les comptes rendus et les
termes de l’index. Les cordonnées de chaque comptes rendus sont les poids résultant de la
formule de pondération, dans notre cas nous avons choisis la pondération binaire (1,0) que
celle de TF*IDF ou bien TF, puisque cette représentation vectorielle (voir le tableau 3.1) va
constituer un contexte formel binaire en entrée pour la construction du treillis de Galois et non
pas une représentation multi-valué.

Grossesse Etiologie Neutrologie Détresse Broncho Asthénie


CR 1 1 1 0 0 0 0
CR 2 1 1 0 0 0 0
CR 3 0 0 0 0 0 1
CR 4 0 0 0 0 0 0
CR 5 0 0 0 1 1 0
CR 6 0 0 0 1 1 0
CR 7 1 0 0 0 0 1
CR 8 0 0 0 1 0 0
CR 9 0 0 1 0 0 0

Tableau 3.1 Représentation vectorielle (exemple illustratif de 9 CR et 6 termes d’index)

3.5.5 Elaboration du treillis de Galois Cellulaire

La construction du treillis consistant à identifier et structurer tous les regroupements


de comptes rendus en fonction de leurs termes communs, le nombre de concepts du treillis
devient rapidement élevée si le nombre de comptes rendus et/ou de termes est important. Cela
rend cette structure assez complexe en termes de stockage mémoire du modèle ainsi que le
temps de réponse pour la phase de catégorisation.

La représentation vectorielle présentée dans le tableau 3.1 contenant des comptes


rendus et termes est utilisée comme entrée pour la construction du treillis de Galois cellulaire.
Pour ce fait, nous utilisons un algorithme existant pour la construction du treillis de Galois
71
Chapitre 3 : Conception du système LATTICE-CELL

[74], et nous avons modifié le fonctionnement du module COG (Cellular Optimization and
Generation) du système CASI qui servait au par avant à l’optimisation et la génération du
graphe d’induction cellulaire, vers le module CIG (Cellular Initialization and Generation) qui,
à partir de chaque concepts produit par le treillis, initialise les deux couches de l’automate :
Celfact et Celrule, ainsi que les matrices d’incidence entré/sortie RE et RS .

L’algorithme 3 représente le déroulent des étapes pour la construction du treillis de


Galois cellulaire :

ALGORITHME 3 Construction du treillis de Galois cellulaire

Procédure Construction du treillis de Galois cellulaire

Entré : L1=B1 1, L2 = B2 2 /* Couples de treillis en entrée pour la phase


d’assemblage */
Sortie : L = B     /* treillis L en sortie */
B: = Ø /* Initialisation du treillis*/
RC =1 ; /* Initialisation de la variable RC qui correspond
au numéro de chaque règles crées pour chaque
concepts */
TCell_F (EF, IF, SF) [Ø] = (0, 0, 0) ; /* Création de la couche Celfact*/
TCell_R ((ER, IR, SR) [0])← (0, 0, 0); /* Création de couche Celrule*/
TCell_RE (RE) [Ø, 0] ← 0; /* Création de la matrice d’entrée*/
TCell_RS (RS) [Ø, 0]← 0; /* Création de la matrice de sortie*/

1. Trier (B1); Trier (B2) /* Trie des concepts dans un ordre croissant*/
2.1. Pour chaque couples (Ci, Cj) dans B1 x B2
2.2.1 E: = Ext (Ci) Ext (Cj) /* Intersection de la partie Extension */
2.2.2 I:= Int (Ci) Int (Cj) / /* Union de la partie Intension */
2.2.3 C: = Récup_P_C (E, Ci, Cj) /* Récupération provisoire du prochain
concept C à partir des contextes
formels*/
2.2.4 Si C = Nul Alors

72
Chapitre 3 : Conception du système LATTICE-CELL

2.2.4.1 Ck: = Générer_Concept (Ik, Ek)


2.2.4.2 TCell_F ((EF, IF, SF) [Ik])← ( , 1, );
2.2.4.2 TCell_F ((EF, IF, SF) [Ek])← ( , 1, );
2.2.4.4 TCell_R ((ER, IR, SR) [RC])← ( , 1,1);
2.2.4.5 TCell_RE ([Ik, RC])← 1;
2.2.4.6 TCell_RS ([Ek, RC])← 1;
2.2.4.7 RC = RC +1;
3. B: = B  {Ck}
4. Detect_proch (Ck+1, Ci, Cj) /* détection du concept prédécesseurs dans L */

Pour la construction du treillis de Galois cellulaire (LATTICE-CELL) à partir de la


représentation vectorielle des comptes rendus hospitaliers, en utilisant le principe de
l’algorithme « DEVIDE & CONQUER. Le module CIG utilise, pour cette finalité quatre
procédures TCell_F, TCell_R, TCell_RE, TCell_RS.

Les concepts générés à partir du treillis de Galois représentent les regroupements de


comptes rendus Ek qui ont Ik comme termes en communs, ainsi et pour chaque concept Ck (Ik,
Ek) généré, ces quatre procédures agissent comme suit en prenons l’exemple du premier
concept S0 visualisé grâce à la plateforme Galicia3 :

 TCell _F : pour chaque Intention Ik (Faits) et Extension Ek, TCell_F crée deux
cellules dans la couche Celfact : (EF, IF, SF) [Ik] ← (0, 0, 0) pour représenter
le fait Ik. et (EF, IF, SF) [Ek,] ← (0, 0, 0) pour le fait Ek, (Pour la partie Ek,
TCell_F calcule la classe majoritaire de chaque Extension). Et pour les cas
ou le concept généré contient un mot vide soit dans sa partie Intention ou
Extension, TCell_F ne prend pas en considération ce concept.

 TCell _R : pour chaque concept Ck, TCell_R crée une cellule dans la couche
Celrule : (ER, IR, SR) ← (0, 1, 1) pour représenter la règle RC.

 TCell _RE : initialiser la matrice d’incidence d’entré : RE [Ik, RC]← [1]


3
http ://www.iro.umontreal.ca/ Galicia

73
Chapitre 3 : Conception du système LATTICE-CELL

 TCell _RS : initialiser la matrice d’incidence de sortie : RS [Ek, RC]← [1]

Pour notre exemple du concept C0 du sommet S0:

 TCell_F crée deux cellules dans la couche Celfact : (EF, IF, SF) [Etiologie,
Grossesse] ← (0, 0, 0) ; (EF, IF, SF) [S0 (100% A), (0% MI), (0% MM)] ← (0, 0,
0) (Voire figure 3.5).

 TCell_R crée pour le concept C0 une cellule dans la couche Celrule : (ER, IR,
SR) ← (0, 1, 1) pour représenter la première règle RC=1(Voire figure 3.6).

 TCell _RE : initialiser la matrice d’incidence d’entré : RE [(Etiologie, Grossesse),


1]← [1] (Voire figure 3.7).

 TCell _RS : initialiser la matrice d’incidence de sortie : RS [S0, 1]← [1] (Voire
figure 3.8).

A partir de la représentation vectorielle du tableau 3.1 et on appliquant l’Algorithme 1


nous obtenons le treillis de Galois de la figure 3.5.

Figure 3.5 Treillis de Galois généré à partir du tableau 3.1

74
Chapitre 3 : Conception du système LATTICE-CELL

Et la même représentation du tableau 3.1 en appliquant l’Algorithme 2 du système


LATTICE-CELL nous obtenons un treillis de Galois cellulaire de la figure 3.4 représenté par
la les deux couches de l’automate cellulaire Celfact et Celrule ainsi que les matrices
d’incidences RE et RS dans les figures 3.6, 3.7, 3.8 et 3.9

Faits EF IF SF
[Etiologie, Grossesse] 0 1 0
[Asthénie] 0 1 0
[Broncho, Détresse] 0 1 0
[Asthénie, Broncho, Détresse] 0 1 0
[Grossesse] 0 1 0
[Neutrologie] 0 1 0
[S0 (100% A), (0% MI), (0% MM)] 0 1 0
[S3 (50% A), (50% MI), (0% MM)] 0 1 0
[S4 (0% A), (67% MI), (33% MM)] 0 1 0
[S5 (0% A), (100% MI), (0% MM)] 0 1 0
[S6 (67% A), (0% MI), (33% MM)] 0 1 0
[S7 (0% A), (0% MI), (100% MM)] 0 1 0

Figure 3.6 Initialisation de la couche Celfact par TCell_F

Règles EF IF SF
R1 0 1 0
R2 0 1 0
R3 0 1 0
R4 0 1 0
R5 0 1 0
R6 0 1 0

Figure 3.7 Initialisation de la couche Celrule par TCell_R

75
Chapitre 3 : Conception du système LATTICE-CELL

RE R1 R2 R3 R4 R5 R6
[Etiologie, Grossesse] 1 0 0 0 0 0
[Asthénie] 0 1 0 0 0 0
[Broncho, Détresse] 0 0 1 0 0 0
[Asthénie, Broncho, Détresse] 0 0 0 1 0 0
[Grossesse] 0 0 0 0 1 0
[Neutrologie] 0 0 0 0 0 1
[S0] 0 0 0 0 0 0
[S3] 0 0 0 0 0 0
[S4] 0 0 0 0 0 0
[S5] 0 0 0 0 0 0
[S6] 0 0 0 0 0 0
[S7] 0 0 0 0 0 0

Figure 3.8 Initialisation de la matrice d’entre RE par TCell_RE

RS R1 R2 R3 R4 R5 R6
[Etiologie, Grossesse] 0 0 0 0 0 0
[Asthénie] 0 0 0 0 0 0
[Broncho, Détresse] 0 0 0 0 0 0
[Asthénie, Broncho, Détresse] 0 0 0 0 0 0
[Grossesse] 0 0 0 0 0 0
[Neutrologie] 0 0 0 0 0 0
[S0] 1 0 0 0 0 0
[S3] 0 1 0 0 0 0
[S4] 0 0 1 0 0 0
[S5] 0 0 0 1 0 0
[S6] 0 0 0 0 1 0
[S7] 0 0 0 0 0 1

Figure 3.9 Initialisation de la matrice de sortie RS par TCell_RS

76
Chapitre 3 : Conception du système LATTICE-CELL

3.5.6 Phase de Catégorisation (Test)

Une fois ce treillis de Galois cellulaire construit nous procédons à la phase de test avec
le module CV qui va déterminer automatiquement la catégorie (ou le diagnostic) de
l’ensemble des comptes rendus du jeu de test.

Pour cela, nous illustrons cette phase avec un exemple de compte rendu non étiqueté et
qui représente les maladies infectieuses, et on appliquant les étapes suivantes :

 Prétraitement ;
 Calcul de la similarité ;
 Inférence cellulaire ;
 Vote majoritaire.

3.5.6.1 Prétraitement

Le compte rendu appartenant au corpus de test va subir le même prétraitement que les
comptes rendus de la phase d’apprentissage (voir figure 3.4), un traitement linguistique avec
une segmentation, lemmatisation et élimination des mots vides et nous obtenons le vecteur de
termes du tableau 3.2 :

Grossesse Etiologie Neutrologie Détresse Broncho Asthénie

0 0 0 1 1 0

Tableau 3.2 Vecteur de termes produit issu de la phase de prétraitement

3.5.6.2 Calcul de la similarité

Les comptes rendus étant représentés sous forme vectorielle, comme des points dans
un espace à n dimensions, nous déterminons les vecteurs les plus similaires en calculant la
distance entre ces points. Il existe différentes mesures permettant le calcule de la similarité:

77
Chapitre 3 : Conception du système LATTICE-CELL

 Le coefficient de Jaccard : Le coefficient de Jaccard introduit par Paul Jaccard était


à l’origine destiné à l’étude de la diversité des espèces. Dans le cadre de la similarité
vectorielle, cette mesure traduit le nombre de descripteurs communs à deux comptes
rendus par le nombre total de descripteurs non communs à ces deux comptes rendus
De manière plus formelle, ce coefficient est défini comme suit [15]:

∑ ×
( × )=
∑ −∑ −∑ ×

 La mesure de cosinus : Le cosinus est l’une des premières mesures à avoir


été utilisée dans le domaine de la recherche d’information, elle est régulièrement
employée afin de déterminer le degré de similarité de vecteurs. Le cosinus entre deux
vecteurs est obtenu en calculant le produit scalaire entre ces deux vecteurs, que nous
divisons par le produit de la norme des deux vecteurs. Le cosinus entre deux vecteurs
d et q est défini par l’équation suivante :

∑ ×
( × )=
∑ ×∑

 Le produit d’Inner : la similarité est définie par le produit suivant :

( × )= ×

 La similarité de Dice : La similarité de Dice est définie par le nombre des termes
communs multipliés par 2 sur le nombre total de termes. La mesure de Dice est donc
définie par la formule suivante :

2 × (∑ × )
( × )=
∑ +∑

78
Chapitre 3 : Conception du système LATTICE-CELL

Où :
 dik : le vecteur de poids du terme t du document k du corpus d'apprentissage
 qk : le poids du terme k du document à classer

Une fois une de ces mesures de similarités appliqué pour calculer la distance entre le
vecteur de mots du tableau 3.2 et les vecteurs de mots dans la couche Celfact de la figure 3.6
Les cellules EF des vecteurs les plus similaires sont instanciées à 1 comme le montre la
figure 3.10 et avec l’utilisation de la mesure d’Inner :

Faits EF IF SF
[Etiologie, Grossesse] 0 1 0
[Asthénie] 0 1 0
[Broncho, Détresse] 1 1 0
[Asthénie, Broncho, Détresse] 1 1 0
[Grossesse] 0 1 0
[Neutrologie] 0 1 0
[S0 (100% A), (0% MI), (0% MM)] 0 1 0
[S3 (50% A), (50% MI), (0% MM)] 0 1 0
[S4 (0% A), (67% MI), (33% MM)] 0 1 0
[S5 (0% A), (100% MI), (0% MM)] 0 1 0
[S6 (67% A), (0% MI), (33% MM)] 0 1 0
[S7 (0% A), (0% MI), (100% MM)] 0 1 0

Figure 3.10 la couche Celfact après l’utilisation de la mesure de similarité

3.5.6.3 Inférence cellulaire

Une fois les cellules EF de la couche Celfact instanciées à 1, l’inférence cellulaire est
lancée en utilisant les deux fonctions de transitions δfact et δrule en chainage avant, où δfact

79
Chapitre 3 : Conception du système LATTICE-CELL

correspond à la phase d’évaluation, de sélection et de filtrage, et δrule correspond à la phase


d’exécution. Nous remarquons dans la figure 3.11 que les cellules EF des sommets S4 et S5
sont instanciés à 1

Faits EF IF SF
[Etiologie, Grossesse] 0 1 0
[Asthénie] 0 1 0
[Broncho, Détresse] 0 1 0
[Asthénie, Broncho, Détresse] 0 1 0
[Grossesse] 0 1 0
[Neutrologie] 0 1 0
[S0 (100% A), (0% MI), (0% MM)] 0 1 0
[S3 (50% A), (50% MI), (0% MM)] 0 1 0
[S4 (0% A), (67% MI), (33% MM)] 1 1 0
[S5 (0% A), (100% MI), (0% MM)] 1 1 0
[S6 (67% A), (0% MI), (33% MM)] 0 1 0
[S7 (0% A), (0% MI), (100% MM)] 0 1 0

Figure 3.11 la couche Celfact après l’inférence cellulaire

3.5.6.4 Vote majoritaire

Après l’inférence cellulaire un vote majoritaire est lancé afin de calculer la catégorie
d’appartenance du compte rendu.

Si on reprend notre exemple les deux sommets déclenchés sont : [S4 (0% A), (67%
MI), (33% MM)] et [S5 (0% A), (100% MI), (0% MM)]. Et le système calcule le pourcentage
de chaque maladie et renvoi a l’utilisateur la catégorie la plus élevée : 83,5% MI (maladie
infectieuse) :
 Pour A : = 0%;

 Pour MI : = 83,5%;

 Pour MM : = 16,5%;

80
Chapitre 3 : Conception du système LATTICE-CELL

3.6 Conclusion

Dans ce chapitre, nous avons présenté une méthodologie pour la catégorisation des
comptes rendus Hospitaliers combinant les treillis de Galois avec la machine CASI. Notre
méthodologie est divisée en trois étapes ; La première consiste en un prétraitement d’un
ensemble de comptes rendus tout en passant par un processus d’indexation avec une sélection
des comptes rendus, un traitement linguistique et une phase de réduction des dimensions. La
deuxième étape est une phase de construction d’un modèle à partir de l’index produit dans
l’étape précédent. Le treillis de Galois est généré, puis grâce à la modélisation booléenne
offerte par la machine CASI, le modèle de catégorisation est établi. Et enfin la troisième étape
est une phase de test (catégorisation) où l’inférence cellulaire est procédée à l’aide des deux
fonctions de transitions δfact, δrule, en chainage avant afin de classer ou catégoriser les
comptes rendus de la base de test.

Nous avons illustré cette méthodologie dans le domaine médical plus précisément aux
comptes rendus médicaux du service de l’établissement hospitalier spécialisé d’Oran.
L’utilisation des treillis de Galois permet une organisation géométrique intuitive et offre un
cadre pour la classification supervisé grâce à la notion de concept : concept = intension +
extension. Le principal avantage du treillis de Galois réside dans son exhaustivité. De cet
avantage découle un inconvénient majeur : tous les algorithmes de construction de treillis ont
une complexité exponentielle en fonction du nombre d’attribut et d’objet. Pour faire face à
cette complexité la machine CASI offre plusieurs avantages :

 La facilité de l’implémentation des fonctions de transition qui sont de basse


complexité, efficaces et robustes et concernent des valeurs extrêmes, et bien adaptées
aux situations avec beaucoup d’attributs.

 RE et RS sont des matrices booléennes qui peuvent être exprimées sous forme de deux
vecteurs de plusieurs séquences binaires. La quantité de mémoire requise pour stocker
les matrices booléennes est de l’ordre de O(q), quand on utilise q séquences de r bits,
ou de O (r), quand on utilise r séquences de q bits.

 Le traitement de telles matrices peut être exécuté en q×r étapes.

81
Chapitre 3 : Conception du système LATTICE-CELL

 Un prétraitement minimal de la base de connaissances obtenues par le treillis, pour sa


transformation en matrice binaire selon le principe de couches cellulaires (Celfact,
Celrule).

82
Chapitre 4

Réalisation et Expérimentation
Chapitre 4 : Réalisation et expérimentations

4.1 Introduction

Dans les chapitres précédents, nous avons donné un aperçu des différents algorithmes
de catégorisation de textes, parmi lesquels on trouve les arbres de décision (ID3), les K-plus
proches voisins (K-PPV), le classifieur NaiveBays, les machines à vecteurs supports (SVM)
et les treillis de Galois.

D’une façon générale, on peut dire que la catégorisation de textes s’est établie comme
un domaine majeur de recherche pour les systèmes d’informations. Ce dynamisme est en
partie dû à la demande importante des utilisateurs pour cette technologie. Elle devient de plus
en plus indispensable dans de nombreuses situations où la quantité de documents textuelles
rend impossible tous traitement manuel. Ainsi la catégorisation de textes a essentiellement
progressé ces dix dernières années grâce à l'introduction des techniques héritées de
l'apprentissage automatique qui ont amélioré très significativement les taux de bonne
classification.

Dans sa version "simple", c'est-à-dire avec des catégories thématiques qui


correspondent au sujet principal du document, la tâche de classification et toutes ses variantes
(filtrage, routage, classement) sont désormais bien maîtrisées. Les algorithmes existants pour
numériser les textes et faire l'apprentissage automatique sont maintenant bien connus. Les
protocoles de tests sont documentés puisque les adaptations des modèles de la reconnaissance
des formes et de grandes campagnes d'évaluation internationales ont été mises en place.

Il reste néanmoins difficile de fournir des valeurs chiffrées sur les performances qu'un
système de catégorisation de textes peut actuellement atteindre. La tâche est souvent
subjective : lorsque deux experts humains doivent déterminer les catégories d'un ensemble de
documents, il y a souvent désaccord sur plus de 5% des textes. Il est donc illusoire de
rechercher une classification automatique parfaite. Actuellement, les systèmes de
catégorisation de textes avec apprentissage automatique ont rattrapé les performances des
systèmes manuels qui nécessitent de longs mois de développement à des experts humains
pour fournir les règles de catégorisation.

84
Chapitre 4 : Réalisation et expérimentations

Nous allons tous d’abord faire un rappel dans les sections 4.2 et 4.3 sur l’importance
des treillis de Galois en classification. Ensuite, nous allons présenter brièvement dans la
section 4.4 le système cellulaire CASI, pour aboutir au concept de système de catégorisation
de textes hybrides dans la section 4.5. Puis nous détaillons par la suite l’architecture
fonctionnelle de notre système LATTICE-CELL dans la section 4.6. Dans la section 4.7 nous
présentons l’étude expérimentale et les résultats obtenus. Et avant de conclure ce chapitre
dans la section 4.9, nous présentons l’étude de complexité dans la section 4.8.

4.2 L’AFC et les Treillis de Galois

Comme nous avons vu dans le chapitre 2, L'Analyse Formel de Concepts (AFC) est
une branche de la théorie des treillis qui permet la génération de concepts. Un concept formel
est un couple complet qui associe un ensemble d'objets (extension) à un ensemble d'attributs
(intention) permettant ainsi de regrouper les objets qui ont des caractéristiques communes.

Même si l'AFC semble abstraite et très théorique, elle fait l'objet de plusieurs
applications dans des domaines variés (réutilisation en génie logiciel, repérage de
l'information, applications web, catégorisation de textes). Le treillis de concepts est utile dès
lors qu'on souhaite explorer de l'information volumineuse pour en extraire des regroupent
conceptuels. L'AFC peut aussi bien servir à faire de la classification des textes ou des pages
web [87], recherche d'images basée sur le contenu [88], découvrir de l'information sur une
population ou bien classer des données dans un entrepôt [89]. Toutes ces applications sont
déjà réalisables grâce aux nombreux algorithmes existants pour générer les concepts. Pour ce
fait que l’ACF a été centrée autour de la notion de concept qui, du point de vue philosophique,
est considéré comme l’unité de base de la pensée humaine.

4.3 Discussion sur les treillis de Galois

L’utilisation des treillis de Galois permet une organisation géométrique intuitive. Et


grâce à la notion de concept : concept = intension + extension les treillis de Galois offre un
cadre pour la classification supervisé.

85
Chapitre 4 : Réalisation et expérimentations

Le principal avantage du treillis de Galois réside dans son exhaustivité. De cet avantage
découle un inconvénient majeur : tous les algorithmes de construction de treillis ont une
complexité exponentielle en fonction du nombre d’attributs et d’objets.

Plusieurs algorithmes de construction du treillis de Galois ont été proposés et ont


fait l’objet d’études comparatives ou de synthèses. Parmi les algorithmes analysés dont
certains sont plus ou moins détaillés, on trouve ceux de Chein [58], de Ganter [60], de Bordat
[62], de Godin et al. [64] (Assez proche de l’algorithme de Norris [59]), d’Oosthuizen [77], de
Carpineto et Romano [65], de Valtchev [71]. Ils sont comparés suivant différents critères parmi
lesquels : la complexité théorique en temps d’exécution dans le pire des cas, la construction ou
non du diagramme de Hasse, la technique de mise à jour utilisée (incrémentale ou non) et le type
de parcours effectué (descendant ou ascendant) [40]. Cette étude à montré qu’aucun
algorithme n’est meilleur que tous les autres sur tous les plans et que les performances d’un
algorithme dépendent fortement des caractéristiques du contexte formel en entrée [74].

Ainsi, le treillis de Galois construit dépend non seulement de la taille des éléments
(nombre d’exemples et d’attributs), mais aussi pour une taille fixée, de la nature de la relation
entre exemples et attributs. Par conséquent, la seule comparaison théorique en termes de
complexité des différents algorithmes est faite dans le pire des cas [74]. Cependant les bornes
de complexité présentées sont généralement de loin supérieures aux résultats observés en
pratique par les différents auteurs.

Dans une étude récente faite par Kuznetsov et Obiedkov [74].Dans leurs travaux,
Kuznetsov et Obiedkov analysent dix algorithmes de construction du treillis de Galois. Ils
présentent une étude de leurs complexités théoriques et une comparaison expérimentale sur
des jeux de données artificiels. Dans cette analyse, il constate que l’algorithme de Nourine et
Raynaud [59] qui a la meilleure complexité théorique actuelle dans le pire des cas, n’est pas le
plus rapide dans les expérimentations. Les auteurs on aussi fait des recommandations en
fonction de la nature du contexte.

Ainsi, dans plusieurs applications de prospection de données, la production d'un


ensemble exhaustif de connaissances (concepts) peut être très coûteuse et comporter plusieurs
éléments absolument pas pertinents pour un utilisateur donné. Aussi, il serait avantageux
d'offrir une possibilité de réduire cette complexité en stockage mémoire et en temps de

86
Chapitre 4 : Réalisation et expérimentations

réponse des treillis de Galois en modélisant cette structure complexe par les automates
cellulaires. Ce qui a donné naissance à un nouveau système de catégorisation de textes appelé
LATTIEC-CELL.

4.4 L’automate cellulaire CASI

CASI [2] comme nous avons vu dans le chapitre 3 est un automate cellulaire qui
simule le principe de fonctionnement de base d’un Moteur d’Inférence en utilisant deux
couches finies d’automates finis. La première couche, Celfact, pour la base des faits et, la
deuxième couche, Celrule, pour la base de règles. Chaque cellule au temps t+1 ne dépend que
de l’état des ses voisines et du sien au temps t. Dans chaque couche, le contenu d’une cellule
détermine si et comment elle participe à chaque étape d’inférence : à chaque étape, une cellule
peut être active (1) ou passive (0), c’est-à-dire participe ou non à l’inférence. Les matrices
d’incidence RE et RS représentent la relation entrée/sortie des faits et sont utilisées en chaînage
avant et en chaînage arrière en inversant leur ordre.

La dynamique de l’automate cellulaire, pour simuler le fonctionnement d’un Moteur


d’Inférence, utilise deux fonctions de transitions δfact et δrule, où δfact correspond à la phase
d’évaluation, de sélection et de filtrage, et δrule correspond à la phase d’exécution (voire
chapitre 3 section 3.3.2.3).

4.5. Vers les solutions hybrides

Dans le chapitre 3 de ce mémoire, nous avons présenté notre système LATTICE-CELL,


ce système est dédié à la catégorisation de textes, l’approche proposée consiste à construire un
modèle de catégorisation par l’utilisation conjointe des treillis de Galois et de l’automate
cellulaire CASI.

Pour construire le treillis de Galois nous avons utilisé la plateforme GALICIA (voire
Annexe A), le treillis obtenu dans la phase d’apprentissage est modélisé par le principe de
l’automate cellulaire, afin de générer le modèle booléen (Celfact, Celrule, RE, RS) de
catégorisation. Une fois la phase d’apprentissage accomplie nous procédons à la phase de
catégorisation en utilisant le modèle du treillis de Galois cellulaire.

87
Chapitre 4 : Réalisation et expérimentations

4.5.1 Classification des systèmes hybrides

Plusieurs classifications sur les modes d’intégration des systèmes hybrides ont été
proposées selon plusieurs critères, qu’on va définir :

 Le type d’intégration : approche unifiée, semi-hybride ou hybride; - Le degré de


couplage : faible, moyen ou fort;

 Le mode d’intégration : pré/post traitement, sous-traitance, méta-traitement ou


coopération ;

 Le transfert des connaissances : supposons qu’on a deux méthodes M1 et M2 alors


le transfert est effectué selon M1 → M2, M1← M2 ou M1 ↔M2;

 Le type de codage des connaissances : règle de type 0, règle de type 0+, règle floue,
prédicat, concepts, etc. ;

 Le type de méthode de raisonnement : chaînage avant, chaînage arrière, résolution,


propagation, etc.;

 Le mode d’acquisition des connaissances : apprentissage continu, non continu,


supervisé ou non supervisé.

4.5.2 Types d’Intégration

L’intégration des méthodes peut être classée en trois groupes principaux selon le type
d’hybridicité employé :

Approche unifiée : ce type d’approche est aussi connu comme une approche pure ou comme
un hybridicité au sens large. L’idée est d’intégrer tout dans un seul
module, uniquement treillis de Galois (TG) uniquement, ou uniquement
cellulaire (SC), les deux types d’approches (TG+SC).

88
Chapitre 4 : Réalisation et expérimentations

Approche semi-hybride : cela regroupe la compilation d’une base de règles par un module
(insertion de connaissances) et l’explication de règles par un autre
module (extraction de connaissance). Certains systèmes sont dits semi-
hybrides parce qu’ils ne réalisent qu’un des deux types de transferts de
connaissances entre les modules.

Approche hybride : à partir du moment où un système offre la possibilité d’insérer et aussi


d’extraire des règles, il devient un système hybride complet (hybridicité
au sens strict), puisque on peut le coupler facilement avec un moteur
d’inférence cellulaire, et c’est le cas pour notre système LATTICE-CELL

4.5.3 Degré de Couplage

Le degré de couplage définit la force d’interaction entre les modules.

Couplage Faible : dans ce type d’architecture, les divers modules (deux en général) sont
reliés par une simple relation d’entrée/sortie, et les communications sont
donc unidirectionnelles (loosely coupled systems).

Couplage Moyen : dans cette catégorie, les interactions entre les modules sont plus souples,
car elles sont bidirectionnelles; il ne s’agit plus simplement de relations
d’entrée/sortie, et chacun des modules peut influencer dans une certaine
mesure le fonctionnement de l’autre (couplage étroit ou tightly coupled
system).

Couplage Fort : dans ces systèmes, les modules partagent des structures de données
communes, ou au moins l’un des modules a accès direct à certaines
structures de données de l’autre (fully coupled). Les connaissances et les
données ne sont pas uniquement transférées, elles sont aussi partagées
entre les modules qui utilisent des structures internes communes. C’est le
cas de notre système hybride LATTICE-CELL où le module CIG
(Cellular Concept Generation) de l’automate cellulaire CASI peut
extraire les concepts générés par le module treillis de Galois (TG).

89
Chapitre 4 : Réalisation et expérimentations

4.6 Architecture fonctionnelle du système LATTICE-CELL

Dans les deux parties 4.3, 4.4 de ce chapitre, nous avons présenté les deux outilles qui
ont contribué à la conception du système LATTICE-CELL : les treillis de Galois et l’automate
cellulaire CASI. Nous avons essayé de tirer profit des aspects intéressants présentés par ces
deux approches, de façon à créer un nouveau système hybride plus performant. Ce nouveau
système que nous avons développé a été nommé LATTICE-CELL pour Cellular Lattice.

Le système LATTICE-CELL est un outil pour la catégorisation de textes, sa principale


application est dans le domaine de catégorisation de textes et il est composé de trois modules :
Prétraitement, TG et CASI. La figure 4.1 montre le schéma global du système.

Human expert User

USER INTERFACE

Prétraitement
CASI
CASI
5 6
22
CIG CIE CV
C-RCF (Cellular (Cellular (Cellular
C-ARFF 3 Initialization and Inference validation)
Generation) Engine)
TG (Treillis
WEKA
de Galois)
4
GALICIA Knowledge Base
Facts and Rules

LATTICE-CELL

Figure 4.1 Schéma global du système hybride LATTICE-CELL

90
Chapitre 4 : Réalisation et expérimentations

 Prétraitement : C’est le module responsable de la préparation de l’index des termes à


partir des textes sélectionnés pour les deux phases d’apprentissage et catégorisation.
Les principales fonctions de ce module sont : le traitement linguistique et la réduction
des dimensions (voire chapitre 3 section 3.5.2)

 Convertisseur C-RCF : il est responsable de la conversion des données vers le


contexte formel (voire chapitre 2, section 2.3.3) en format « .rcf.xml », et d’assurer le
transfert du contexte formel vers le module TG.

 Convertisseur C-ARFF : il est responsable de la conversion des données vers le


format « .ARFF », et d’assurer le transfert du contexte formel vers la plateforme
WEKA1.

 Treillis de Galois –TG - : Il est responsable de la construction du treillis de Galois,


nous avons utilisé pour cette tache la plateforme GALICIA.

 Automate cellulaire pour des systèmes d’inférences -CASI - : Il est responsable en


première étape de générer le treillis de Galois cellulaire grâce au module CIG, puis le
lancement de l’inférence cellulaire pour la catégorisation avec la coopération des 3
modules CIG, CIE et CV.

4.7 Expérimentations

Le système LATTICE-CELL a été testé sur deux problèmes déférents. Nous avons
d’abord choisi d’appliquer LATTICE-CELL au corpus (sport, économie et télévision)2

Nous avons commencé par ce corpus afin de pouvoir mieux mesurer les résultats du
système LATTICE-CELL, et de comparer sa performance par rapport aux autres algorithmes
de catégorisation de textes. Le fait d’avoir choisi ce problème de catégorisation, nous a permis

1
http://switch.dl.sourceforge.net/project/weka/weka-3-6-windows-jre/3.6.4/weka-3-6-4jre.exe
2
http://deft08.limsi.fr/corpus-desc.php

91
Chapitre 4 : Réalisation et expérimentations

de mieux exploiter l’application, car le problème était bien connu et nous avions le contrôle
sur toutes les données du problème.

Finalement, la deuxième application a été l’utilisation de LATTICE-CELL dans un


problème de catégorisation des comptes rendus hospitaliers du service de pneumo-pédiatrie de
l’Etablissement Hospitalier Spécialisé (EHS) d’Oran [84].

En utilisant LATTICE-CELL sur ces deux corpus, nous avons essayé de mettre en
valeur les propriétés de notre système et de comparer ces performances par rapport aux autres
algorithmes tel que ID3, les K-plus proches voisins, le classifieur NaiveBays et SVM
implémenté dans WEKA. Nous allons travailler sur deux types de corpus afin de pouvoir
valider nos résultats

Dans les sections qui suivent, nous allons décrire plus en détail les expériences et les
résultats obtenus en utilisant LATTICE-CELL.
.
4.7.1 Applications

 Corpus sport, économie et télévision

Ce corpus noté CORPUS1, est étiqueté en thème selon 9 catégories : Economie,


Sport, Télévision, International, ART, Littérature, Politique française, Sciences et Société.
Chaque document est également annoté selon qu’il provient du journal le monde (LM) ou de
Wikipidia (W).

Pour notre cas nous avons choisi un extrait de ce corpus qui contient seulement 3
catégories (Economie, Sport et Télévision) et nous avons traité seulement le problème de la
catégorisation en thèmes3.

La répartition des volumes des documents pour chaque classe dans le corpus
d’apprentissage et de test est indiquée dans le tableau 4.1

3
C.-à-d. nous n’avons choisi que les textes provenant du journal le monde (LM)

92
Chapitre 4 : Réalisation et expérimentations

CORPUS1 ECO SPO TEL Echantillon


Apprentissage 300 300 300 900
Catégorisation 154 154 154 462

Tableau 4.1 Répartition des documents du CORPUS1

 Corpus médical de l’Etablissement Hospitalier d’Oran

La construction du corpus médical du service de pneumo pédiatrie de l’établissement


hospitalier d’Oran spécialisé en pédiatrie noté CORPUS2, a été faite après la consultation
d’archive des patients du service. Le but de ce travail est de rassembler le maximum de
comptes rendus qui permettent de définir la maladie d’un nourrisson.

Les médecins doivent rédiger un compte rendu hospitalier pour chaque nourrisson
admis en service de pneumo pédiatrie. Celui-ci contient de nombreuses informations,
organisées autour du schéma suivant :

 motif de l’hospitalisation ;
 antécédents médicaux et chirurgicaux ;
 histoire de la maladie;
 résultats des différents examens cliniques et complémentaires ;
 évolution de l’état du patient pendant son séjour ;
 conclusion donnant le diagnostic et l’issue du séjour

Voici un exemple d’un compte rendu du service de pneumo-pédiatrie de


l’établissement hospitalier d’Oran :

93
Chapitre 4 : Réalisation et expérimentations

Le nourrisson XXXXX, âgé de 8 mois, originaire et demeurant à mascara hospitaliser


à notre service pour la prise en charge d’une broncho-pneumopathie répétitive.

Anamnèse

 Broncho-pneumopathie a répétition depuis l’âge de 2 mois et demi bénéficiant


de trt ATB répété.
 Méningite à l’âge de 6 mois hospitaliser a mascara.
 Otite a répétition depuis l’âge de 3 mois.
 Fièvre à long cour a l’âge de 3 mois.
 Infection urinaire documenté a l’âge de 6 mois.
 Diarrhée chronique intermittente (4-5 selles /j) depuis l’âge de 4 mois.

Examen clinique

 Poids : 6k400. Taille : 63cm. PC : 42cm


 NRS conscient état général moyen, pâleur cutaneo-muqueuse. Apyrétique à
37°. Alimentation conservée.
 Polypnée à 56 c/mn, tirage sous costal et sus sternal.
 Auscultation pulmonaire : râles crépitant aux 2 temps + râles sibilants.
 Hépatomégalie
 Adénopathie sous axillaire gauche non douloureuse.

Le reste de l’examen clinique est sans particularités.

Examens Paraclinique

 Biologie : GB : 32.4 *10000/µl , GR : 13.9 * 4.1l , PLT : 693h*10000/µl ,


CRP: positive a 12mg/l , urée 0.17 , créât : 2.3mg/l ,groupage o RH positif ,
TP :100% , TCK :29 fibrinogène : 5.82g/l

94
Chapitre 4 : Réalisation et expérimentations

 Radiographie thoracique de face : Distension thoracique, opacités


parenchymateuses macro nodulaires bilatérales

 Echographie axillaire : formation abcédée avec adénopathie

Au total

Le NRS XXXXXX âgé de 8 mois présente des infections pulmonaires répétitives


avec abcès axillaire nécessitant une incision de l’abcès et l’ablation de l’adénopathie.

Nous avons recueilli environ 126 comptes rendus provenant du service. Nous avons
été confrontés à une grande étape de saisies et de corrections, nous avons pu constituer un
corpus des comptes rendus médicaux exploitables, et étiquetés selon 5 maladies : Asthme, la
dilatation des branches, la mucoviscidose, les pathologies infectieuses, les pathologies
malformatives et les pathologies tumorales.

La répartition des comptes rendus pour chaque maladie dans le corpus d’apprentissage
et de test est indiquée dans le tableau 4.2

CORPUS2 Apprentissage Catégorisation


Asthme 15 8
Mucovisudose 5 2
Dilatation des bronches 5 2
Pathologie Infectieuses 37 19
Pathologie Malformative 22 11
Echantillon 84 42

Tableau 4.2 Répartition des comptes rendus du CORPUS2

95
Chapitre 4 : Réalisation et expérimentations

4.7.2 Mesures de performances

Pour analyser la performance de LATTICE-CELL, nous devons tout d’abord établir la


matrice de confusion à partir de laquelle seront déduites les mesures d’évaluation des
performances.

La matrice de confusion

Il s’agit d’un tableau de contingence qui permet de comparer la catégorisation de


l’expert à celle du classifieur. Les lignes représentent le nombre d’occurrences des documents
de la classe estimée (classificateur) alors que les colonnes représentent le nombre
d’occurrences des documents de la classe réelle (expert).

Pour un système de catégorisation, on a la matrice illustrée dans le tableau 4.3 :

Réalité
C not C
C VP FP
Système
non C FN VN

Tableau 4.3 Table de confusion

Où :

 VP (Vrai Positif) : ration d’élément de la classe C ayant été étiqueté C par le


classificateur ;
 VN (Vrai Négatif) : ration d’élément de la classe non C ayant été étiqueté non C
par le classificateur ;
 FN (Faux négatif) : ration d’élément de la classe non C ayant été étiqueté C par
le classificateur ;

96
Chapitre 4 : Réalisation et expérimentations

 FP (Faux Positif) : ration d’élément de la classe C ayant été étiqueté non C par
le classificateur ;

Ainsi nous avons extrait à partir de la table de confusion les critères suivants :

 La précision : est définie par le nombre d’assignations correctement produites


par rapport au nombre d’assignations produites par le système.

P=

 Le rappel : est défini par le nombre d’assignations produites correctement par


le système par rapport au nombre d’assignations produites par les experts.

R=

Ces deux mesures sont antagonistes : avec un même système, augmenter la précision
se fait au détriment du rappel, et inversement. On cherche bien sûr à atteindre les
performances du système idéal pour lequel R=P=1. Si l’on veut comparer les performances
des différents systèmes, il faut donc prendre en compte le rappel et la précision. Cependant, il
n’est pas aisé de comparer ces deux valeurs.

Nous avons donc calculé la F-Mesure où cette dernière est une manière de combiner
ces deux valeurs, c’est le point où la précision et le rappel sont égaux. Plus ce point se
rapproche de 100%, plus le classificateur est performant à la fois en précision et en rappel :

( )×
=
( )

Différentes valeurs de donnent différents critères pour lesquels l’importance du


rappel et la précision varient. Dans la littérature, les résultats sont souvent exposés avec =1.
On appelle alors cette mesure la F1-mesure

Nous avons calculé aussi l’exactitude (Acc) et le taux d’erreur (Err) où :

97
Chapitre 4 : Réalisation et expérimentations

 L’exactitude (Acc) : représente la proportion des documents bien classés

( )
Acc =
( )

 L’erreur (Err) : représente la proportion des documents mal classés

( )
Err =
( )

Macro-moyenne et Micro-moyenne

La précision et le rappel globaux, c'est-à-dire sur toutes les classes, peuvent être
calculés à travers une moyenne des résultats obtenus pour chaque catégorie. Deux approches
sont distinguées :

 La micro-moyenne qui fait d’abord la somme des éléments du calcul – vrais positifs,
faux positifs et négatifs – sur l’ensemble des n classes, pour calculer la précision et le
rappel globaux ;
 La macro-moyenne qui calcule d’abord la précision et le rappel sur chaque classe i,
puis en fait la moyenne sur les n classes.

Dans la micro-moyenne chaque classe compte proportionnellement au nombre


d’éléments qu’elle comporte : une classe importante comptera davantage qu’une petite classe.
Dans la macro- moyenne, chaque classe compte à égalité [90].

4.7.3 Résultats

Les résultats obtenus avec les deux corpus (CORPUS1 et CORPUS2) en utilisant
NaiveBays, ID3, K-PPV, SVM (SMO) et notre système LATTICE-CELL sont indiqués si
dessous4 :

4
Le rappel et la précision sont calculés par la macro-moyenne

98
Chapitre 4 : Réalisation et expérimentations

4.7.3.1 Résultats pour le CORPUS1

 L’impact des mesures de similarités sur les performances de LATTICE-CELL

Pour l'étude concernant l'effet du choix de la mesure de similarité sur la performance


de LATTICE-CELL, nous avons testé quatre scénarios. Dans ces scénarios, nous avons fait
varier la mesure de similarité, en utilisant Jaccard, Cosinus, Inner et Dice, et avec l’utilisation
de la fonction de réduction GI pour 500 termes. Le tableau 4.4 et la figure 4.2 présentent les
résultats des ces expériences.

Précision Rappel Acc(Exactitude) Erreur F-Mesure


JACCARD 0,34 0,39 0,54 0,45 0,36
COSINUS 0,39 0,33 0,6 0,39 0,36
INNER 0,33 0,39 0,54 0,45 0,36
DICE 0,32 0,69 0,42 0,57 0,44

Tableau 4.4 L’impact des mesures de similarités du CORPUS1

0,8
0,7
0,6
0,5
0,4 JACCARD
0,3
COSINUS
0,2
0,1 INNER
0 DICE

Figure 4.2 L’impact des mesures de similarités du CORPUS1

99
Chapitre 4 : Réalisation et expérimentations

Nous constatons, sur le tableau 4.4, que l’utilisation de la mesure de COSINUS à


donnée de bonnes performances en termes d’exactitude et taux d’erreur. Le tableau 4.5 illustre
la comparaison entre le système LATTICE-CELL en utilisant la mesure de COSINUS et
d’autres algorithmes de catégorisation (NaiveBays, ID3, K-PPV, SVM (SMO)).

Précision Rappel Acc Erreur F-Mesure


NaiiveBays 0,41 0,42 0,40 0,60 0,38
ID3 0,38 0,36 0,36 0,64 0,35
K-PPV 0,38 0,35 0,36 0,64 0,29
SMO 0,38 0,37 0,38 0,62 0,36
LATTICE-CELL 0,39 0,33 0,60 0,39 0,36

Tableau 4.5 Comparaison des résultats pour le CORPUS 1

0,7

0,6

0,5
NaiiveBays
0,4 ID3

0,3 K-PPV
SMO
0,2
LATTICE-CELL
0,1

0
Précision Rappel Acc Erreur F-Mesure

Figure. 4.3 Résultats de comparaisons des performances pour le corpus 1

Le système LATTICE-CELL nous permet d’obtenir avec le CORPUS1 des bons


résultats par rapport aux autres algorithmes de catégorisation en termes d’exactitude et taux
d’erreur. Nous remarquons que le système LATTICE-CELL améliore de prés de 7% les
résultats de K-PPV en terme de F-mesure et que la proportion des documents bien classés

100
Chapitre 4 : Réalisation et expérimentations

(Acc) est supérieure avec 60% de réussite, et que la proportion des documents mal classés
(Err) est nettement inferieure que les autres algorithmes avec 39% comme taux d’erreur.

4.7.3.2 Résultats pour le CORPUS2

 L’impact des mesures de similarités sur les performances de LATTICE-CELL

Pour l'étude concernant l'effet du choix de la mesure de similarité sur la performance


de LATTICE-CELL, nous avons testé quatre scénarios. Dans ces scénarios, nous avons fait
varier la mesure de similarité, en utilisant Jaccard, Cosinus, Inner et Dice, et avec l’utilisation
de la fonction de réduction GI pour 350 termes. Le tableau 4.6 et la figure 4.4 présentent les
résultats des ces expériences.

Précision Rappel Acc Erreur F-Mesure


JACCARD 0,44 0,39 0,75 0,25 0,38
COSINUS 0,18 0,23 0,77 0,33 0,17
DICE 0,20 0,56 0,26 0,73 0,29
INNER 0,26 0,30 0,76 0,23 0,27

Tableau 4.6 L’impact des mesures de similarités du CORPUS2

0,9
0,8
0,7
0,6
0,5
0,4 JACCARD
0,3 COSINUS
0,2
0,1 DICE
0 INNER

Figure 4.4 L’impact des mesures de similarités du CORPUS2

101
Chapitre 4 : Réalisation et expérimentations

Nous constatons, sur le tableau 4.6, que l’utilisation de la mesure de JACCARD à


donnée les meilleures performances en termes de précision, rappel, exactitude et taux
d’erreur. Le tableau 4.7 illustre la comparaison entre le système LATTICE-CELL en utilisant
la mesure de JACCARD et d’autres algorithmes de catégorisation (NaiveBays, ID3, K-PPV,
SVM (SMO)).

Précision Rappel Acc Erreur F-Mesure


NaiiveBays 0,18 0,32 0,32 0,67 0,23
ID3 0,23 0,22 0,22 0,75 0,22
K-PPV 0,47 0,27 0,28 0,72 0,25
SVM (SMO) 0,44 0,34 0,42 0,58 0,36
LATTICE-CELL 0,44 0,39 0,75 0,25 0,38

Tableau 4.7 Comparaison des résultats pour le CORPUS 2

0,8
0,7
0,6
0,5 NaiiveBays
0,4
0,3 ID3
0,2
K-PPV
0,1
0 SMO
LATTICE-CELL

Figure 4.5 Résultats de comparaisons des performances pour le corpus 2.

Le système LATTICE-CELL nous permet d’obtenir avec le CORPUS2 de bons


résultats par rapport aux autres algorithmes de catégorisation. Nous remarquons que le
système LATTICE-CELL améliore de prés de 2% les résultats de SVM en terme de F-mesure
et que la proportion des documents bien classés (Acc) est nettement supérieure avec 75% de
réussite, et que la proportion des documents mal classés (Err) est nettement inferieure que les
autres algorithmes.

102
Chapitre 4 : Réalisation et expérimentations

4.7.4 L’impact des fonctions de réduction des termes des deux corpus (1 et 2)

Pour l'étude concernant l'effet du choix de la fonction de réduction sur la performance


de LATTICE-CELL, nous avons testé plusieurs scénarios. Dans ces scénarios, nous avons fait
varier la fonction de réduction des termes, en utilisant GI, MI, , nous avons constaté que la
fonction GI = 500 pour le CORPUS1 et GI = 350 pour le CORPUS2 donne les meilleures
résultats, et que l’utilisation des deux fonctions MI et avec des valeurs >= 50 ne permet
pas de générer le treillis de Galois. Cet obstacle est dû à la relation entre la densité ou esparcié
du contexte formel en entrée et l’algorithme choisis.

4.8 Etude de complexité

Le système LATTICE-CELL peut automatiquement acquérir, représenter et traiter la


connaissance extraite à partir d’exemples de textes sous forme booléenne. Nous prouvons ici
que ceci peut être réalisé tout en réduisant la quantité de stockage et le temps d’exécution. En
effet, cela est due à l’utilisation de la représentation booléenne des matrices RE et RS, et à la
multiplication booléenne employée par les fonctions de transition δfact et δrule.

Les deux processus intensifs de calcul dans LATTICE-CELL sont le stockage et la


multiplication booléenne des matrices d’incidences RE et RS [2].

 Stockage en mémoire de RE et RS : RE et RS sont des matrices booléennes qui peuvent


être exprimées sous forme de deux vecteurs de plusieurs séquences binaires. La
quantité de mémoire requise pour stocker les matrices booléennes est de l’ordre de
O(q), quand on utilise q séquences de r bits, ou de O (r), quand on utilise r séquences
de q bits.

 Temps d’exécution : le traitement de telles matrices peut être exécuté en q × r étapes.

L’algorithme standard RTE × EF, par exemple, utilisé par la fonction de transition δfact
peut être exprimé par un algorithme séquentiel de multiplication booléenne vecteur-matrice
exécutée en un temps O (rq), où q est la dimension du vecteur EF et r x q est la dimension

103
Chapitre 4 : Réalisation et expérimentations

de la matrice RTE. La multiplication de RTE avec EF peut être exécutée, en utilisant la


technique de vectorisation booléenne de matrice, dans un temps O(r log q) où le produit
intérieur d’une ligne de RE avec le vecteur EF est réduit au calcul du bit de parité.

Après la modélisation du treillis de Galois, le système LATTICE-CELL lance la phase


de catégorisation.

Soit Ω = {d1, d2, .., dn} un ensemble de documents concernés par le problème de
catégorisation. A cet ensemble est associé un attribut particulier appelé attribut classe noté Y.

A chaque document d peut être associé sa classe Y (d). On dit que la variable Y prend
ses valeurs dans l’ensemble des étiquettes, appelé également ensemble des classes et noté C.

Y: Ω → C = {C1, C2, .., Cm}


di ~→ Y (di) = cj

En respectant la représentation élémentaire des matrices booléennes d’entrée-sortie RE


et RS, le temps d’exécution globale de R E T (r× (q−m)) × EF (q−m) et RS (m×r) × ER ( m ) est
proportionnel à (O(r log (q − m)) + O(r log m)), avec m≤ q et où w désigne la longueur

du mot après vectorisation des matrices booléennes [2].

La catégorisation à été appliquée sur deux corpus : un avec 1362 documents, et un


second avec 126. Ces expérimentations ont montré que la nouvelle représentation
cellulaire du treillis de Galois a réduit le temps de réponse5 de 18 (ms) pour la phase de
mise à jour du treillis à 8 (ms) pour la phase de catégorisation dans LATTICE-CELL, ainsi
que la quantité de mémoire requise pour stocker le treillis de Galois.

Ces résultats sont calculés avec une machine dont les performances sont les suivants :
Pentium 4, Intel (R) core (TM) 2 duo 2 GHz, 3070 MB RAM, Windows XP Pack 2.

5
Le temps de réponse est calculé par rapport à un seul document.

104
Chapitre 4 : Réalisation et expérimentations

4.9 Conclusion

Dans ce chapitre, nous avons présenté l’étude expérimentale de notre système


LATTICE-CELL, ainsi que son architecture fonctionnelle. Nous avons ensuite détaillé les
applications traités par ce système et les résultats obtenus. Dans ces résultats nous
avons réussi à montrer que le système LATTICE-CELL a donné de bon résultats par rapport
aux autres algorithmes de catégorisations telle que ID3, les K-plus proches voisins, le
classifieur NaiveBays et les machines à vecteurs supports en termes d’exactitude du modèle,
ainsi qu’un taux d’erreur nettement inférieure. L’étude de complexité à été aussi abordé où
nous avons réussi à réduire la complexité de stockage ainsi que le temps de réponse engendré
par les treillis de Galois avec la nouvelle représentation booléenne de ce dernier.

105
Conclusion
Générale
CONCLUSION GENERALE ET PERSPECTIVES

Le thème que nous avons abordé dans ce mémoire s’intéresse au domaine de la fouille
de textes et plus particulièrement à l’utilisation des treillis de Galois dans un processus de
catégorisation de texte avec une amélioration de cette structure complexe en la modélisant
avec les automates cellulaires.

Nous avons vu que la fouille de texte, est une science qui a comme but d’extraire des
motifs cachés à partir de grandes collection de texte ou bien de découvrir des connaissances
dedans, et que ces tâches sont nombreuses telle que : l’extraction d’information,
question/réponse, la catégorisation des documents, la recherche et l’extraction d’information,
etc.

Donc, la catégorisation de texte est une instance de la fouille de texte qui cherche à
déterminer automatiquement la catégorie d'appartenance d'un texte entrant dans le système à
partir d'exemples déjà classifiés. Sa problématique est de générer un modèle capable
d’attribuer automatiquement un texte à une catégorie avec le plus grand taux de réussite
possible

Pour générer ce modèle on doit passer par un processus qui comporte 3 phases :, une
première qui va donner une représentation vectorielle des textes sélectionnés, la deuxième est
la phase de traitement où on va appliquer un algorithme de catégorisation pour générer notre
modèle et enfin ce processus va se terminer par une phase de test pour l’évaluer.

La majorité des chercheurs dans le domaine de catégorisation automatique des


documents, se trouvent confrontés à des obstacles durant le processus de catégorisation tels
que :
 La difficulté à exploiter des collections de textes volumineux et d’en extraire une
nouvelle connaissance.
 La difficulté à choisir l’algorithme de catégorisation le plus performant

Afin de palier à ces contraintes, nous avons jugé utile dans un premier temps, d’utiliser
les treillis de Galois dans le processus de catégorisation, et vu leur complexité exponentielle

107
nous avons, ensuite, cherché à trouver une solution à cette complexité en modélisant cette
structure par l’automate cellulaire CASI.

En exploitant ses divers avantages et services que propose l’automate cellulaire nous
sommes arrivés à construire un treillis de Galois cellulaire rapide dans sa phase de test, et
occupe mois d’espace mémoire.

Contribution

Dans le domaine médical, la complexité d’exprimer ou de prédire des maladies reste


une tache très difficile pour les experts du domaine, et pour les experts cogniticiens.

L’interprétation des phénomènes médicaux peut être de diverses façons et sous


différentes formes, c’est pour ce fait, que notre apport par l’approche qu’on propose s’est
avéré plus que nécessaire dans le domaine médical.

Nous avons proposé un système hybride LATTICE-CELL pour la catégorisation des


comptes rendus hospitaliers du service de pneumologie de l’établissement hospitalier d’Oran,
la réalisation de notre système a vu l’intervention de deux outils :

 Les treillis de Galois : qu’on a utilisés comme algorithme d’apprentissage ;

 L’automate cellulaire CASI : à partir de treillis de Galois, nous alimentons


l’automate CASI, qui grâce à ces modules nous à permis d’obtenir un nouveau
treillis cellulaire permettant de catégoriser avec un temps réduit le corpus
d’étude.

A partir des résultats de comparaisons obtenus pour le corpus de l’établissement


hospitaliers, nous avons pu montrer que notre système LATTICE-CELL donne de bons
résultats que d’autres algorithmes de catégorisation tell qu’ID3, NaiiveBays, les SVM et les
K-PPV en termes de mesures de performances (Exactitude, taux d’erreur et F-Mesure). Ces
résultats sont validés en utilisant d’autre corpus.

108
Les résultats de l’étude comparative et celle de la complexité prouvent non seulement
qu’on peut utiliser les treillis de Galois comme un outil d’extraction de connaissance ou dans
un processus de catégorisation de texte, mais encouragent également l’exploitation de la
nouvelle représentation booléenne des treillis afin de réduire la complexité de stockage ainsi
que le temps de réponse engendré par cette structure complexe.

Ainsi, l’automate cellulaire CASI offre un axe prometteur de recherche, en raison de sa


souplesse à s’intégrer et à intégrer certaines méthodes d’apprentissage, et sa facilité à
interpréter les résultats

Perspectives :
Nous terminons cette conclusion en proposant quelques perspectives de
recherche telles que la généralisation de la modélisation booléenne sur tous les algorithmes
de construction de treillis de Galois et la mise à l’éprouve du système LATTICE-CELL face
aux autres systèmes de classification basés sur les treillis de Galois.

Nous pouvons aussi aller plus loin en proposant la conception et l’implémentation du


système LATTICE-CELL 2 qui a comme but de modéliser toute la structure du treillis y
compris les liens entre les concepts pour en concevoir un système de recherche d’information
basé sur l’automate cellulaire. Nous pouvons aussi utiliser la modélisation booléenne pour
l’optimisation et la réduction des concepts redondants générés par les treillis.

109
Annexes
Annexe A
Galicia

Galicia est une plate-forme Java dédiée à l’Analyse Formelle de Concepts (AFC), [72].
Cette plate-forme est née sous l’impulsion de l’Université de Montréal. Elle a permis de
mettre en place une collaboration entre le LIRMM, l’Université de Montréal et l’Université
du Québec à Montréal dans le but de faire vivre cet outil. Mais depuis peu d’autres
laboratoires s’intéressent également à l’évolution d’une telle plate-forme et se sont donc tout
naturellement intégrés à la collaboration. Cette plate-forme permet l’étude des algorithmes
touchant à la manipulation des contextes formels et familles de contextes que l’on retrouve
dans l’AFC. Par exemple nous trouvons l’algorithme de Valtchev [71] que nous utilisons,
mais aussi divers algorithmes de construction de treillis de Galois. L’intérêt d’un tel outil est
de pouvoir comparer différents algorithmes mais aussi de pouvoir maîtriser le cycle de vie
complet du treillis (et de ses graphes dérivés). Ce cycle de vie comprend la récupération et la
préparation des données au travers d’une interface d’entrée/sortie puis de manipulation des
données, un ensemble d’algorithmes créant à partir de ces données un treillis de Galois ou un
graphe dérivé, une interface de visualisation du résultat mais aussi un moyen de maintenir le
graphe résultat grâce à des algorithmes de maintenance comme ARES.

La figure A.1 montre la fenêtre initiale de l’outil Galicia, elle permet d’ouvrir un fichier
qui stocke une famille de contextes afin d’éditer les relations présentes dans cette famille,
figure A.2, ou alors ouvrir un fichier qui stocke simplement un contexte binaire afin de
pouvoir également modifier les relations présentes dans ce contexte, figure A.3. Il est même
possible d’ouvrir directement un treillis à partir de la fenêtre d’invite. A partir de la fenêtre
d’édition il est possible de modifier les données mais aussi de pouvoir lancer différents
algorithmes, figure A.3 .Le résultat est la visualisation d’un graphe correspondant à un treillis
ou une SHG ou encore un treillis iceberg. La visualisation se fait soit en 2D, figure A.4, soit
en 3D, figure A.5.

111
L’outil de visualisation permet de placer automatiquement les sommets des graphes
suivant des algorithmes qui travaillent sur la tension et la répulsion des sommets et arêtes
ce qui n’empêche pas de pouvoir placer également manuellement les sommets d’un
graphe. Nous pouvons aussi visualiser sur chaque sommet les éléments contenus dans
l’extension et l’intension des concepts que représentent ces sommets.

Figure A.1 Fenêtre d’invite de Galicia

Figure A.2 Fenêtre d’édition d’une famille de contexte dans Galicia

112
Figure A.3 Fenêtre d’édition d’un contexte binaire dans Galicia

Figure A.4 Fenêtre de visualisation d’un graphe 2D dans Galicia

113
Figure A.5 Fenêtre de visualisation d’un graphe 3D dans Galicia

114
Annexe B
Environnement de développement

Aujourd’hui, le programmeur est confronté à la demande croissante de la part de


l’utilisateur pour l’obtention de logiciel qui utilise des interfaces conviviales. La qualité de
logiciel qui augmente à une allure inimaginable ne peut qu’encourager de telle exigence.
L’interface Windows constitue l’une des interfaces les plus utilisées, sans cesse en évolution
depuis 1985, elle s’impose aujourd’hui comme étant le principale standard sur le marché de la
micro-informatique en raison de son environnement ergonomique et de sa facilité d’utilisation
surtout avec ses nouvelles version XP professionnel, XP gold, XP Vista. Ainsi est venue la
décision de programmeur sous Windows pour la simplicité et les performances que nous
pouvons obtenir dans cet environnement.

Pourquoi Java et Jbuilder ?

Le langage Java est un langage de programmation informatique orienté objet. Java a la


particularité principale d’être portable, c’est à dire, que les logiciels écrits avec ce dernier sont
très facilement réutilisables sur plusieurs systèmes d’exploitation tels qu’UNIX, Microsoft
Windows, Mac OS ou Linux avec peu ou pas de modifications. C’est la plate-forme qui
garantit la portabilité des applications développées en Java.

Le langage reprend en grande partie la syntaxe du langage C++, très utilisé par les
informaticiens. Néanmoins, Java a été épurée des concepts du C++ et à la fois les plus
déroutants, tels que l’héritage multiple remplacé par l’implémentation des interfaces. Les
concepteurs ont privilégié l’approche orientée objet de sorte qu’en Java, tout est objet à
l’exception des types primitifs (nombres entiers, nombres à virgule flottante, ..., etc.).

Les raisons de notre choix pour Jbuilder X10 sont multiples, nous pouvons citer :

115
 Java est un langage interprété puisque la source est compilé en pseudo code ou byte
code puis exécuté par un interpréteur Java ”Java Virtual Machine (JVM)”.

 Son principe est WORA (Write Once Run Anywhere ; écrire une fois exécuter
parfois). En effet, le byte code, s’il ne contient pas de code spécifique à une plate-forme
particulière peut être exécuté et obtenir quasiment les mêmes résultats sur toutes les
machines disposant d’une JVM ;

 Plus ergonomique que les versions précédentes;

 JBuilderX augmente la vitesse de développement en Java. grâce aux fonctionnalités de


développement d’égal à égal (P2P), à Visual EJB, aux interfaces graphiques de services
Web et aux fonctionnalités Java 5 Enterprise. JBuilderX propose un environnement
graphique (fonctionnant par «glisser/déposer»), innovant et à haute productivité et des
fonctionnalités d’entreprise pour optimiser la gestion de projet;

 Il est doté, en standard, de bibliothèques de classes très riches comprenant la gestion


des interfaces graphiques (fenêtres, boîtes de dialogue, contrôles, graphisme), la
programmation multithreads (multitâches), la gestion des exceptions, les accès aux
fichiers et au réseau, etc...L’utilisation de ces bibliothèques facilite grandement la tache
du programmeur lors de la construction d’applications complexes;

 Compatibilité sous Windows Vista.

L’interface de l’application

116
1

Fenêtre principale

1. bouton pour accéder au classificateur LATTICE-CELL ;


2. bouton pour quitter l’application;

117
 Interface de Prétraitement

2
1

3
4

5 6

Interface de prétraitement dans LATTICE-CELL

1. Chargement du corpus des comptes rendus préparé dans le format ”.txt”;


2. Lancement de la tache de prétraitement;
3. Zone d’affichage des comptes rendus avant prétraitement;
4. Zone d’affichage des comptes rendus après prétraitement;
5. Barre de progression de la tache de prétraitement;
6. Lancement du calcule de l’index des termes;

118
 Interface d’apprentissage

4
5
6
2

Interface d’apprentissage dans LATTICE-CELL

1. Zone d’affichage de l’index de termes


2. Réduction du nombre des termes;
3. Lancement de l’apprentissage ;
4. Annulation de l’étape de réduction des termes;
5. Enregistrement de l’index;
6. Chargement d’un index ;

Une fois l’apprentissage est lancé par le bouton « OK », la figure B.1 de Galicia
s’affiche pour montrer l’exécution de l’algorithme d’apprentissage et la figure B.2 montre
la fenêtre de visualisation du treillis de Galois. ²

119
Figure B.1 Interface Galicia de construction du treillis de Galois

Figure B.2 Interface Galicia de visualisation du treillis de Galois

120
 Interface de catégorisation

5 4

Interface de catégorisation dans LATTICE-CELL

1. Modèle booléen de catégorisation « Celfact, Celrule, RE, RS »


2. Lancement de la tache de catégorisation;
3. Zone d’affichage des résultats de catégorisation des comptes rendus;
4. Sélection de mesure de similarité ;
5. Evaluation des résultats de catégorisation des comptes rendus ;

121
Références

Bibliographique
Références bibliographique

[1] Birkoff, G.: Lattice Theory, First Edition, Amer. Math. Soc. Pub. 25, Providence, R. I., 1940.

[2] Atmani, B. and Beldjilali, B: Knowledge Discovery in Database: Induction Graph and Cellular
Automaton, Computing and Informatics Journal, Vol.26, N°2 P: 171-197, 2007

[3] Joachims, T., and Sebastiani, F.: Guest editors introduction to the special issue on automated text
categorization. J. In tell. Inform. Syst., 18, 103–105. , 2002.

[4] Lewis, D. D., and Haues, P. J. Guest editorial for the special issue on text categorization. In:
ACM Trans. Inform System, 1994.

[5] Radwan Jalam. Apprentissage automatique et catégorisation de textes multilingues. PhD thesis,
Université Lumiére Lyon2, 2003.

[6] Feldman R, Dagan I., KDT- Knowledge discovery in textual databases , Proceedings of the first
annual conference on Knowledge Discovery and data mining (KDD), Montréal, Canada, 1995

[7] M. Hearst. Untangling Text Data Mining. In Proc of the 37th. Annual Meeting of the Association
for Computational Linguistics (ACL’99). University of Maryland, 1999.

[8] Kodratoff Y., Knowledge discovery in texts: A definition and application, dans Ras et Skowron
(dir.), Foundation of intelligent systems, Lecture notes in artificial intelligence, Springer- Verlag,
Berlin, n° 1609, 16 – 29, 1999

[9] M. Grobelnik, D. Mladenic and N. Milic-Frayling. Introduction. Dans Proc. of the workshop on
Text Mining, Boston, in conjunction with the 6th. Int’l Conf. on Knowledge Discovery and Data
Mining (KDD’00), 2000.

[10] Fidelia Ibekwe-SanJuan : Fouille de textes : méthodes outils et applications, Livre, ISBN : 978-
2-7462-1609-9, Edition Lavoisier, Paris, 2007

[11] Hacène, C: thèse pour obtenir le grade de docteur de l'université de Henri Poincaré- Nancy
1 : Etude et réalisation d’un système d’extraction de connaissances à partir de textes . Présentée
et soutenue publiquement le 15 Novembre 2004.

[12] Feldman R, Aumann Y., Zilberstein A., and Ben-Yehuda Y., Trends graph: visualizing the
evolution of concept relationships in large document collections. In J.M Zytkow et M. Quafafou
(dir.), Principles of datamining and Knowledge discovery, Proceedings of the 2nd European
symposium PKDD, Springer Verlag, Berlin, 38-46, 1998.

[13] Fabrizio S e b a s t i a n i : Machine L e a r n i n g i n A u t o m a t e d Text Categorization.ACM


Computing Surveys. Vol 34, pp 1-47. ISSN 0360-0300, 2002

[14] Sebastiani F., Text Categorization ,In Zanasi (dir.),Text Mining and its Applications to
Intelligence,CRM and Knowledge Management , WIT Press,109-129,2005.

123
[15] Grzegorz D: thèse pour obtenir le grade de Docteur de l'université de paris : Analyse des
sentiments: système autonome d’exploration des opinions exprimées dans les critiques
cinématographiques . Présentée et soutenue publiquement le 4 décembre 2008.

[16] Weiss S.M., Indurkhya N., Zhang T., Damerau F., Text Mining Predective methods for
analyzing unstructured information, Springer Verlag, New York, 2005.

[17] Réhel, Simon : Catégorisation automatique de textes et cooccurrence de mots provenant de


documents non étiquetés. Thèse. Maître ès sciences (M.Sc.). Université Laval
http://www.theses.ulaval.ca/2005/22376/22376.html

[18] G. Salton, A. Wong, C. S. Yang. A vector space model for automatic indexing. Communication
of the ACM, 18, 613-620, 1975.

[19] Sebastiani (F.) Caropreso (M.), Matwin (S.). A learner-independent evaluation of the use- fulness
of statistical phrases for automated text categorization. Pages 78 102, 2001.

[20] Julie Beth Lovins. Development of a stemming algorithm. Technical report, Mechanical
Translation and Computational Linguistics, 1968.

[21] M.F. Porter. An algorithm for suffix stripping. 14:130 137, 1980.

[22] M. Abdenour Mokrane. Représentation de collections de documents textuels : application à la


caractérisation thématique. PhD thesis, Université de Montpellier II, France, Novembre 2006.

[23] Gerard Salton and Christopher Buckley. Term weighting approaches in automatic text retrieval.
Information Processing & Management, 1987.

[24] Y. Yang and J.O. Pedersen. A comparative study on feature selection in text categorization. In
ICML-97, 14th International Conference on Machine Learning.

[25] George W.Furnas Thomas K. Landauer Scott Deerwester, T.Susan Dumais and Richard
Harshman. Indexing by latent semantic analysis. American Society of Information Science, 1990.

[26] M. Roche and Y. Kodratoff. Utilisation de LSA comme première étape pour la classification des
termes d'un corpus spécialisé. In Actes (CD-ROM) de la conférence MAJECSTIC' 03
(Manifestation des Jeunes Chercheurs dans le domaine STIC), 2003.

[27] A. M. Turing, 1950. Computing Machinery and Intelligence. Mind LIX (236), 433–460.1950

[28] Lewis D.D., Yang Y., Rose T.G., Li F., “RVC1: A new benchmark collection for Text
categorization research “, Journal of Machine Learning Research, n°5,361-397, 2004.

[29] Dreyfus G., Martinet J.M.,Samuelides M., Gordon M.,Badran F.,Thiria S.,Herault L.,Réseaux de
neurones ,méthodologie et applications ,Eyrolles ,Paris,2e édition ,2004.

[30] Krose B., Smagt P., An introduction to neural Networks, Cours en ligne, 8e edition, 1996

[31] Lipman R.P., an Introduction to computing with Neural Nets, IEEE ASSP Magazine, 4-22, 1987

[32] Hornik K., Stinchobre M., White H., Multilayer feedfrward networks are iniversal
approximators, Neural Networks, 2,359-366, 1989

124
[33] Torres –Moreno., J.- M, Apprentissage et généralisation par des réseaux de neurones : étude des
nouveaux algorithmes constructifs, Thèse Institut national Polytechnique de Grenoble (INPG),
1997

[34] Berson A., Smith S., Thearling K., An overiew of data Mining Techniques: Building Data Mining
Application for CRM, McGraw-Hill, New York, p.488,1999.

[35] Vapnik V.N., the Nature of Statistical Learning Theory, Springer Verlag, New York, 1995.

[36] Joachim T.,”Text Categorization with Support Vector Machine: Learning with many relevant
features “, European Conference on Machine Learning (ECML’98), Berlin, Allemagne ,137-
142,1998.

[37] Bellot P., Classification de documents et enrichissement de requêtes , dans M. Ihadjadene (dir.),
Méthodes avancées pour les systèmes de recherche d’informations, Hermes, Paris, 73-218-,2004.

[38] J. R. Quinlan. Induction of decision trees. Machine Learning, 1(1):81-106.

[39] J. R. Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufmann Publishers Inc., 1993.

[40] Engelbert Mephu Nguifo, Patrick Njiwoua. Treillis de concepts et classification supervisée,
Article 2004.

[41] Birkhoff G., Lattice Theory, American Mathematical Society, Providence, RI, 3rd édition, 1967.

[42] Barbut M., Monjardet B., Ordre et Classification, Hachette, Paris, 1970.

[43] Wille R., Restructuring Lattice Theory, RIVAL I., Ed., and Symposium on Ordered Sets,
University of Calgary, Boston, 1982, p. 445-470.

[44] WILLE R., Concept Lattices & Conceptual Knowledge Systems, Computer Mathematic Applied
vol. 23, n 6-9, p. 493-515, 1992.

[45] Guigues J., Duquenne V., Familles minimales d’implications informatives résultant d’un tableau
de données binaires, Mathématiques, Informatique et Sciences Humaines, vol. 24, n 95, p. 5-18.
1986

[46] Duquenne V., Latticial structures in data analysis, Theoretical Computer Science, vol. 217, n 2,
p. 407-436, 1999

[47] Ganter B., Attribute exploration with background knowledge , Theoretical Computer Science, vol.
217, n 2, 1999, p. 215-233.

[48] MITCHELL T., Generalization as Search , Artificial Intelligence, vol. 18, n 2, 1982, p. 203-226.

[49] Pasquier N., BASTIDE Y., TAOUIL R., LAKHAL L., Efficient mining of association rules using
closed itemsets lattices , Journal of Information Systems, vol. 24, n 1, 1999, p. 25-46.

[50] KOURIE D., OOSTHUIZEN G., Lattices in Machine Learning: Complexity Issues, Acta
Informatica, vol. 35, n 4, 1998, p. 269-292.

[51] GANASCIA J., CHARADE: A Rule System Learning System, IJCAI’87, Milan, Italy, 1987, p.
345-347.

125
[52] GANASCIA J., Induction Symbolique Numérique à partir de données, Chapitre CHARADE &
Fils : Evolutions, Applications et Extensions, CEPADUES, 2000, 23 pages, http : //www-
poleia.lip6.fr/ Ganascia/.

[53] Nizar Messai : Analyse de concepts formels guidée par des connaissances de domaine.
Application `a la découverte de ressources génomiques sur le Web. Thèse de doctorat. Chapitre 3,
2009.

[54] Dau, F. and Klinger, J. From Formal concept analysis to contextual logic. In [Ganter et al.
2005b], pages 81–100. 2005

[55] Davey, B. A. and Priestley, H. A. Introduction to Lattices and Order. Cambridge


Université Press, 2nd edition.2002.

[56] Guenoche, A. Construction du treillis de Galois d’une relation binaire. Mathématiques,


Informatique et Sciences Humaines, 28ème année(109) :41–53. 1990

[57] Guenoche and Mechelen, Guenoche, A. and Mechelen, I. V.. Galois approach to the
induction of concepts. In Mechelen, I. V., Hampton, J., Michalski, R., and Theuns, P.,
editors, Categories and Concepts. Theoretical Views and Inductive Data Analysis, pages 287–
308. Academic Press, London. 1993

[58] Chein, M. (1969). Algorithme de recherche des sous-matrices premières d’une matrice.
Bull. Math. Soc. Sci. Math. R.S. Roumanie, 13:21–25.

[59] Norris,E.M..An algorithm for computing the maximal rectangles in a binary relation. Revue
Romaine de Mathématiques Pures et Appliqués, 23(2):243–250.1978

[60] Ganter, B. (1984). Two basic algorithms in concept analysis. FB4-Preprint 831, Technische
Hochschule Darmstadt.

[61] Ganter, B. and Reuter, K: finding all closed sets: A general approach. Order, 8(3) :283–
290.1991

[62] Bordat, J.-P. Calcul pratique du treillis de Galois d’une correspondance. Mathématiques et
Sciences Humaines, 96 :31–47. 1986.

[63] [Kuznetsov, 1993] Kuznetsov, S. (1993). A fast algorithm for computing all intersections
of objects in a finite semi-lattice. Automatic Documentation and Mathematical
Linguistics, 27(5):11–21.

[64] Godin, R., Missaoui, R., and Alaoui, H. (1995c). Incremental Concept Formation
Algorithms Based on Galois (Concept) Lattices. Computational Intelligence, 11:246– 267.

[65] Carpineto, C. and Romano, G. A lattice conceptual clus-tering system and its application
to browsing retrieval. Machine Learning, 24(2):95122.1996.

[66] Carpineto,C. and Romano,G. Concept Data Analysis : Theory and Applications. John Wiley
& Sons.2004

[67] Nourine, L. and Raynaud, O. A fast algorithm for building lattices. Information
Processing Letters, 71(5-6) :199–204.1999

[68] Lindig, C. (2000). Fast concept analysis. In Stumme, G., editor, working with Conceptual

126
Structures - Contributions to ICCS 2000, Aachen, Germany.

[69]Stumme, G., Taouil, R., Bastide, Y., Pasquier, N., and Lakhal, L. Fast computation
of concept lat tices using dat a mini ng techniques . In [Bouzeghoub et al., 2000].

[70] Stumme, G., Taouil, R., Bastide, Y., Pasquier, N., and Lakhal, L. Computing iceberg concept
lattices with titanic. Data and Knowledge Engineering, 42(2):189– 222.2002.

[71] Valtchev, P. and Missaoui, R. Building concept (Galois) lattices from parts: Generalizing
the incremental methods. Pages 290–303.2001.

[72] Valtchev, P., Missaoui,R., and Lebrun,P. : Apartition-based approach towards


constructing Galois (concept) lattices. Discrete Math., 256(3):801–829, 2002.

[73] Der Merwe, D. V., Obiedkov, S. A., and Kourie, D. G. AddIntent: A New Incremental
Algorithm for Constructing Concept Lattices. In Eklund, P. W., editor, ICFCA
Concept Lattices, Second International Conference on Formal Concept Analysis, ICFCA
2004, Sydney, Australia, February 23-26, 2004, Proceedings, volume 2961, pages 372–385.
Springer, 2004.

[74] Kuznetsov, S. O. and Obiedkov, S. A. Comparing Performance of Algorithms for


Generating Concept Lattices. Journal of Experimental & Theoretical Artificial
Intelligence, 14:189–216. 2002.

[75] Godin, R., Mineau, G., and Missaoui, R. Incremental structuring of knowledge bases. In
Ellis, G., Levinson, R. A., Fall, A., and Dahl, V., editors, Proceedings of the 1st
International Symposium on Knowledge Retrieval, Use, and Storage for Efficiency
(KRUSE’95), Santa Cruz (CA), USA, pages 179193. Department of Computer Science,
University of California at Santa Cruz. 1995.

[76] Godin, R., Mineau, G. W., and Missaoui, R. Méthodes de classification conceptuelle
basées sur les treillis de Galois et applications. Revue d’intelligence artificielle, 9(2)
:105137. 1995.

[77] G. Oosthuizen. The Use of a Lattice in Knowledge Processing. PhD thesis,


University of Strathclyde, Glasgow, 1988.

[78] M. Liquière & E. Mephu Nguifo. L E G A L : L Ea rni ng wi t h G Al oi s Lat t i ce . In 5ièmes


Journées Françaises sur l’Apprentissage, pages 93-113, 1990.

[79] E. Mephu Nguifo : Une nouvell e approche basée sur l es treilli s de Galoi s pour
l’apprentissage de concepts. Mathématiques, Informatique et Sciences Humaines, 1993.

[80] C. Carpineto and G. Romano. G a l o i s : A n O r d e r - T h e o r i c A p p r o a c h t o


Conceptual Clustering. In Proceedings of ICML’93, pages 33–40, 1993.

[81] M. Sahami. Learning Classification Rules Using Lattices. In Proceedings of ECML’ 95, pages
343–346, 1995.

[82] M. Liquière & J. Sallantin. : Structural machine learning with Galois lattice and Graphs.
International Conference on Machine Learning, 1998.

[83] Engelbert Mephu Nguifo and Patrick Njiwoua: Using Lattice-Based Frame-work as a Tool for
Feature Extraction. In European Conference on Machine Learning, pages 304-309, 1998.

127
[84] Benfriha H; Barigou F; Atmani B: LATTICE-CELL: approche hybride pour la catégorisation des
comptes rendus hospitaliers; The 1st International Conference on Information system and
technologies In Tebessa ISBN: 978-9931-9004-0-5–ICIST’2011-

[85] Bruno Pouliquen : NOMINDEX : thèse pour obtenir le grade de Docteur de l'université
Rennes I,: Indexation de textes médicaux par extraction de concepts, et ses utilisations .
Présentée et soutenue publiquement le 7 juin 2002

[86] Nakache ; D : Extraction automatique des diagnostics à partir des comptes rendus médicaux
textuels, Thèse pour obtenir le grade de Docteur au conservatoire National des Arts et
Métiers, 2007

[87] Géraldine. P: Une mesure de similarité contextuelle pour l'aide à la navigation dans un treillis
article 2008.

[88] Oulad Haj Thami, GENERIC: un système pour la recherche d’image basée sur les attributs
visuels et les connaissances. Article 2002.

[89] Messai, N : Treillis de Galois et ontologie pour l’interrogation d’un annuaire de source de
données biologiques (BioRegistry). Article 2004.

[90] Cyril Grouin, Béatrice Arnulphy, Jean-Baptiste Berthelin, Sarra El Ayari, Anne García
Fernandez, Arnaud Grappy, Martine Hurault-Plantet, Patrick Paroubek, Isabelle Robba et
Pierreweigenbaum : Présentation de l’édition 2009 du Défi Fouille de Textes. (DEFT’09),
LIMSI–CNRSbBP 133 – F-91403 Orsay Cedex URL :
http://www.limsi.fr/Individu/jbb/biblio.html

128
Résumé :

La catégorisation de texte représente un problème de classification supervisée à partir


de textes : il s’agit d’apprendre à une machine de classer un texte dans la bonne catégorie en
ce basant sur son contenu. Face à l’accroissement de l’information disponible en line, la
catégorisation automatique des textes s’impose de plus en plus comme une technologie clé
dans la recherche et l’extraction d’information. Cette tache permet d’accélérer, cibler et
améliorer la recherche d’information. Parmi les différentes approches de la classification
proposées dans la littérature pour la catégorisation de textes, on distingue principalement
l’approche symbolique et l’approche numérique.

Notre contribution dans ce domaine concerne la proposition d’une nouvelle approche


de catégorisation de textes par l’utilisation conjointe de treillis de Galois et des automates
cellulaires afin de réduire la complexité de stockage et le temps de calcul engendrés par les
treillis.

Mots clés : Apprentissage par induction, catégorisation des textes, treillis de Galois,
machine cellulaire CASI, modélisation booléenne.

Vous aimerez peut-être aussi