Ressources pour le TSNLP
Un article de Loria Wiki.
Cette page regroupe les informations utiles pour pouvoir utiliser les ressources développées pour analyse (génération) basée sur la TSNLP.
Sommaire |
Les ressources
Les ressources se trouvent sur /local/led/data/gram-eval.
Parmi les ressources en question, nous avons :
- la métagrammaire (./grammar)
- le lexique de lemmes (./lexicon/lemmas.syn)
- le lexique morphologique (./lexicon/morph)
(tous trois ont été développés dans par Benoît Crabbé dans le cadre de sa thèse).
- des corpus de test (./dest): ambiguity - grammatical - ungrammatical.
- les phrases à analysé (./source)
Format des lexiques
- la grammaire produite respecte le format du système XMG, à savoir format XML (DTD disponibles sur http://sourcesup.cru.fr/xmg).
N.B.: cette métagrammaire génère une grammaire du français à large couverture (+ de 6000 arbres). La documentation de cette grammaire se trouve sous http://www.loria.fr/~crabbe/FrenchTAG. Il convient d'éliminer les éventuels doublons à l'aide du CHECKER. En outre, un script perl de génération des familles en fonction du corpus à analyser a été développé afin de ne compiler qu'une sous-grammaire. Ce script s'appelle corpus2val.pl et est disponible localement par dépôt darcs à l'adresse /users/led/parmenti/DARCS/DyALog/. Vous pouvez aussi l'obtenir en envoyant un mail à parmenti at loria point fr.
Usage:
perl corpus2val.pl corpus lemmmas morphs GeneratedFamilies.mg
Afin de vérifier que le lexique fait bien appel à des familles présentes dans la MG, un autre script perl est disponible sous ce même dépôt darcs: checkFamilies.pl.
Usage:
checkFamilies.pl GeneratedFamilies.mg valuation.mg Output
- Une entrée dans le lexique de lemmes a la forme suivante : lemme \t cat \t famille \t [att=val,...] comme dans l'extrait de lexique ci-dessous :
aborder v n0Vn1 [aux = avoir,aux-refl=-] aborder v n0Vn1 [aux = etre,aux-refl=+] accepter v n0V [aux = avoir] accepter v n0Vn1 [aux = avoir,aux-refl=-] accepter v n0Vn1 [aux = etre,aux-refl=+] accord n noun
- Une entrée dans le lexique de formes fléchies suit le schéma : forme_fléchie \t lemme \t [att=val;...]
aborde aborder [pos = v; mode = ind; pers = 1; num = sg;] aborde aborder [pos = v; mode = ind; pers = 3; num = sg;] aborde aborder [pos = v; mode = imp; pers = 2; num = sg;] aborde aborder [pos = v; mode = subj; pers = 1; num = sg;] aborde aborder [pos = v; mode = subj; pers = 3; num = sg;] accepte accepter [pos = v; mode = ind; pers = 1; num = sg;] accepte accepter [pos = v; mode = ind; pers = 3; num = sg;] accepte accepter [pos = v; mode = imp; pers = 2; num = sg;] accepte accepter [pos = v; mode = subj; pers = 1; num = sg;] accepte accepter [pos = v; mode = subj; pers = 3; num = sg;]
Sémantique
Ajout dans le format TSNLP
Claire et Eric souhaitent ajouter de la sémantique directement dans le format TSNLP, mais nous ne savons pas encore exactement à quoi ça semblerait. Ça serait normalement un champ supplementaire à la fin de la ligne, mais on serait peut-être aussi obligé de l'étendre.
aborder v n0Vn1 [aux = avoir,aux-refl=-] aborder<exp,cause>
Workflow proposé :
- Claire fait son lexique avec le format tentative
- On modifie le format au fur et à mesure pour l'évaluation GenI
- On propose le format modifié à Calligramme et aussi aux developpeurs de LLP2 et à Yannick pour DyaLoG
- Réunion, réiteration, etc etc.
Ajout dans le format .lex (format developpé par Benoit pour evalda)
Une autre possibilité est d'intégrer la sémantique dans le format plus verbeux .lex. En effet, dans ce format est prévu un champ SEM. L'idée est d'intégrer au lexique les informations sémantiques nécessaires pour la génération ou l'analyse avec construction sémantique. Cette information correspond à des structures prédicats-arguments tels que définis dans la (méta)grammaire. D'où l'idée de passer par des macros lexicales (voir Common grammar manifesto/Lexical macros). Dans cet optique on aurait dans le champ SEM des appels à des macros sémantiques produites par le compilateur de méta-grammaire :
*ENTRY: aimer
*CAT: n
*SEM: binaryRel[rel_=aimer,theta1_=agent, theta2_=patient]
*ACC: 1
*FAM: n0Vn1
*FILTERS: []
*EX: {}
*EQUATIONS:
*COANCHORS:
Voir aussi
- Lexique pour la TSNLP (Calligramme)
- Grammaire sémantique
- /Archive1 -- conversion vers le GDE
