Bao 3 - Extraction de patrons morphosyntaxiques

La troisième boîte à outils vise à extraire des patrons morphosyntaxiques dans le fichier talisman txt ou le fichier treetagger xml, à l'aide de différents langage. Nous avons notamment lancé en cours une sorte de compétition entre Perl, XSLT et XQuery pour voir qui était le plus performant sur cette tâche.

Les patrons à extraire sont :
NOM PREP NOM PREP
VERBE DET NOM
NOM ADJ
ADJ NOM

1. Perl

Le script à télécharger : bao3_perl.pl

Les fichiers pour travail sont : des_patrons.txt
sortietalismane_3246.txt
sortietalismane_3208.txt

La commande pour lancer : perl bao3_perl.pl sortietalismane_XXXX.txt des_patrons.txt

L'avantage de cette méthode est que nous pouvons rechercher tous nos motifs avec un seul script, en une seule fois.

Voici un exemple de la comparaison de résultat entre des rubriques du patron NOM ADJ

bao3_perl1

Voici un exemple de la comparaison de résultat entre des rubriques du patron NC P NC P

bao3_perl2


Fichier de sortie: 3208_extrairePatron.txt
3246_extrairePatron.txt

2. XSLT/Xpath

Nous avons construit une feuille de styles XSLT pour extraire des patrons.

Pour cette méthode, nous avons d'abord besoin des fichiers étiquetés au format XML. Les fichiers TreeTagger obtenus dans la BAO 2 sont déjà au bon format, alors nous avons besoin des fichiers Talismane au format XML. Donc, nous avons les transformé de format texte en format XML en adoptant le script : talismane2xml-version-sans-titrevsdescription.pl

Les scripts à télécharger : xsltPatron_TreeTagger.xsl
xsltPatron_Talismane.xsl

Les fichiers pour travail sont :
TreeTagger : sortie-slurp_3208.xml et sortie-slurp_3246.xml
Talismane : sortietalismane-slurp_3208.txt.xml et sortietalismane-slurp_3246.txt.xml

Voici un exemple de la comparaison de résultat de TreeTagger et Talismane entre des rubriques A la une (3208) du patron NOM ADJ

xslt_tree_talis_1
(TreeTagger(gauche) <--> Talismane (droite))

Voici un exemple de la comparaison de résultat de TreeTagger et Talismane entre des rubriques Culture (3246) du patron NOM ADJ

xslt_tree_talis_2
(TreeTagger(gauche) <--> Talismane (droite))

Fichier de sortie: patronXSLT_TreeTagger_3208.txt ; patronXSLT_TreeTagger_3246.txt
patronXSLT_Talismane_3208.txt ; patronXSLT_Talismane_3246.txt

3. Xquery(BaseX)

Pour cette méthode, les fichiers utilisés sont identiques que la méthode 2 XSLT :

TreeTagger : sortie-slurp_3208.xml et sortie-slurp_3246.xml
Talismane : sortietalismane-slurp_3208.txt.xml et sortietalismane-slurp_3246.txt.xml

Voici un exemple de l'extraction patrons Xquery du patron ADJ NOM du fichier étiqueté par TreeTagger.

bao3_M3_treeT_3208_adjNOM
  • Les requêtes XQuery pour fouiller les données des fichiers étiquetté par TreeTagger, en passant par le logiciel BaseX :

  • Pour fouiller les patrons NOM - ADJ : methode3_treeTagger_nomADJ.xq
    - Les fichiers sortie de la rubrique A la une (Nº3208) :methode3_treeTagger_3208_nomADJ.xml
    - Les fichiers sortie de la rubrique Culture (Nº3246) :methode3_treeTagger_3208_nomADJ.xml

    Pour fouiller les patrons ADJ - NOM : methode3_treeTagger_adjNOM.xq
    - Les fichiers sortie de la rubrique A la une (Nº3208) :methode3_treeTagger_3208_adjNOM.xml
    - Les fichiers sortie de la rubrique Culture (Nº3246) :methode3_treeTagger_3246_adjNOM.xml

    Pour fouiller les patrons VERBE - DET - NOM : methode3_treeTagger_V_DET_N.xq
    - Les fichiers sortie de la rubrique A la une (Nº3208) :methode3_treeTagger_3208_V_DET_N.xml
    - Les fichiers sortie de la rubrique Culture (Nº3246) :methode3_treeTagger_3246_V_DET_N.xml

    Pour fouiller les patrons NOM - PREP - NOM -PREP : methode3_treeTagger_NpNp.xq
    - Les fichiers sortie de la rubrique A la une (Nº3208) :methode3_treeTagger_3208_NpNp.xml
    - Les fichiers sortie de la rubrique Culture (Nº3246) :methode3_treeTagger_3246_NpNp.xml

    Voici un exemple de l'extraction patrons Xquery du patron ADJ NOM du fichier étiqueté par Talismane.

    bao3_M3_Talismane_3246_NpNp

  • Les requêtes XQuery pour fouiller les données des fichiers étiquetté par Talismane, en passant par le logiciel BaseX :

  • Pour fouiller les patrons NOM - ADJ : methode3_talismane_NcADJ.xq
    - Les fichiers sortie de la rubrique A la une (Nº3208) :methode3_talismane_3208_NcADJ.xml
    - Les fichiers sortie de la rubrique Culture (Nº3246) :methode3_talismane_3246_NcADJ.xml

    Pour fouiller les patrons ADJ - NOM : methode3_talismane_ADJNc.xq
    - Les fichiers sortie de la rubrique A la une (Nº3208) :methode3_talismane_3208_ADJNc.xml
    - Les fichiers sortie de la rubrique Culture (Nº3246) :methode3_talismane_3246_ADJNc.xml

    Pour fouiller les patrons VERBE - DET - NOM : methode3_talismane_VdetN.xq
    - Les fichiers sortie de la rubrique A la une (Nº3208) :methode3_talismane_3208_VdetN.xml
    - Les fichiers sortie de la rubrique Culture (Nº3246) :methode3_talismane_3246_VdetN.xml

    Pour fouiller les patrons NOM - PREP - NOM -PREP : methode3_talismane_NpNp.xq
    - Les fichiers sortie de la rubrique A la une (Nº3208) :methode3_talismane_3208_NpNp.xml
    - Les fichiers sortie de la rubrique Culture (Nº3246) :methode3_talismane_3246_NpNp.xml

    L'analyse

    La première observation que nous pouvons faire en comparant les différents résultats est que treetagger et talismane n'étiquettent pas de la même manière.

    Ensuite, on peut considerer que le nombre d'occurences de chque patron morphosyntaxique sont différents. Par exemple, dans les fichiers sorties de patron NOM ADJ, le numbre d'occurences sur les étiquetage TreeTagger est plus élevé que sur Talismane.

    En termes de ces méthodes, on a obtenu les mêmes résultats avec les méthodes perl et XQuery sur les fichiers TreeTagger et égalment sur fichiers Talismane.