Outils

Outils


Pour Flemmv2 : Flemmv2

Pour Flemmv3 : Flemmv3

Pour Dérif : DériF


Flemm, V2

Première version de Flemm. Voir Flemmv3 pour la description et améliorations. Flemm v2 compatible avec Acabit, programme d'acquisition de terminologie qui prend en entrée un texte annoté linguistiquement et retourne une liste ordonnée de candidats termes conçu et développé par Béatrice Daille.

Flemm v.2 est téléchargeable ici.

Flemm, V3

Téléchargeable à partir du CNRTL

Description

Flemm calcule le lemme de chaque mot fléchie (en fonction de l'étiquette) et fournit également les traits flexionnels principaux :

Les traits sont codés en fonction des spécifications lexicales recommandées pour le français par le consortium Multext sous leur forme compacte. En plus des traits standards, un champ a été ajouté pour les verbes, de manière à coder leur famille flexionnelle (1er, 2e ou 3e groupe). Le tableau ci-dessous résume les tables attribut-valeur pour les partie du discours fléchissables. Voir le site Multext pour une information détaillée à propos de la signification des codes de valeur, ainsi que leur correspondance.

Noms cat type gend nb case semtype
  N c,p m,f s,p - -
Verbes cat type mood tns pers nb gend clitics group
  V m,a i,s,m,n,p p,i,f,s 1,2,3 s,p m,f - 1,2,3
Adjs cat type dgr gend nb case
  A f,o,i,s - m,f s,p -
Pros cat type pers gend nb case poss
  P p,d,i,s,t,r,x 1,2,3 m,f s,p n,j,o s,p
Dets cat type pers gend nb case poss quant
  D a,d,i,s,t 1,2,3 m,f s,p - s,p d,i
PrepDets cat type pers gend nb case poss quant
  Sp+D a - m,f s,p - - d

De plus, Flemm vérifie et corrige un certain nombre d'erreurs de segmentation ou d'étiquetage. Quand cela est demandé par l'utilisateur, les erreurs détectées, ainsi que leurs corrections correspondantes sont reportées dans des fichiers spéciaux.

Quel que soit le résultat de la vérification de l'étiquetage, Flemm renvoie l'étiquette d'origine, telle qu'elle avait été produite par l'étiqueteur.

Contenu de la distribution

Les modules et sous-répertoires suivants sont inclus dans l'arborescence Flemmv3.1 :

  Flemmv31:     /Modules principaux, et programmes de test/
  =========
      Flemm.pm
      flemm.pl
      flem_ex1.pl
      flem_ex2.pl
      flem_ex3.pl
      flem_ex4.pl
      flem_ex5.pl
      LICENCE.txt
      README.txt


  Flemmv31/Flemm:     /packages requis pour exécuter Flemm.pm/
  ===============
      Analyse.pm
      Analyses.pm
      Brill.pm
      Exceptions.pm
      Feature.pm
      Features.pm
      Lemmatizer.pm
      Result.pm
      TreeTagger.pm 
  
  Flemmv31/Flemm/Utils:     /packages utilitaires/
  =====================
      List.pm


  Flemmv31/tests:     /échantillons de fichiers d'input, a éxécuter 
  ===============     avec les programmes test : test_bll_1.input et 
                      agatha.bll sont étiquetés par Brill, test_tt_1.input
                      et pls.tt sont étiquetés par Treetagger/
      test_bll_1.input
      test_tt_1.input
      agatha.bll
      pls.tt
  
  
  Flemmv31/EXCEP:     /L'ensemble des listes d'exception/
  ===============
      adjectifs_finissant_par_CCe         adjectifs_finissant_par_Ve
      adjectifs_finissant_par_aOUos       adjectifs_finissant_par_an_e
      adjectifs_finissant_par_ane         adjectifs_finissant_par_ere
      adjectifs_finissant_par_ine         adjectifs_finissant_par_is
      adjectifs_finissant_par_man_e       adjectifs_finissant_par_oOUil
      adjectifs_finissant_par_ol          adjectifs_finissant_par_sOUte
      adjectifs_finissant_par_sse_s       adjectifs_finissant_par_ure
      adjectifs_finissant_par_us          noms_finissant_par_AEus
      noms_finissant_par_Cs               noms_finissant_par_ail_x
      noms_finissant_par_as               noms_finissant_par_au_x
      noms_finissant_par_aux              noms_finissant_par_e_ee
      noms_finissant_par_euse             noms_finissant_par_eux
      noms_finissant_par_i_s              noms_finissant_par_ier_e
      noms_finissant_par_os               noms_finissant_par_ou_x
      noms_finissant_par_ous              noms_finissant_par_u_s
      noms_finissant_par_ys               verbes_finissant_par_ERer
      verbes_finissant_par_FPHer          verbes_finissant_par_ayer
      verbes_finissant_par_ier            verbes_finissant_par_eCer_naccent
      verbes_finissant_par_eLer_aigu      verbes_finissant_par_eNTer_aigu
      verbes_finissant_par_igner          verbes_finissant_par_eMer_naccent
      verbes_finissant_par_irer           verbes_finissant_par_eRer_naccent
      verbes_finissant_par_ller           verbes_finissant_par_eSer_naccent
      verbes_finissant_par_eVer_aigu      verbes_finissant_par_ePer_naccent
      verbes_finissant_par_isser          verbes_finissant_par_tter

Tester FLEMM v3.1

  1. S'assurer que l'adresse du répertoire d'installation de Flemmv3.1 est ajoutée à la variable d'environnement PER5LIB, e.g.:
      export PERL5LIB=~/Flemmv31  
  2. Exécuter :

    perl flemm.pl --entree ~/Flemmv31/tests/agatha.input --log 
    --logname test_bll_1 --progress --format normal --tagger brill
    
    perl flemm.pl --entree ~/Flemmv31/tests/test_tt_1.input 
    --sortie ~/Flemmv31/tests/test_tt_1.xml --format xml
    --tagger treetagger

Format d'entrée

Il faut fournir à Flemm en entrée une forme fléchie munie d'une catégorie grammaticale. A ce jour, les deux seuls étiqueteurs acceptés par Flemm sont Brill entraîné pour le français et Treetagger.

Changements par rapport à la version précédente


DériF

Interrogeable à distance via le portail du CNRTL .

Téléchargeable : contact

Description

DériF (Dérivation en Français) est un analyseur du lexique morphologiquement construit du Français. Contrairement à ce que son nom laisse croire, DériF analyse non seulement les unités du lexique construites par dérivation (c'est-à-dire suffixées : SCOLAIRE/ADJ, préfixées APPAUVRIR/VERBE, converties : IMPERMÉABLE/NOM) mais aussi celles formées par composition savante ou néoclassique (ANTHROPOPHAGE/ADJ).

Le raisonnement mis en oeuvre par DériF s'inspire des théories du courant lexématique de la morphologie. Ce système est donc basé sur l'utilisation de principes et contraintes linguistiques théoriques. `

DériF analyse un lemme étiqueté au moyen de sa catégorie grammaticale (NOM, VERBE, ADJ, ADV), hors contexte. Chaque étape d'analyse produit le lemme de base, avec sa catégorie (cf. 1a). Le procédé est réitéré tant que la dernière sortie produite est analysable comme morphologiquement construite (cf. 2a, 2b).

Si une forme est graphiquement ambiguë, alors Dérif produit sous forme de liste toutes les analyses possibles, puis la récursion s'applique à chaque élément de la liste (cf. 3a-3d). En dehors de ces propriétés, DériF est capable de produire deux types d'informations syntaxico-sémantiques sur les lemmes étiquetés reliés par une règle morphologique :

  1. la pseudo-définition du lemme analysé, calculée par rapport à sa base (cf. 1b, 2c, 3b,3d),
  2. un ensemble de traits reflétant les contraintes que la règle impose à la base et au construit : par exemple lors de l'analyse de APPAUVRIR, DériF affecte à l'adjectif (cf. 4a) les traits indiquant que celui-ci désigne une propriété munie d'une borne initiale (i.e. non inhérente); de même DériF affecte au verbe (cf. 4b) les informations précisant que celui-ci dénote un accomplissement, et qu'il est transitif ; enfin Dérif prévoit que la relation entre la base et le verbe construit (cf. 4c) est telle que le premier renvoie à l'état final dans lequel se trouve l'object direct (patient) du verbe, à la fin du déroulement du prédicat incarné par celui-ci.

    (1a) scolaire/ADJ==> [ [ scol N* ] aire ADJ] (scolaire/ADJ, scol/N*)
    (1b) " En rapport avec le(s) école"

    (2a) appauvrissement/NOM==> [ [ a [pauvre ADJ ] VERBE] ment NOM]
    (2b) (appauvrissement/NOM, appauvrir/VERBE, pauvre/ADJ)
    (2c) " (Action - résultat de l'action) de appauvrir"

    (3a) importable/ADJ==> [ in [[ porter VERBE] able ADJ] ADJ] (importable/ADJ, portable/ADJ, porter/VERBE)
    (3b) " Non portable"
    (3c) [ [ importer VERBE] able ADJ] (importable/ADJ, importer/VERBE)
    (3d) " ( lequel - Que l') on peut importer"

    (4a) pauvre/ADJ: @1 [typeA = propriété, borne = oui, binit = oui ]
    (4b) appauvrir/VERBE: [ aspect = accompl ; sous_cat = < NPagent, @2 NPpatient > ] ;
    (4c) rel = prop( @1 ) = état_final( @2 )

    Fiche technique

    Version Conception Langage Codage caractères
    DériF 3.0 F. Namer Perl 5.8 ISO-8859-1

    Version téléchargée, Format d'entrée

    L'utilisateur peut interroger DériF de deux manières :
    1. en fournissant au clavier un lemme muni d'une étiquette grammaticale.
      L'ensemble est entré suivant la notation :

      <lemme>,<CAT> ou <lemme>/<CAT>

      <CAT> est l'une des séquences suivantes VERBE, NOM, ADJ, ADV <lemme> est une chaîne de caractères représentant la forme citationnelle (non fléchie) qui vérifie la catégorie <CAT>. Par convention,

      • la forme citationnelle d'un nom est son singulier,
      • la forme citationnelle d'un adjectif est son masculin-singulier,
      • la forme citationnelle d'un verbe est son infinitif
    2. en fournissant au programme un ensemble de données codées dans un fichier. Le fichier contenant les données à analyser est codé en ISO-8859-1. Chaque ligne comporte un lemme étiqueté au format indiqué au point (1).

    Format de sortie

    Trois formats sont disponibles, en fonction de l'option choisie :
    1. Triplet : déjà présenté supra, exemples (1) à (3). Chaque résultat est un triplet comportant
      1. l'historique de l'analyse sous la forme de listes crochetées,
      2. la liste des éléments de la famille du lemme analysé,
      3. le sens du lemme analysé, sous la forme d'une relation en langue naturelle établie en fonction de la valeur de la base

      (5) appauvrir/VERBE ==> [ a [pauvre ADJ ] VERBE] (appauvrir/VERBE, pauvre/ADJ) " Rendre pauvre"

    2. Plat : chaque résultat est formulé sous la forme d'une suite linéaire d'informations, complétée par une série de traits caractérisant chaque élément de la famille du lemme analysé (voir exemple 4). Le format plat est notamment destiné à alimenter une base de données. Il sert aussi de pivot au format xml (cf ci-après) :

      (6) 2,ADJ/a/pre/VERBE+pauvre/ADJ" Rendre pauvre" pauvre/ADJ: @1 [typeA = propriété, borne = oui, binit = oui ] appauvrir/VERBE: [ aspect = accompl ; sous_cat = < NPagent, @2 NPpatient > ] ; rel = prop( @1 ) = état_final( @2 )

    3. xml : le format de sortie consiste en une arborescence xml :
      <?xml version='1.0' encoding='ISO-8859-1'?>
      <Derif version='v3'>
          <DerifResult>
              <Lemme>appauvrir</Lemme>
              <Category>VERBE</Category>
              <Analyses NbDInterpretations='1' NbDInterpretationsConstruites='1'>
                      <Analyse>
                             <AsItWas> 
                                 2,ADJ/a/pre/VERBE+pauvre/ADJ" Rendre pauvre" 
                              </AsItWas>
                              <FamilySize>2</FamilySize>
                              <Steps>
                                   <Step number='1' >
                                       <Derived>appauvrir</Derived>
                                       <DerivedCategory>VERBE</DerivedCategory>
                                       <MorphologicalProcess>a</MorphologicalProcess>
                                       <MorphologicalProcessType>pre</MorphologicalProcessType>
                                       <Base>pauvre</Base>
                                       <BaseCategory>ADJ</BaseCategory>
                                   </Step>
                              </Steps>
                              <InputBaseRelation> Rendre pauvre</InputBaseRelation>
                              <InputBaseRelationModel> Rendre ADJ</InputBaseRelationModel>
                      </Analyse>
              </Analyses>
          </DerifResult>
      </Derif>
      

    Commande

    Analyse à partir du clavier

    Taper l'une des trois commandes suivantes, en fonction du format de sortie que vous désirez (triplet, plat, xml) :

    Analyse à partir des données d'un fichier

    perl derif.pl --entree ADRESSE_FICHIER_ENTREE --sortie ADRESSE_FICHIER_SORTIE --format FORMAT