• Aucun résultat trouvé

Extraction de Topics et d’associations à partir d’un document

4.2 Construction incrémentale de la Topic Map

4.2.1 Extraction de Topics et d’associations à partir d’un document

L‟objectif de cette phase est d‟extraire des Topics et des associations entre ces Topics à

partir d‟un document du référentiel. Comme mentionné dans notre méta-modèle de Topic

Map, les associations que nous souhaitons extraire correspondent aux liens ontologiques et

structurels (lien « est un », lien « partie de ») et aux liens sémantiques associés au domaine de

la Topic Map. Pour cela, nous nous appuyons, dans un premier temps, sur les résultats de la

segmentation thématique avec l‟algorithme TextTiling et de l‟indexation sémantique avec la

méthode LSI appliqués aux documents du référentiel pour l‟extraction de Topics. Dans un

second temps, nous proposons d‟ajouter des liens ontologiques et associatifs entre les Topics

extraits en utilisant plusieurs techniques que nous explicitons dans ce qui suit.

Nous commençons tout d‟abord par présenter l‟algorithme général que nous proposons

permettant d‟identifier les Topics et les liens entre eux, ensuite nous détaillons ses différentes

étapes.

Cet algorithme se résume en ce qui suit :

Entrées : Document di indexé et segmenté du référentiel, Matrice LSI termes et concepts/contextes

pondérée avec contexte document ou segment.

Sortie : Topic Map construite à partir du document di

Pour chaque terme ti et concept ci indexant le document et ses segments résultant de la matrice LSI

faire

1) Ajouter un nouveau Topic Ti correspondant à ce terme (ou concept) dans les deux langues.

2) Placer Ti dans la Topic Map

{ajouter un lien ontologique entre Ti et T avec Ti {Topics extraits de

documents}

Et T {Topics thèmes des segments}

3) Ajouter les liens occurrences pondérés avec les tf×idf (dans le cas où le Topic correspond à un terme) et tof×idf (dans le cas où le Topic correspond

à un concept) reliant chaque Topic Ti aux documents et aux segments à partir

desquels il est extrait Fin pour

Valider la Topic Map par des experts du domaine

1) Préciser la sémantique de certains liens

141

4.2.1.1 Extraction de Topics

Le référentiel de documents contient pour chaque document, la liste des segments

thématiques présents dans ce document et pour chaque segment et document, la liste des

termes et des concepts représentatifs de leurs contenus.

La segmentation thématique des documents avec TextTiling produit pour chaque

document, un ensemble de segments thématiquement homogènes et l‟application de la

méthode LSI sur les documents et leurs segments produit une matrice terme et

concepts/contexte, le contexte peut être un document ou un segment et donne pour chaque

document et pour chaque segment la liste des termes et des concepts pertinents avec leurs

poids respectifs tf×idf et tof×idf.

La figure 4.12 illustre l‟utilisation de la matrice termes et concepts/contextes de LSI

pour l‟identification des Topics avec leurs poids respectifs.

Figure 4.12 Utilisation de la matrice termes et concepts/contexte de LSI pour la construction

de la Topic Map

A ce stade, la Topic Map résultante ne contient que des Topics correspondant aux

concepts et aux termes indexant le document et ses segments, en se basant sur le méta-modèle

de Topic Map que nous avons définit dans le chapitre précédent, ces Topics ajoutés peuvent

être des Topics thèmes, des Topics concepts du domaine, des sous Topics, des instances de

Topics. Il s‟agit maintenant de relier ces Topics entre eux et de les organiser, ce ci revient à

ajouter des liens ontologiques (est un, partie de) et des liens associatifs (relatifs au domaine)

entre ces Topics.

142

4.2.1.2 Ajout des liens ontologiques et associatifs

L‟objectif de cette étape est d‟ajouter les liens structurels et associatifs entre les Topics

présents dans la Topic Map.

Le résultat de la segmentation de l‟algorithme TextTiling appliquée à notre corpus,

produit, pour chaque document, un ensemble de segments thématiques où chacun représente

un thème majeur et éventuellement un ou plusieurs thèmes mineurs. Par conséquent, notre

problème revient à trouver quel type de lien il y a entre un Topic thème d’un segment et un

Topic du document.

Plus précisément, nous définissons les Topics thèmes comme l‟ensemble des concepts

les plus représentatifs du contenu d‟un segment (ayant les tof×idf le plus élevés), pour cela

nous avons fixé un seuil pour la valeur de tof×idf indiquant les concepts choisis comme

Topics thèmes. Par exemple les concepts ayant un tof×idf > 0,8 dans le segment sont

considérés comme des Topics thèmes puisqu‟ils représentent le plus le contenu du segment.

Ces Topics thèmes sont, bien évidement, reliés aux Topics extraits à partir du document

(à partir duquel on a obtenu le segment), ces liens peuvent être des liens de type « est un »

(figure 4.13), « partie de » (figure 4.14) ou bien d‟autres liens sémantiques tels que « est traité

par », « est relié à », etc.

Document sur les effets sur la santé du chauffage au bois

Segment thématique 1 sur les nausées

Segment thématique 2 sur l'irritation du sytème

respiratoire

Segment thématique j sur les bronchites

effets sur la santé

nausées irritation du sytème respiratoire bronchites est un est un est un Topic Map Base de documents Topic

Figure 4.13 Ajout d‟un lien « est un » entre le Topic extrait du document et les Topics thèmes

dans le document

143

Document sur les chaudières

Segment thématique 1 sur les bruleurs de chaudière

Segment thématique 2 sur les reservoirs de chaudières chaudière bruleur de chaudière réservoir de chaudière partie de partie de Topic Map Base de documents Topic

Figure 4.14 Ajout d‟un lien « partie de » entre le Topic extrait du document et les Topics

thèmes dans le document

Pour résoudre ce problème d‟ajout de liens entre Topics, plusieurs solutions ont été

proposées dans la littérature, en effet, c‟est un problème très ancien, il a été longuement traité

en particulier dans le contexte de construction et d‟enrichissement d‟ontologies à partir de

textes où il existe plusieurs méthodes de détection de relations entre les concepts d‟une

ontologie.

Dans le cadre de notre travail, nous proposons de combiner certaines des solutions

existantes pour trouver le lien entre un Topic thème d‟un segment et un Topic extrait du

document. Notre démarche inclut les alternatives qui seront détaillées dans la suite.

Nous procédons, en premier lieu, à une analyse du langage naturel pour chercher s'il

y a un lien de type « est un » ou un lien « partie de » entre le Topic du segment et le Topic du

document. Nous pouvons parfois le trouver dans les phrases du document, il s‟agit de

chercher s'il y a des phrases avec le verbe être par exemple : « une chaudière à bois est une

chaudière … », ou des phrases avec « avoir », ou « est composé de », par exemple « une

chaudière est composée d‟un bruleur et d‟un réservoir … » ;

Il existe plusieurs outils et plateformes pour l‟extraction des termes et des relations à

partir de documents texte, Dans le cadre de notre travail, notre choix s‟est porté sur la

plate-forme GATE qui a l‟avantage de proposer une solution générique pour le traitement

linguistique des documents textuels à travers un ensemble de modules paramétrables. Ces

modules peuvent être combinés, enrichis et adaptés selon nos besoins. GATE propose un

module appelé gazetter, pour la reconnaissance d‟entités nommées à partir de dictionnaires

préétablis. Ces dictionnaires peuvent être enrichis avec les termes du domaine étudié. De

144

plus, GATE nous donne la possibilité d‟intégrer une ressource externe représentée par le

thésaurus du domaine pour construire la hiérarchie de Topics et ajouter d‟autres liens

ontologiques dans la Topic Map. Cette étape d‟enrichissement à partir du thésaurus sera

discutée dans la prochaine section ;

La deuxième solution consiste à rechercher une première structure de liens « est un »

par un moteur de recherche tel que Google, par exemple, si on lance une recherche

automatique sur Internet et on saisit la phrase suivante « la pompe à chaleur est un

équipement de chauffage » alors on aura de nombreuses réponses et d‟autres renseignements

tels que les types de pompe à chaleur, les performances, le coût d‟installation, ou bien des

adjectifs (exemple : la pompe à chaleur est un équipement de chauffage géothermique) alors

que si on lance la recherche de cette phrase : « un panneau solaire est une maladie », dans ce

cas, on n‟aura aucun résultat.

Nous pouvons également rechercher d‟autres liens, par moteur de recherche, tels que les

liens « réalisé par », « est composé de ».

Une dernière alternative consiste à utiliser notre algorithme [Lammari et Métais, 2004]

fondé sur les contraintes d‟existence mutuelles, exclusives et conditionnelles.

Le principe de cet algorithme est le suivant : compte tenu d‟un ensemble de contraintes

entre les mots clés décrivant des concepts, nous déduisons une hiérarchie de concepts. Trois

types de contraintes sont définis : contraintes d‟existence mutuelles, exclusives et

conditionnelles [Lammari et al. 2008]. Une contrainte d‟existence mutuelle, définie entre

deux mots clés x et y d‟un concept c, dénotée par

,

décrit le fait que chaque instance

associée au concept c peut être décrite simultanément par les mots clés x et y. La contrainte

d‟existence exclusive, définie entre deux mots clés x et y d‟un concept c, dénotée ,

décrit de fait que chaque instance associée au concept c décrite par le mot clé x, ne peut pas

être décrite par le mot clé y et inversement. Enfin, la contrainte d‟existence conditionnelle,

dénotée introduit le fait que chaque instance du concept c décrite par le mot clé x doit

être aussi décrite par le mot clé y (l‟inverse n‟est pas toujours vrai). Nous utiliserons

également ces contraintes dans l‟étape d‟enrichissement de la Topic Map à partir du thésaurus

qui sera détaillée dans la prochaine section.

Nous commençons dans un premier temps par découvrir les mots clés caractérisant les

deux Topics et par la suite regarder s‟il y a inclusion entre eux. Pour la recherche de mots clés

caractérisant un Topic, plusieurs solutions peuvent être adoptées :

145

a) Effectuer une recherche automatique en utilisant un moteur de recherche sur

internet ;

b) Utiliser une méthode statistique des mots associés dans les documents par

exemple : Recherche des documents sur « chauffage », génération de la matrice

d'occurrence des termes de ces documents, et sélection des termes les plus

fréquents (pompe à chaleur, pollution, économie d‟énergie, etc.). Ces termes

peuvent être des mots clés ou des Topics reliés sémantiquement au Topic

« chauffage » ;

c) Compléter cette recherche par une analyse linguistique des documents avec les

phrases « a », « possède », etc, en utilisant un outil ou une plateforme d‟analyse

du langage naturel tel que GATE.

A partir d'une liste de mots clés, il existe des techniques pour créer la hiérarchie «

Is-A » entre les Topics par exemple les treillis de Galois qui se basent sur un regroupement

conceptuel des données ayant des propriétés communes. Pour notre cas, nous utilisons les

contraintes d‟existence mutuelles, exclusives et conditionnelles citées précédemment pour

voir s‟il y a inclusion entre les Topics et les algorithmes d‟extraction, de normalisation et de

translation proposés par [Lammari et Métais, 2004] pour la création des hiérarchies « Is-A »,

la figure 4.15 illustre un exemple d‟application de ces algorithmes :

Figure 4.15 Exemple de construction d‟une hiérarchie « est un » en utilisant des mots clés

communs entre Topics

146

Si après toutes les alternatives citées précédemment, nous ne trouvons pas le type de

lien recherché alors dans ce cas nous décidons d‟appeler le lien « relié à » entre le Topic

thème du segment et le Topic du document puisque cette notation est générale et pourrait

convenir à n‟importe quelle situation (figure 4.16).

Document sur le chauffage au bois résidentiel

Segment thématique 1 sur les effets sur la santé du

chauffage au bois

Segment thématique 2 sur l'éfficacité du chauffage au

bois

Segment thématique i sur les normes du chauffage au

bois

Chauffage au bois résidentiel

Effets sur la santé

efficacité Normes Problème de définition de ces liens relié à relié à relié à Topic Map Base de documents Topic

Figure 4.16 Ajout d‟un lien « relié à » entre le Topic extrait du document et les Topics thèmes

dans le document

Dans la Topic Map générée à partir du document, les Topics peuvent être des Topics de

premier niveau, par exemple les Topics thèmes, ou bien des Topics de deuxième niveau

c'est-à-dire un sous Topic ou une instance de Topic ou bien un synonyme d‟un Topic existant.

Comme nous l‟avons présenté dans notre méta-modèle, cette information est

sauvegardée dans une méta-propriété du Topic, indiquant le niveau auquel il appartient dans

la Topic Map, nous avons également défini une autre méta-propriété du Topic, qui est sa note,

qui renseigne sur son usage et son importance dans la Topic Map. Ces deux méta-propriétés

seront utilisées dans l‟étape d‟élagage de la Topic Map qui fera l‟objet du chapitre suivant.

4.2.1.3 Ajout des liens d’occurrences

Le but de cette phase est l’ajout des liens occurrences entre les Topics et leurs

ressources. Pour cela, nous explorons la matrice générée par la combinaison de LSI et

TextTiling comme le montre la figure 4.12 et nous relions automatiquement chaque

nouveau Topic ajouté aux documents et aux segments à partir desquels il est extrait par des

147

les documents et les segments par ordre de pertinence dans le cas où plusieurs documents sont

reliés à un même Topic.

Concrètement, cette mesure est un attribut dans la facette, en plus des autres attributs

langue, type, taille et date du document, liée à l‟occurrence et permettant de décrire le

document, nous détaillerons la notion de facette et son utilisation pour notre cas dans le

dernier paragraphe de cette section « Annotation de la Topic Map enrichie à partir des

documents et de leurs segments ».

La figure 4.17 illustre un exemple de construction d‟une Topic Map à partir d‟un

document du référentiel :

Figure 4.17 Exemple de Topic Map construite à partir d‟un document du référentiel

Pour enrichir la Topic Map, nous proposons d‟utiliser le thésaurus du domaine pour

ajouter d‟autres liens ontologiques, de type « est un » ou « partie de » ou bien des liens de

synonymie entre deux Topics ou encore des synonymes de Topics dans une langue différente

que celle qui existe déjà dans la Topic Map.

4.2.2 Enrichissement de la Topic Map par des liens ontologiques à partir