Upload
remi-papin
View
104
Download
0
Embed Size (px)
Citation preview
Classification automatique de
documents XML : le système Semistix
Alexandre Termier
Marie-Christine Rousset
Michèle Sebag
Séminaire du 23/01/2001
Université de Paris Sud - Orsay
2
XML
Données semi-structuréesModèle d’arbres (XML)Langages de requêtes: Lorel, XQL, XSL…select <tree> from <pattern tree> where <filter>
<painting country="Espagne"><painter> Picasso <work date="1937"> Guernica <description> the bombing of the town... </description> </work></painter>The Prado museum....
3
Un scénario possible
> art, peinture
- GuernicaPrado
- La FenêtreAntibes
- Guitare ...
Picasso 1937
Art
Peinture
Oeuvre
Titre Artiste Date Musée
4
Xylème• But du projet : stocker et permettre
des recherches sur TOUS les documents XML du Web (~800 millions dans 2 ans)
• Projet ambitieux– INRIA Verso
– Université de Manheim
– LRI groupes IASI et IHM
• Regroupement des documents en domaines, stockés sur la même unité physique (Logical Clusters)
– recherche plus rapide
– recherche plus précise
5
Architecture de Xylème
Repository and Index Manager
Change Control
Query Processor
Semantics
User Interface
Xyleme Interface
Acquisition& Crawler
-------------------- I N T E R N E T -----------------
Web Interface
Loader
6
Buts de l’approche
• A partir d’un ensemble de documents XML (ou autres), trouver automatiquement les classes permettant de les regrouper en domaines
• Donner automatiquement un label aux domaines obtenus, permettant d’identifier ces domaines
7
Plan
• Les algorithmes existants et leurs limites
• Notre approche
• Résultats expérimentaux
• Conclusion et perspectives
8
L’existant• Classification non supervisée :
nombreux algorithmes• Principe : comparer les données pour
regrouper ensemble les plus similaires dans leur contenu
• En général pas de labels• Problèmes à résoudre :
– gestion du bruit
– gestion de la quantité de données
9
Limites de l’existant (1/2)
• Documents = vecteurs de mots• mots différents sens différents
– similarité entre vecteurs = 0
– pourtant les documents n’utilisent que des synonymes
Doc 1 Doc 2
Auteur X
Ecrivain X
Livre X
Ouvrage X
10
Limites de l’existant (2/2)
• Tous les mots relatifs à un sujet ne sont pas en même temps dans un document, mais en général un mot fait le lien (transitivité)
Doc 1 Doc 2 Doc 3 Doc 4
Gène X X X
ADN X X
Cellule X X
Clou X
• Documents : données particulières, plusieurs problèmes à régler
– comment voir que Doc 3 est plus proche de Doc 1 et 2 que Doc 4 ?
11
Notre approche (1/2)• Combiner plusieurs outils et
techniques
• WordNet : thésaurus informatisé, fournit les synonymes (synsets)
• Latent Semantic Analysis (LSA) : analyse statistique, trouve "transitivités" (similarités entre mots)
• Classification Hiérarchique Ascendante (CHA) : regroupe les données grâce à une mesure de similarité
12
Notre approche (2/2)
• Regrouper ensemble des mots en Unités de Sens (US)– ex : auteur, écrivain , compositeur, titre,
date
• Reformuler les documents en fonction de ces unités de sens, et appliquer un algorithme de classification sur les documents reformulés– #US << #mots : passage à l’échelle– réduction du bruit– rapprochement des documents similaires
13
Regroupement à l’aide des unités de sens (1/2)
Algorithme à 2 étapes :– création unités de sens– regroupement des documents
14
Regroupement à l’aide des unités de sens (2/2)
Regroupement des documents– Créer une matrice documents x unités de sens
(plusieurs méthodes)
– En déduire une matrice de similarité entre documents (cosinus)
– Faire une classification hiérarchique sur cette matrice
US 1 US M
Doc 1 1 0
Doc N 0 0
15
Classification Hiérarchique Ascendante
D1 D2 D3 D4 D5 D6 D7
Seuil fixé pour l’arrêt de la classification
16
Création des unités de sens (1/3)
• Filtrer les mots des documents : Zipf Law
• Déterminer la liste des synsets WordNet (désambiguation du sens) – chaque mot fournit un ou plusieurs synsets
– ne sont gardés que ceux contenant au moins un autre mot apparaissant dans les documents
• Calculer une matrice de similarité entre synsets avec LSA
Fmax
Fmin
17
Création de la matrice de similarités entre synsets
(2/3)Couple de mots (i, j)
{
Synsets de i
Synsets de j
Similarité LSA de (i,j)
#synsets(i) #synsets(j)Ajouter :
18
Création des unités de sens (3/3)
• Avec la matrice de similarité : regroupement des synsets par Classification Hiérarchique Ascendante (CHA)
• Quand arrêter de regrouper des clusters ?soit cover(C) = #docs contenant mots des
synsets du cluster C
on ne regroupe plus C1 et C2 si :
cover(C1 C2)
cover(C1) seuil
cover(C1 C2)
cover(C2) seuilou
19
Protocole de test
• Programmes implémentés en C++
• 2 corpus– Documents XML trouvés par le crawler
de Xylème, nombre : environ 2000
– Corpus Reuters-21578, dépêches de l’agence Reuters, nombre : 21578
• Mesures– sur les données de Xylème, difficile de
faire des mesures de qualité : évaluation subjective
– sur Reuters : corpus de classification, donc mesure de la qualité de la mesure de "distance" entre documents fournie par notre système
20
Données de Xylème
• XML : documents spéciaux = Document Type Definitions (DTD), grammaires des autres documents
<!-- DTD Astronomie -->
<!ELEMENT ObjetStellaire (Planète | Étoile)>
<!ELEMENT Étoile EMPTY>
<!ATTLIST Étoile
classe CDATA
rayon CDATA >
<!ELEMENT Planète EMPTY>
<!ATTLIST Planète
habitée CDATA
rayon CDATA >
• Regroupement effectué sur DTDs, classes finales contiennent en plus les documents XML les instanciant
• C’est sur les attributs et les éléments de ces DTDs que nous allons travailler
21
Résultats sur Xylème
• Système trouve 200 clusters
• grain des clusters assez fin
• Evaluation difficile, observation indique que les clusters semblent bons (retrouve doublons, docs d’un même site)
• Récemment, classification humaine : 4 clusters, mais très généraux (business, people,...) à utiliser pour des évaluations
ultérieures
22
Résultats sur Reuters
• Semistix (4000 mots, 634 US)– 1-NN : 77,8 %
– 20-NN : 83,1 %
• Semistix avec US étendues (800 US)– 1-NN : 81,1 %
– 20-NN : 86 %
• LSA (sur les 44000 mots)– 1-NN : 97,8 %
– 20-NN : 97 %
• cosinus sur les vecteurs d’occurrence– 1-NN : 96 %
– 20-NN : 95,6 %
23
Labels et US
• .US obtenues : certaines sont très pertinentes– {dna, aa}
– {chromosome, gene, clone, plasmid, journal, organism}
– ensembles de tags HTML
• D’autres le sont moins, mais certains tests nous permettent de croire qu’avec une intervention humaine cela peut s’améliorer.
24
Problèmes à résoudre
• Réglages délicats– programme conçu pour pouvoir
changer facilement les réglages
• Bonne qualité des US importante, processus de création à perfectionner– tenir compte des forces des liens des
synsets au sein de l’US, pour avoir une réecriture plus fine
– partir des vecteurs propres de LSA
– s’aider du Web pour valider les US
25
Conclusion
• Système présenté = combinaison de techniques orthogonales
• Résultats encore un peu justes, mais plusieurs pistes possibles pour les améliorer
• Valeur ajoutée des US : réutilisables– labels, DTD abstraite
– mise à jour
– mappings
• Améliorations possibles– parallélisable
– techniques d’apprentissage pour les réglages