Boite à Outils 2 : l'Etiquettage

Une fois le script de la BAO1 lancé sur notre arborescence, nous obtenons un fichier pour chaque rubrique: $rubrique.txt .

Ce fichier ne contient aucune annotations, nous souhaiterions donc obtenir un étiquetage morpho-syntaxique.

Pour y parvenir, nous avons utilisé deux méthodes :

  • enrichir le programme de la BAO1 avec l'étiqueteur "TreeTagger"
  • faire analyser au logiciel Cordial, le fichier texte produit par la BAO1.

Avec Cordial

Cordial est un logiciel de correction orthographique (payant) qui tourne sous Windows. Pour pouvoir l'utiliser nous avons donc dû convertir nos fichiers UTF-8 en fichiers ISO-8859-1 avec retours à la ligne Windows. Pour réaliser cette tâche nous avons tout simplement utilisé les boutons disponibles sur Notepad++. Ensuite, nous avons chargé le fichier dans le logiciel, que nous avons paramètré de façon à n'obtenir que l'étiquetage en POS, et surtout pas de correction syntaxique.

Les fichiers obtenus sont structurés en 3 colonnes, où chaque ligne est un token différent:

Les 3 colonnes:

  1. le token
  2. son lemme
  3. sa catégorie morphosyntaxique

Avec TreeTagger

Pour obtenir de notre algorithme qu'il étiquette chaque rubrique en POS, on l'a enrichi d'une fonction "etiquetage". Cette fonction se lance juste après la fonction "nettoyage", et traite le titre puis la description.

Elle commence par créer un fichier temporaire où elle stocke le texte du titre (respectivement, de la description). Ce fichier est ensuite séparé en unités grâce au programme "tokenise-utf8.pl" (fourni) et etiquetté par la commande "./tree-tagger.exe -lemma -token -no-unknown french-oral-utf-8.par". Le resultat de ce traitement est stocké dans un second fichier temporaire, qui est mis au format XML par le programme (fourni lui aussi) treetagger2xml-utf8.pl. Le produit de cette transformation est ensuite stocké dans une variable pour être renvoyé au programme principale et inscrit dans le fichier XML de résultat.