22
XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation Journée Atala « Articuler les traitements sur corpus » 12/2/05 – Sylvain Loiseau (UMR 7114 Modyco)

XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

  • Upload
    pearl

  • View
    38

  • Download
    1

Embed Size (px)

DESCRIPTION

XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation. Journée Atala « Articuler les traitements sur corpus » 12/2/05 – Sylvain Loiseau (UMR 7114 Modyco). I. Deux avantages d’XML. Cumuler des annotations hétérogènes Quantifier les informations annotées. - PowerPoint PPT Presentation

Citation preview

Page 1: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

XML comme format cumulatif : décrire la solidarité de différents

niveaux d'annotation

Journée Atala « Articuler les traitements sur corpus » 12/2/05 – Sylvain Loiseau (UMR 7114 Modyco)

Page 2: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

I. Deux avantages d’XML

Cumuler des annotations hétérogènes

Quantifier les informations annotées

Page 3: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

<TEI.2> <teiHeader> <!-- [...] --> </teiHeader> <text> <body> <lg> <l>C'est un trou de verdure où chante une rivière</l> <l>Accrochant follement aux herbes des haillons</l> <l>D'argent ; où le soleil, de la montagne fière,</l> <l>Luit : c'est un petit val qui mousse de rayons.</l> </lg> <lg> <l>Un soldat jeune, bouche ouverte, tête nue,</l> <l>Et la nuque baignant dans le frais cresson bleu,</l> <l>Dort ; il est étendu dans l'herbe, sous la nue,</l> <l>Pâle dans son lit vert où la lumière pleut.</l> </lg> <lg> <l>Les pieds dans les glaïeuls, il dort. Souriant comme</l> <l>Sourirait un enfant malade, il fait un somme :</l> <l>Nature, berce-le chaudement : il a froid.</l> </lg> <lg> <l>Les parfums ne font pas frissonner sa narine ;</l> <l>Il dort dans le soleil, la main sur sa poitrine</l> <l>Tranquille. Il a deux trous rouges au côté droit.</l> </lg> </body> </text></TEI.2>

Hétérogénéité sémiotique des annotations

Un encodage TEI minimal…TEI.2

textteiHeader

body

lg

l

C’est un trou de verdure [...]

[...] [...]

[...]

[...]

Page 4: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

<lg type="quatrain" rhyme='ABAB' ana="riche"> <l ana="f"> <sy>C'est</sy> <sy>un</sy> <sy>trou</sy> <sy>de</sy> <sy>ver</sy><sy>dure</sy><caesura/>

<caesura /> <sy>où</sy> <sy>chante</sy> <sy>u</sy><sy>ne</sy> <sy>ri</sy><sy ana="synérèse">vière</sy> </l> <l ana="m">Accrochant follement aux herbes des haillons</l> <l ana="f">D'argent ; où le soleil,<caesura/>de la montagne fière,</l> <l ana="m">Luit : c'est un petit val<caesura/>qui mousse de rayons.</l></lg>

encodage « poétique »TEI.2

textteiHeader

body

lg

l

[...] [...]

[...]type = quatrain

[...]

ana = f sy

C’est

[...] caesura

ana = caesura

[...]

Note : pour assurer l’évolutivité de l’encodage, ne jamais mettre de « signifiant » dans une valeur d’attribut :

TEI P 4 :<sic corr="bon">bof</sic>

(impossibilité de découper en phonèmes)

TEI P 5 :<choice><corr>bon</corr><sic>bof</sic></choice>

Page 5: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

<l ana="f"> <s t="start" n="1"/ ><cl t="start" n="-1" ana="Principale"/ > <w n="1" lm="ce" ana="pos.pro ty.dem ass.d cat.s" ln="2"></w><sy>C' <w n="2" lm="être" ana="pos.v ty.main m.ind t.p nbr.s p.3" ln="3"></w>est</sy> <w n="3" lm="un" ana="pos.d ty.art fin.i g.m nbr.s" ln="2"></w><sy>un</sy> <w n="4" lm="trou" ana="pos.n ty.c g.m nbr.s" ln="4"></w><sy>trou</sy> <w n="5" lm="de" ana="pos.pre" ln="2"></w><sy>de</sy> <w n="6" lm="verdure" ana="pos.n ty.c g.f nbr.s" ln="7"></w><sy>ver</sy><sy>dure</sy> <cl t="end" /> <caesura /> <cl t="start" ana="Relative" /> <w n="7" lm="où" ana="pos.pro ty.rel" ln="2"></w><sy>où</sy> <w n="8" lm="chanter" ana="pos.v ty.main m.ind t.p nbr.s p.3" ln="6"></w><sy>chante</sy> <w n="9" lm="un" ana="pos.d ty.art fin.i g.f nbr.s" ln="3"></w><sy>u<sy></sy>ne</sy> <w n="10" lm="rivière" ana="pos.n ty.c g.f nbr.s" ln="7"></w><sy>ri</sy> <sy ana="synérèse">vière</sy></l>

encodage morphosyntaxiquel

ana = f

sy

C’est

caesura

ana = caesura

[...]

s cl

t = start

[...] [...]

w

lm = ce ana

pos.pro pos.pro

w

lm = ce ana

pos.v ty.main

Page 6: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

On peut sans doute dessiner de nombreux arbres de ce type [graphique] pour décrire la structure de cette anthologie. Certains de ces arbres peuvent être représentés comme une division supplémentaire dans l'arbre : par exemple, on peut diviser une ligne en mots, puisque aucun mot ne franchi la frontière du vers. C'est peut être étonnant, mais cette vue grossière et simplifiée de ce qu'est un texte (auquel Renear et al. on donné le nom de "Hiérarchie ordonnée d’unités de contenu" [?] (OHCO) [ordered hierarchy of content objects]) se révèle être très adaptée à la majorité des situations.

Arborescence du format ou des données ?

http://www.tei-c.org/P4X/SG.html

Page 7: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Cumuler des annotations : bilan

• Exploiter l’expressivité du format– Evolutivité de la structure

• Dans le temps de l’interprétation d’un corpus ou dans le temps plus long de sa conservation

– Exprimer des structures concurrentes• Ex. : cumuler plusieurs annotations morphosyntaxiques

– les comparer, utiliser le meilleur de chacune d’elles, etc.

– Diversité qualitative des annotations• Systèmes sémiotiques différents

– Encodage phonétique, syntaxique, morphologique, sémantique, etc.• Signifié ou signifiant

– Diversité du statut des annotations• De la désambiguïsation à l’interprétation• « méta-données » ou données• Typage des données (XQuery) ?

Page 8: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Quantifier les annotations (1) L’infoset XML

• On peut définir XML de deux façons : – Par son format textuel (tel caractère est interdit à tel endroit…)– Par l’arborescence formelle que ce format textuel représente : les

différents nœuds, leur caractéristiques, etc. ; c’est l’infoset.• Info-set = définition du format de données, de l’information

qu’il modélise– XML est un format arborescent contenant sept types de noeuds– Seuls les nœuds de type « éléments » sont non terminaux– Deux nœuds textes ne peuvent pas être adjacents– Un nœud attribut contient du PCDATA, des NMTOKENS, ou, etc.– L’ordre des éléments est signifiant (= un parseur le restituera)– L’ordre des attributs n’est pas signifiant– Etc…

• XML Information Set (Second Edition) : http://www.w3.org/TR/2004/REC-xml-infoset-20040204/

Page 9: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Quantifier les annotations (2)

• Avantages du format– Tout ce qui est un élément de l’arborescence

(exprimé dans l’infoset) est « homologué »• Peut être mélangé dans les critères de requêtes• Facilités offertes par les standards connexes à

XML pour les requêtes et les quantifications

• Appliquer de (mauvais ?) traitements quantitatifs à des documents « narratifs »

• …XML n’est qu’une conjoncture favorable

Page 10: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

II. Outillage

Page 11: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Objectif de l’outillage

• Deux principales tâches :– Fusionner les annotations d’outils tiers avec

un corpus en XML– Extraire des quantifications à partir du corpus

• S’insérer entre les outils linguistiques (d’enrichissement) et les outils statistiques (d’exploitation)

Page 12: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Fusionner des annotations (1)

• Extraction d’un fichier texte avec XSLT– Annotation de ce fichier texte avec Cordial

• Alignement du corpus encodé original et de l’annotation de Cordial

C' ce Pd-..nest être Vmip3sun un Da-ms-itrou trou Ncmsde de Spverdure verdure Ncfsoù où Ptr-..-chante chanter Vmip3sune un Da-fs-irivière rivière Ncfs

<lg><l>C'est un trou de verdure <caesura/> où chante une<choice><corr>rivière</corr><sic> rivèire</sic></choice></l>

• Projection des informations de Cordial dans le corpus original– Question de la conversion des informations de

Cordial en XML

Page 13: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Fusionner des annotations (2)

<l><s t="start" n="1"/><cl t="start" n="-1" ana="Principale"/><w f="S" n="1" lm="ce" ana="pos.pro ty.dem ass.d cat.s" ln="2"/>C'<w f="V" n="2" lm="&#234;tre" ana="pos.v ty.main m.ind t.p nbr.s p.3" ln="3"/>est <w f="B" n="3" lm="un" ana="pos.d ty.art fin.i g.m nbr.s" ln="2"/>un <w f="B" n="4" lm="trou" ana="pos.n ty.c g.m nbr.s" ln="4"/>trou <w f="B" n="5" lm="de" ana="pos.pre" ln="2"/>de <w f="B" n="6" lm="verdure" ana="pos.n ty.c g.f nbr.s" ln="7"/>verdure<caesura></caesura><w f="-" n="7" lm="o&#249;" ana="pos.pro ty.rel" ln="2"/>o&#249; <w f="V" n="8" lm="chanter" ana="pos.v ty.main m.ind t.p nbr.s p.3" ln="6"/>chante <w f="T" n="9" lm="un" ana="pos.d ty.art fin.i g.f nbr.s" ln="3"/>une<choice><corr><w f="T" n="10" lm="rivi&#232;re" ana="pos.n ty.c g.f nbr.s" ln="7"/>rivi&#232;re</corr><sic>rivèire</sic></choice></l>

• Implémentation– Convertir l’annotation de Cordial en format XML– Fusionner les deux flux XML– > Peut être utilisé avec tout autre outil, il suffit d’écrire

une classe convertissant le format en XML– Utilisation de flux : pas de limite de taille

Page 14: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Extraire des quantifications

• Avantage d’un cadre séquentiel– Pas de limitation en taille des corpus– Fonctions implémentées dans des filtres indépendants

arrangés en « pipeline » (modularité et facile à étendre)– Possibilité de « découper » ou faire « bifurquer » le flux– Efficacité pour les décomptes

1

2

3

4

5 6

<r><div> <d/></div><d><div></div><div></div></d></r>

Parseur

Page 15: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Exemple de filtre (1) : sélection de sous corpus

• Utiliser les standards comme XSLT ou XQuery pour l’extraction de sous corpus

• « découper » le flux en documents de petites tailles pour appliquer la transformation sur chacun d’eux successivement.

<div> ...</div><div> ...</div><div> ...</div>

Dans ce filtre, chaque élément <div> (et son contenu) apparaît comme un document unique, l’un après l’autre.

Ils peuvent être stockés en mémoire pour leur appliquer une transformation XSLT / XQuery ; puis le résultat est à nouveau converti en flux.

Page 16: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Exemple de filtre (2) : listes de fréquences

<lg> ...</lg><lg> ...</lg><lg> ...</lg>

<lg type="quatrain" rhyme='ABAB' ana="riche"> <l ana="fem">C'est un trou de verdure<caesura/>où chante une rivière</l> <l ana="masc">Accrochant follement aux herbes des haillons</l> <l ana="fem">D'argent ; où le soleil,<caesura/>de la montagne fière,</l> <l ana="masc">Luit : c'est un petit val<caesura/>qui mousse de rayons.</l></lg>

• Obtenir, pour chaque quatrain, des propriétés stylistiques (rime, enjambement, lexique, etc…)

Etape 1 :Sélection des <lg> avec l’attribut type=quatrain

Etape 2 :Pour chaque <lg> reçu, décompter les valeurs des attributs voulus

Etape 3 :mémoriser les listes de fréquences produites

Page 17: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Exemple de filtre (3) : concordancier

les tiges qui meuvent les marionnettes — appelons-les la trame. On pourrait connaîtras la direction de l'écoulement. Cherche alors la plante qui, dans cie a dû transporter les graines au loin. Suis les rigoles que l'eau a creusée en fait des calques, prenez la pose ou suivez l'axe, stade génétique ou dere des photos, elle en fait des calques, prenez la pose ou suivez l'axe, stala rabattre sur une photo de famille. Et voyez ce que fait Mélanie Klein avehé son sort à celui de la linguistique). Voyez ce qui se passait déjà pour lde pivot ou les points de structuration. Voyez la psychanalyse et la linguise américain : ne cherchez pas de racine, suivez le canal... ante la bible du dentiste américain : ne cherchez pas de racine, suivez le cet de s'enfoncer, et du processus qui ne cesse pas de s'allonger, de se rompns l'esprit. Il s'agit du modèle, qui ne cesse pas de s'ériger et de s'enfoneporter sur les cartes et non l'inverse. Contre les systèmes centrés (même p Résumons les caractères principaux ent, de gauche à droite ou inversement : essayez et vous verrez que tout chaeur milieu. Essayez donc de les retenir, essayez donc de retenir un brin d'hpoint quelconque situé vers leur milieu. Essayez donc de les retenir, essaye

Page 18: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

III. Deux exemples d’utilisation

(Tirés de G. Deleuze, l’Anti-Œdipe, 1972)

Page 19: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

1. Mesure de corrélations

num | lemme | rate | freq | subfreq 1 | {att}{lm}t | 1.00000000000000000 | 77 | 50 2 | {att}{lm}quel | 1.00000000000000000 | 132 | 60 3 | {att}{lm}pourquoi | 1.00000000000000000 | 127 | 55 4 | {att}{lm}est-ce que | 1.00000000000000000 | 45 | 44 5 | {att}{lm}comment | 1.00000000000000000 | 169 | 90 6 | {att}{lm}? | 1.00000000000000000 | 485 | 485 7 | {att}{ana}ue | 1.00000000000000000 | 164 | 52 8 | {att}{ana}Subordonnée| 1.00000000000000000 | 1078 | 147 9 | {att}{lm}vouloir | 0.99999999999995892 | 132 | 36 10 | {att}{ana}m.inf | 0.99999999999362155 | 3967 | 359 11 | {att}{lm}est-ce qu | 0.99999999998357814 | 9 | 9 12 | {att}{ana}p.2 | 0.99999999993766608 | 362 | 58 13 | {att}{ana}ty.sub | 0.99999999957343022 | 4362 | 377 14 | {att}{ana}ty.aut | 0.99999999861662336 | 5741 | 474 15 | {att}{lm}dire | 0.99999999765933478 | 460 | 64 16 | {tag}q | 0.99999999181213772 | 844 | 97 17 | {att}{lm}ça | 0.99999998904864595 | 116 | 26 18 | {att}{lm}que | 0.99999991520075171 | 3168 | 273 19 | {att}{lm}quoi | 0.99999986618948988 | 48 | 15 20 | {att}{ana}pos.c | 0.99999962481856841 | 12011 | 886

• Sous-corpus des phrases interrogatives

Page 20: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

2. Positions d’un item dans un élément• a. Le lemme Nietzsche dans les paragraphes

Page 21: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

b. Corrélats de chacune des positions

Page 22: XML comme format cumulatif : décrire la solidarité de différents niveaux d'annotation

Conclusion

• Enjeu scientifique de cette expressivité– Croiser et comparer les interprétations– Traiter les données comme un texte et le texte comme

des données (compromis par le « binary XML »)

• Renouveler des méthodes éprouvées de lexicométrie

• Rechercher de nouveaux observables– Des connaissances à exploiter pour le profilage– Aider au passage du « sémasiologique » (au sens

faible : l’accès au sens par le signifiant) àl’« onomasiologique » : du quantitatif au qualitatif