Génération d'un serveur d'exploration simple avec ISTEX

De Wicri Manuel
Révision datée du 13 mars 2015 à 17:14 par imported>Jacques Ducloy (Création d'un serveur d'évaluation)

Un serveur d'exploration est un outil d'exploration de corpus qui s'applique naturellement à ISTEX.

Savoir lancer une commande sous Unix

La technologie utilisée dans les serveurs d'exploration repose sur Unix. Ceci devrait devenir transparent pour une première approche. Dans la situation actuelle, il est nécessaire de savoir se connecter dans une fenêtre “ terminal Unix » où l'on peut lancer des commandes (par copier coller) en modifiant des paramètres.

La seule difficulté dans les premières expérimentations est relative à l'initialisation de la session. Sur un site correctement configuré, il suffit de faire dans la fenêtre shell :

~/Dilib/init.sh

Pour vérifier, il faut faire :

echo $DILIB_VERSION

On provoque alors l'impression de

V0.6.36

Estimer la taille d'un corpus

Pour des utilisations simples, la taille optimale d'un corpus tourne autour de 1000 notices de métadonnées - ce qui permet d'obtenir un résultat en quelques minutes.

La commande IstexGetCorpus, avec l'option « -s 1 » (size 1) permet de connaître instantanément la taille d'un corpus. Exemple :

IstexGetCorpus -s 1 -q rabelais

provoque l'impression de :

575 bytes retrieved
 {
 "total": 1266,
 "hits": [
   {
      ...
   }
  ]
 }

La ligne total donne alors le nombre de documents contenus dans le corpus et qui contiennent le terme rabelais.

En fait cette commande génère un appel à l'api ISTEX qui est ici :

Obtenir une première idée sur le contenu d'un corpus

La commande IstexFlashCorpus avec la même option « -q » et en positionnant la taille à quelques documents (par exemple 10) permet de se faire une première idée du contenu.

IstexFlashCorpus -s 10 -q rabelais

donne alors immédiatement un ensemble de données comme :

=== dates (sur 10 documents) ===
2	1980 
2	1932
1	1992
 ...
=== pays d'affilation ===
3	États-Unis
=== Primary Keywords (series) ===
10	Syntax
10	Philology
10	Historical Linguistics
...
=== 10 titles ===
= Marnix en rabelais
= The function and meaning of the mock epic framework in Rabelais
= Additional insight into Rabelais' King Picrochole
= Procédés Anthroponymiques chez Rabelais

Obtenir une vision plus approfondie

La commande IstexExplorCorpus avec la même option « -q », permet une montée en charge avec quelques centaines de documents.

Intégration au système de fichiers unix

Elle demande cependant un peu plus d’adaptation car elle construit un serveur d'exploration qu'il faut installer dans le système de fichier Unix. Son utilisation demande donc une première familiarisation avec les commandes et éléments associés (ls, cd , mkdir, pwd, rm, rmdir).

Type de configuration visée à moyen terme

Les manipulations décrites dans ce paragraphe supposent que le machine d'expérimentation dispose de son propre serveur apache (avec php actif).

Pour préparer les étapes suivantes, surtout dans un contexte collectif, nous recommandons une organisation calquée sur le réseau Wicri.

Par exemple, concernant Rabelais, dont la thématique est plutôt centrée sur la France, on peut construire une hiérarchie du type :

- $WICRI_ROOT -+
               +- Wicri -+
                         +- France +
                                   +- TestX

Par des commandes ls, on vérifie l'existant et on complète. Par exemple, la commande :

ls $WICRI_ROOT/Wicri

permet de savoir si un répertoire France existe. Si non, pour l'utilisateur Dupont, il faudra opérer ainsi :

mkdir $WICRI_ROOT/Wicri/France
mkdir $WICRI_ROOT/Wicri/France/TestDupont

L'espace disque ayant été ainsi structuré, il faut faire :

cd $WICRI_ROOT/Wicri/France/TestDupont

pour que le serveur d'exploration soit installé au bon endroit.

Solution de repli

Chaque étudiant génère son serveur sous un répertoire avec des consignes définies par l'encadrant.

Création d'un serveur d'évaluation

Il suffit alors de définir un code pour identifier le serveur. Ce code sera alors utilisé pour construire le répertoire (directory) racine de la hiérarchie de fichiers associée au serveur.

Exemple, pour un mini serveur Rabelais de 50 documents :

IstexExplorCorpus -s 50 -q "rabelais" -e springer -d RabelaisMini

Pour analyser le résultat, il faut utiliser le navigateur avec un chemin du type :

Solution de repris

Pour un petit corpus, effectuer une commande "tar" pour stoker une copie du répertoire dans un fichier exportable.

Par exemple pour RebelaisMini, faire :

tar -cvf RabelaiMini.tar RabelaisMini

Puis le fichier généré sera transféré sur une machine disposant d'un serveur Apache.

Il faudra alors procéder, sur la machine cible, à l'opération inverse :

tar -xvf RabelaiMini.tar RabelaisMini

Améliorations du corpus

L'exemple Rabelais est représentatif d'un problème de bruitage important dû à la présence de l'Université François Rabelais de Tours. Le résultat obtenu par la commande précédente est donc assez décevant.

Il faut donc raffiner.

Une stratégie ici utilisable est d'explorer dans l'index pays les documents de source non française et on localise assez facilement (dans le contenu Xml) la présence du terme linguistics dans l'indexation des revues.

On peut alors relancer une nouvelle version de test avec :

IstexExplorCorpus -s 50 -q "rabelais AND linguistics" -e springer -d RabelaisMini

Une fois la requête stabilisée, on peut passer à la Mise en place d'un flux de curation et d'exploration ISTEX