|
|
|
Transcription des règles d'erreurs, de An Gramadóir vers LanguageToolTranscription des règlesMyriam a écrit un peu plus de 500 règles d'erreurs pour An Gramadóir. Cette semaine, nous les avons importées dans LanguageTool. Pour cela nous avons dû les réécrire en XML. Bien sûr, nous n'avons pas fait ce travail manuellement. Nous avons écrit un petit programme permettant de transcrire les règles automatiquement dans le bon formalisme.Par exemple, la règle de An Gramadóir du type : <DS>ANYTHING</DS> <JS>ANYTHING</JS> <NP>ANYTHING</NP>:NOMBRE a été réécrite en : <rule> <pattern mark_from="2"> <token postag="D .* s" postag_regexp="yes"/> <token postag="J .* s" postag_regexp="yes"/> <token postag="N .* p" postag_regexp="yes"/> </pattern> <message>Il y a une erreur d'accord en nombre</message> <example type="correct">le beau château</example> <example type="correct">les beaux châteaux</example> <example type="incorrect">le beau châteaux</example> </rule> Quelques modificationsNous avons dû par la suite retravailler un peu le fichier XML généré.Pour la plupart des règles, nous avons personnalisé le message d'erreurs et les exemples. Nous avons aussi effectué plusieurs modifications sur les règles relatives aux syntagmes verbaux. Le formalisme XML est plus souple que celui de An Gramadóir, ce qui nous a permis de faire des simplifications et de regrouper plusieurs règles en une seule. Dans An Gramadóir, il faut par exemple 4 règles pour dire qu'il y a une erreur si :
Dans LanguageTool, nous avons pu tout regrouper en une seule règle : <rule name="je + (x) + V"> <pattern> <token postag="R pers suj 1 s" postag_regexp="yes" skip="1"/> <token postag="V .* 1 p|V .* 2 .*|V .* 3 .*" postag_regexp="yes"/> </pattern> <message>Le pronom personnel n'est pas accordé avec le verbe</message> <example type="correct">je travaille</example> <example type="incorrect">je travaillons</example> </rule> Dans An Gramadóir, nous pouvons aussi trouver une règle différente pour "il", "elle", "on", "elles" et "ils". Il semblait plus logique de généraliser ces règles pour les regrouper. Ainsi, les 5 pronoms sont traités dans seulement 2 règles qui concernent les pronoms personnels sujets, à la 3ème du singulier pour "il", "elle" et "on", ou bien du pluriel pour "ils" et "elles". Par ailleurs, nous avons rajouté les cas de "elle" et "elles" dans certaines règles car ils avaient été oubliés. Quelques testsAprès ces modifications, nous avons effectué quelques tests. Nous avons alors remarqué plusieurs problèmes.
Quelques ajouts possiblesNous avons étudié un corpus d'erreurs à notre disposition. Nous avons d'abord éliminé les phrases contenant des fautes d'orthographe et non de grammaire. Nous avons ensuite fait un petit classement des phrases restantes, en 4 catégories :
Pour le moment, nous allons nous concentrer sur la seconde catégorie. Nous avons vu que nous pourrions créer des règles sur la négation, rajouter des règles sur l'accord des participes passés après le verbe être (par exemple : sont+ppa => le ppa doit être au pluriel), modifier les règles actuelles sur les accords des verbes pour qu'elles tiennent compte de l'insertion possible d'un ou plusieurs mots entre le sujet et le verbe, le verbe et le participe passé, etc... Un désambiguïseur pour bientôt ?Marcin Milkowski a proposé de travailler sur l'implantation du désambiguïseur qui nous posait problème. Si tout va bien, nous devrions en disposer très prochainement. Nous pourrons alors faire en sorte d'avoir un minimum de désambiguïsation pour pouvoir travailler sur les règles d'erreurs dans de meilleures conditions.Important announcement: Join the Nuxeo team and contribute to the Nuxeo project! We have open positions in France and the UK for open source Java EE developers and sales engineers, both junior and senior. |
Nuxeo Bloggers: Log in! Search Nuxeo Blogs
Archives
Categories
Nuxeo Bloggers
Photos and Pictures
|
|
Nuxeo -
Indesko -
Nuxeo 5 Project
All content is copyrighted by their author. CPSSkins is Copyright © 2003-2006 by Jean-Marc Orliaguet. | CPS is Copyright © 2002-2006 by Nuxeo SAS. |