Outils pour utilisateurs

Outils du site


public:analyse_de_corpus_evs_avec_txm

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
public:analyse_de_corpus_evs_avec_txm [2017/05/20 21:38]
slh@ens-lyon.fr
public:analyse_de_corpus_evs_avec_txm [2018/10/03 16:24] (Version actuelle)
slh@ens-lyon.fr
Ligne 7: Ligne 7:
 Dans la mesure où cette page est pour l'​instant publique, il est intéressant de veiller à ne pas trop désigner de personnes et de projets concrets. Dans la mesure où cette page est pour l'​instant publique, il est intéressant de veiller à ne pas trop désigner de personnes et de projets concrets.
  
-===== Toponymes de Paris =====+====== Toponymes de Paris ======
  
-==== macro NIndex ​====+===== Import du corpus =====
  
-=== Installation ​de la macro ===+Pour pouvoir utiliser l'​outil d'​annotation par concordances,​ il est nécessaire d'​importer le corpus avec le module d'​import XTZ+CSV qui prend des sources au format XML (le module d'​import XTZ+CSV et l'​annotation sont disponibles à partir ​de TXM 0.7.8) :
  
-  ​- télécharger la macro [[https://​sharedocs.huma-num.fr/​wl/?​id=EhvZ5j4e3KAUflYdrFqExy0Jq2KFCzVI|NIndexMacro.groovy]] +  ​* lancer '​Fichier ​Importer ​XML-XTZ+CSV'​ 
-  - copier le fichier dans <html><code>&​lt;​répertoire utilisateur&​gt;/​TXM/​scripts/​macro/​org/​txm/​macro/​commands</​code></​html>​ +    * pointer le répertoire ​des sources XML 'Paris_corrige
-  ​ouvrir la vue Macro +    * lancer ​l'import en cliquant sur la flèche verte
-  - accéder au répertoire 'commands+
-  - double-cliquer sur l'icone de la macro NIndex pour la lancer+
  
-=== Fonctionnement de la macro ===+===== Annotation du corpus =====
  
-La macro NIndex assiste le décompte de séquences ​de mots dans des corpus ou des sous-corpusElle généralise la commande Index de TXM 0.7.8 à N requêtes CQL. Les séquences sont fournies dans un fichier d'entrée ​(paramètre <​html><​code>​inputFile</​code></​html>​), au format général d'une séquence par ligne. Trois formats ​de séquences sont proposés ​+  * faire une concordance,​ par exemple ​de %%"​rue|avenue|boulevard"​%c ("​d[ue]|des|aux"​%c|"​de"​%c "​la"​%c)?​ [word="​[A-Z].*"]%% :\\ {{:​public:​conc-rues.jpg?800}} 
-  * séquences ​de formes de mots (ou de forme de lemme ou de forme de posetc.) comme par exemple des séquences déjà repérées par TXM ou par un autre logicielexemple :<code>Cathédrale Notre-Dame +  * cliquer sur le bouton '​Annoter' (bouton crayon situé en haut à gauche de la concordance) 
-rue de la Chanvrerie +    * saisir l'identifiant ​de l'​annotation,​ par exemple '​id_rue_neuve'​ 
-...</code+    * garder l'​option '​lignes sélectionnées'​ 
-  * séquences d'​expressions régulières sur les formes ​de motsexemple ​:<​code>​Tour.* +    * sélectionner les deux lignes correspondant à "rue Neuve" ​:\\ {{:​public:​conc-rues-annotation.jpg?​800}} 
-rue|avenue|boulevard de la [A-Z].*+  * cliquer sur '​OK'​ pour poser l'​annotation 
 +    * on voit que les pivots ont bien reçu l'​annotation : \\ {{:​public:​conc-rues-annotation-neuve.jpg?​800}} 
 + 
 +===== Enregistrement ​de l'​annotation ===== 
 + 
 +Une fois qu'on a cliqué dans une concordance sur le bouton "​Annoter",​ qui a une icone de crayonpour lancer une session d'​annotation,​ il bascule en bouton "​Enregistrer les annotations"​ avec l'​icone crayon+disquetteCliquer sur le bouton crayon+disquette sauvegarde les annotations de la session courantece qui permet ensuite d'​exploiter les annotations par requêtes CQL. 
 + 
 +<note>La sauvegarde des annotations est un calcul encore assez long parce que TXM ré-importe en partie le corpus.</note
 + 
 +===== Exploitation ​de l'​annotation du corpus ===== 
 + 
 +Après la sauvegardeon voit que des structures '​span'​ sont disponibles avec le contenu des annotations dans leur propriété '​ref' ​: 
 + 
 +==== Extrait de la Description du corpus ==== 
 + 
 +<​code>​... 
 +Propriétés des structures (max 20 valeurs) 
 + 
 +doc 
 +  n (1) = 0. 
 +
 +  n (18972) = 0, 1, 10990, 10991, 10992, 10993, 10994, 10995, 10996, 10997, 10998, 10999, 2, 3, 4, 5, 6, 7, 8, 9. 
 +span 
 +  author (1) = sheiden. 
 +  date (1) = 2017-06-01. 
 +  end (2) = 3778, 5576. 
 +  n (1) = ""​. 
 +  ref (1) = id_rue_neuve. 
 +  start (2) = 3777, 5575. 
 +...
 </​code>​ </​code>​
-  * requêtes CQL, exemple :<​code>"​Cathédrale"​%cd "​Notre-Dame"​%cd 
-"​rue|avenue|boulevard"​%c "​de"​%c "​la"​%c [word="​[A-Z].*"​] 
-...</​code>​ 
  
-Dans les séquences de formes de mots et d'expressions régulières ​sur les formes de motsles formes et les expressions régulières sont séparées par un caractère espace (pour chercher une forme contenant un espace il faut utiliser une expression régulière exprimant ce caractère Unicode).+==== Concordance basée sur l'annotation ==== 
 + 
 +Pour faire une concordance basée ​sur l'​annotationon peut utiliser une requête de la forme suivante :\\ %%<​span_ref="​id_rue_neuve">​ []+ expand to span%% :\\ {{:​public:​conc-annotation-neuve.jpg?800}}
  
-=== Types de séquences ===+On peut utiliser 3 variantes ​de ce type de requêtes :
  
-Le type de séquences interprété par NIndex est déterminé par le paramètre <​html><​code>​inputIsCQL</​code></​html>​. Si ce paramètre est sélectionné (vrai), les séquences sont interprétées comme des requêtes CQL ; sinon elles sont interprétées soit comme des formes soit comme des expressions régulières de formes en fonction du contenu de chaque ligne.+=== A===
  
-Le paramètre ​<html><​code>​inputWordProperty</​code></​html>​ permet de choisir la propriété de mot qui sera utilisée pour les recherches de séquences de formes ou de séquences d'​expression régulière de forme. Par exemple : +%%<span_ref="​id_rue_neuve"​[]%% 
-  * avec la valeur '​word'​ (par défaut) ce seront les séquences ​de forme graphiques qui seront recherchées +  * glose : pour ne chercher que le premier mot de la séquence annotée
-  * avec la valeur '​frlemma'​ ce seront les séquences de formes de lemmes qui seront recherchées +
-  * avec la valeur '​frpos'​ ce seront les séquences d'​étiquettes morphosyntaxiques qui seront recherchées +
-  * etc. en fonction de l'​étiquetage des mots du corpus+
  
-=== Propriété de mot dénombrée ​===+=== B) ===
  
-Le paramètre ​<html><​code>​outputWordProperty</​code></​html>​ permet de choisir quelle propriété de mot sera utilisée pour réaliser le dénombrement des séquences trouvées. Par exemple : +%%<span_ref="​id_rue_neuve"​[]+ expand to span%% 
-  * avec la valeur '​frlemma'​ ce seront ​les séquences ​de formes de lemmes qui seront dénombrées +  * glose : pour chercher tous les mots de la séquence annotée
-  * avec la valeur '​word'​ (par défaut) ce seront les séquences de formes graphiques qui seront dénombrées +
-  * avec la valeur '​frpos'​ ce seront les séquences d'​étiquettes morphosyntaxiques qui seront dénombrées +
-  * etc. en fonction de l'​étiquetage des mots du corpus+
  
 +=== C) ===
  
-=== Regroupement des décomptes par séquence ​===+%%[_.span_ref="​id_rue_neuve"​]%% 
 +  * glose : pour chercher chaque mot de la séquence ​annotée
  
-Quand les séquences sont des requêtes CQL ou des expressions régulièresil est possible de regrouper les décomptes de leurs réalisations en sélectionnant le paramètre <​html><​code>​groupByQuery</​code></​html>​. Dans ce cas il y a une fréquence ​par séquence dans le tableau de sortie.+Chacune ​des variantes aura son utilité selon l'​outil mobiliséConcordance ou Index par exemple, et l'​objectif visé.
  
-=== Liste des corpus à interroger ​===+==== Exportation de l'​annotation ====
  
-Les corpus dans lesquels chercher sont soit sélectionnés dans la vue corpus ​(avant ​de lancer la macro), soit fournis sous la forme d'une liste de noms de corpus ​à l'appel de la macro par une autre macro.+Après ​la sauvegarde des annotations,​ le corpus ​contient en lui-même les annotations indépendamment ​de l'​outil ​d'annotation. On peut donc exporter ce corpus ​au format binaire (avec la commande '​Fichier > Exporter > Corpus au format binaire) dans un fichier .txm que l'on peut transmettre à un correspondant. Le correspondant charge alors le corpus binaire (avec la commande '​Fichier > Charger) puis exploite le corpus et ses annotations comme pour n'​importe quel corpus binaire.
  
-=== Format de sortie ​===+==== Annotation d'un corpus annoté chargé ====
  
-La macro NIndex écrit ​son résultat dans un fichier de sortie (paramètre <​html><​code>​outputFile</​code></​html>​),​ deux formats sont proposés : +Ceci n'a pas encore été beaucoup testé mais le correspondant peut à son tour annoter le corpus lui-même avec la contrainte actuelle qui est qu'il n'a pas le référentiel des annotations déjà réalisées sur le TXM d'​origineDonc :
-  * ODS : format tableur Calc de Libre Office (extension ​.ods) +
-  * TSV format texte tabulé TSV (caractère tabulation pour séparer les colonnes)+
  
-Remarque : dans TXM 0.7.8 ou inférieurpour pouvoir ​écrire au format ODS il faut installer au préalable ​des bibliothèques Java complémentaires : +  * a) il doit pouvoir ajouter des annotationsqui doivent se conformer au système d'​étiquettes d'​origine (mêmes noms) si on veut pouvoir ​faire une exploitation conjointe ​des annotations d'​origines et des nouvelles annotations 
-  - télécharger l'archive [[https://​sharedocs.huma-num.fr/​wl/?​id=uL8Qdg5dwjbE9rY9SBnvnZmf4ileqDbH|office.zip]] +  ​* b) il peut peut-être corriger des annotations d'origine, en se conformant au système d'​étiquettes d'​origine pour les mêmes raisons que précédemment
-  - copier dans <​html><​code>&​lt;​répertoire utilisateur&​gt;/​TXM/​scripts/​lib</​code></​html> ​les 7 fichiers qu'​elle contient : +
-    * commons-validator-1.4.0.jar +
-    * java-rdfa-0.4.2.jar +
-    * jena-core-2.7.4.jar +
-    * jena-iri-0.9.4.jar +
-    * odfdom-java-0.8.10-incubating.jar +
-    * org.apache.xerces_2.9.0.v201101211617.jar +
-    * simple-odf-0.8.1-incubating.jar +
-  - quitter puis relancer TXM +
-  - la macro peut alors utiliser ces librairies+
  
-Quand le paramètre <​html><​code>​odsOutputFormat</​code></​html>​ est sélectionné la sortie se fait au format ODSsinon TSV.+Comme nous n'​avons pas encore ​fait de tests dans ce domainenous serions intéressés d'​avoir des retours d'​expérience. 
 +Il faudra qu'on prévoit d'​exporter les référentiels (jeux d'​étiquettes) dans les corpus binaires.
  
-== Sortie au format ODS ==+===== Notes 03/10/2018 =====
  
-La sortie au format tableur est composée de deux feuilles : +  ​* format de sortie PERDIDO 
-  ​feuille principale (Sheet1) : contient le tableau des décomptes avec les colonnes suivantes : +    * tests 
-    * **corpus** : nom du corpus, au format ​chaine +  exploitabilité ​des annotations PERDIDO 
-    * **word query** ou **CQL** : la requête ​de séquence, au format chaine +  * travailler sur des textes structurés et annotés ​avec PERDIDO 
-    * **word values** : les réalisations de la séquence, au format chaine (cette colonne n'est pas présente si le paramètre <​html><​code>​groupByQuery</​code></​html>​ est sélectionné) +    * structurer en aval annoter les structures dans TXM 
-    **f** : la fréquence ​des réalisations ou de la requête si <​html><​code>​groupByQuery</​code></​html>​ est sélectionné,​ au format nombre entier +    * structurer en amont est-ce que TXM peut piloter les demandes à PERDIDO ? 
-  * feuille de renseignement ​des résultats (properties),​ contient le tableau des paramètres du calcul ​avec les informations suivantes : +  nouveaux textes
-    * date date de lancement de la macro +
-    * time heure de lancement de la macro +
-    machine : nom de la machine utilisée +
-    * user : identifiant de l'​utilisateur ayant lancé le calcul +
-    * macro : nom de la macro +
-    * valeurs des paramètres : corpora, inputFile, inputIsCQL, inputWordProperty,​ outputFile, odsOutputFormat,​ outputWordProperty,​ groupByQuery+
  
 ===== Autres projets ===== ===== Autres projets =====
public/analyse_de_corpus_evs_avec_txm.1495309117.txt.gz · Dernière modification: 2017/05/20 21:38 par slh@ens-lyon.fr