Étiquetage syntaxique
Cordial et Treetagger
Une fois le texte isolé, on peut passer à l'analyse centrale du travail qui est le traitement morpho-syntaxique et l'étiquetage qui va en résulter. Chaque texte va être analysé deux fois pour comparer le résultat obtenus par les deux logiciels.
Version Treetagger
- pré-traitement Treetagger prends en entrée un fichier texte comportant un mot par ligne
- Texte traité par Treetagger L'appel de Treetagger peut se faire depuis la console ce qui est pratique. La version de tree tagger utilisée est celle pour OS X mais le fichier par utilisé est celui de linux:
- formatage du résultat en XML
my @mots = split(/\s/, $fichier);
print join("\n", @mots), "\n";
treetagger/tree-tagger-MacOSX-3.2/bin/tree-tagger -no-unknown -lemma'-token french-par-linux-3.1.bin $entree $sortie
s/([^\t]*)\t([^\t]*)\t(.*)/\n<element><data type=\"string\">$1<\/data><data type=\"type\">$2<\/data><data type=\"lemma\">$3<\/data><\/element>/;
On passe de l'étiquetage FORME TYPE LEMME au balisage
<element>
<data type="string">FORME</data>
<data type="type">TYPE</data>
<data type="lemma">LEMME</data>
</element>
Version Cordial
- Texte étiquetté par cordial Cordial nécessite une utilisation manuelle depuis la GUI. Le résultat est le fichier ".src".
- formatage du réusultat en XML L'étiquetage effectué par cordial se présente sous une forme assez similaire mais transformation en XML doit tenir compte de certaines différences d'ordre: FORME LEMME TYPE. On a simplement à inverser l'ordre de l'étiquette lemme et type pour pouvoir entrer dans les mêmes balises XML.
s/^([^\t]*)\t([^\t]*)\t([^\t]*).*$/\n<element>\n <data type=\"type\">$3<\/data>\n <data type=\"lemma\">$2<\/data>\n <data type=\"string\">$1<\/data>\n<\/element>/
“Some people, when confronted with a problem, think ‘I know, I’ll use regular expressions.’ Now they have two problems.”
– Jamie Zawinski.