Document Actions
07/19/2007
The end of my work on French grammar checking
I have finished my first work on LanguageTool. I have adapted the tool to French grammar checking. The following resume presents the end of this work.
You can download the report ( Mémoire) and the slides ( Soutenance). They are written in French.

Work on rules

As I explained previously, at the beginning of the French grammar checker project, Myriam Lechelt has worked on An Gramadóir. She has written many disambiguation and correction rules. Since An Gramadóir was limited and did not really suit to French, it was abandoned.

During my work, I have converted An Gramadóir's rules to LanguageTool. Thanks to Marcin Miłkowski who implemented a disambiguator, according to my instructions, I could import disambiguation rules as well as correction rules. Moreover, I simplified them a lot and I considerably reduced their number thanks to the XML language.

Then, I have analysed a corpus of mistakes (V. Lucci et A. Millet, 1994, L'orthographe de tous les jours, enquête sur les pratiques orthographiques des français, Editions Champion) and I have extracted  new grammar rules from it.

LanguageTool can detect the following kind of mistakes :
  • phonetic proximity (confusion of homophones like ont and on, ça and sa, etc.)
  • mistakes in verb phrases (confusion between infinitive and past participle, conjugated form and past participle, etc.)
  • subject-verb agreement (personal pronoun or noun phrase with only a determiner and a noun)

Limits of the formalism

While working on the rules, I made tests that showed me the limits of the formalism of LanguageTool. Because of the rigid pattern matching on which it is based, if the patterns described in the rules do not exactly match the text, the rules become inefficient and prevent some mistakes from being detected. Moreover, it is necessary to foresee every wrong combination of words to describe them in the rules. It leads to a combinatory explosion of the number of rules, especially in noun phrases.

The formalism also generates lots of wrong alarms, because of ambiguities or wrong tags. Some mistakes can be detected simultaneously several times by different rules. And when a word is wrong, it can cause wrong alarms on nearby words, since the rules are based on the context.

New formalism

I have developed a new formalism to improve French grammar checking in LanguageTool. It is based on chunks and unification of features structures (see An alternative with chunks and unification). I mix a contextual syntactic theory (chunks, Abney) and a generative syntactic theory (unification, Chomsky). This is not a typical combination, but it makes possible to go further in grammar checking by delimiting an area in the sentence where all words must agree. It is then no longer necessary to describe all wrong combinations of words. Instead of listing agreement mistakes, inconsistencies are detected in phrases.

Conclusion

Thanks to my work for my MPhil, French grammar checking is available for OpenOffice.org. But there is still a lot of work left. It is necessary to create a tool compatible with the new formalism, and to build and analyse a corpus of mistakes to write new grammar rules.

A new approach for grammar checking

To improve grammar checking, I am considering another method which consists in doing at the same time the morphosyntactic analysis and the grammar checking, while the sentence is read. This "left-right" method is based on the principle of latencies (Tesnières, 1959). With the declaration of what is expected after a word or a phrase, inconsistencies can be detected, instead of listing all possible mistakes.
This approach will also solve the problem of the vicious circle in grammar checking. Indeed, for mistakes to be detected, the tagging must not be wrong. But for it to be correct, the text must not contain any mistake...
Posted by Agnes Souque @ 07/19/2007 04:34 PM. - Categories: indesko, openoffice -  0 comments
07/13/2007
Mémoire et slides (Correction grammaticale du français)
Voici mon mémoire de recherche ainsi que les slides de soutenance.

Le travail que j'ai effectué est integré à LanguageTool et utilisable dans OpenOffice.org en tant qu'extension. Le fichier ainsi que les instructions d'installation sont disponibles sur le site de LanguageTool.

D'autres personnes ont commencé à écrire de nouvelles règles pour le français, pour augmenter la couverture de correction de LanguageTool. La base de règles évolue donc régulièrement.

Il reste encore beaucoup de travail...
Posted by Agnes Souque @ 07/13/2007 03:04 PM. - Categories: indesko, openoffice -  0 comments
Bilan du travail sur le correcteur grammatical LanguageTool


J'ai terminé mon premier travail sur LanguageTool, qui consistait à adapter cet outil à la correction grammaticale du français. Voici un résumé qui présente la fin de ce travail.

Travail sur les règles

Grâce à Marcin Miłkowski qui a développé un désambiguïseur selon mes indications, j'ai pu convertir au formalisme de LanguageTool toutes les règles de désambiguïsation et de correction écrites pour An Gramadóir. Le langage XML m'a permis de beaucoup simplifier les règles et de réduire leur nombre en faisant des regroupements.

J'ai par la suite analysé un corpus de fautes (V. Lucci et A. Millet, 1994, L'orthographe de tous les jours, enquête sur les pratiques orthographiques des français, Éditions Champion) afin d'en extraire de nouvelles règles de correction.

LanguageTool détecte actuellement des erreurs :
  • de proximité phonétique (confusion d'homophones : ça/sa, ont/on, cet/cette/c'est/ces, etc.)
d'accord dans le syntagme nominal (en genre et en nombre)
  • dans le groupe verbal (confusion infinitif et participe passé, forme conjuguée et participe passé, etc.)
  • d'accord sujet-verbe (pronom personnel sujet ou syntagme nominal simple : déterminant + nom)

Limites du formalisme

Avec des tests effectués lors du travail sur les règles, j'ai pu constater les faiblesses du formalisme de LanguageTool. Il se fonde sur le pattern-matching rigide, ce qui implique que si les modèles décrits dans les règles ne correspondent pas exactement au texte, au mot près, les règles deviennent inefficaces et génèrent du silence dans la détection des fautes. Par ailleurs, il faut prévoir toutes les combinaisons de mots erronées. On obtient ainsi une explosion combinatoire des règles, surtout pour les syntagmes nominaux.
Le formalisme est aussi à l'origine de beaucoup de bruit (mauvaises détections). Les mots mal étiquetés ou ambigus, par exemple, provoquent des fausses alarmes. Nous avons des détections redondantes lorsque certaines erreurs sont détectées par plusieurs règles différentes simultanément. Enfin, les règles se fondant sur le contexte immédiat des mots, une erreur sur un mot peut entrainer de fausses détections en cascade sur les autres mots du contexte.

Nouveau formalisme

Pour dépasser les limites de LanguageTool, j'ai développé un nouveau formalisme, fondé sur la segmentation en chunks et l'unification de structures de traits. Je mêle ici une théorie syntaxique contextuelle (chunks, Abney) et une théorie syntaxique générativiste (grammaire d'unification, Chomsky). Cette combinaison est atypique, mais elle permet d'aller plus loin dans la correction grammaticale, en délimitant des zones de calculs à l'intérieur desquelles tout doit s'accorder. Il n'est alors plus nécessaire de décrire toutes les combinaisons de mots erronées. Au lieu d'énumérer les fautes d'accord, nous détectons les incohérences au sein des syntagmes.

Conclusion

Mon travail de mémoire de Master Recherche permet de doter OpenOffice.org de la correction grammaticale pour le français. Il reste cependant beaucoup de travail en perspective. Il faut notamment développer un outil capable de prendre en charge le nouveau formalisme, et également constituer et analyser un corpus de fautes pour modéliser de nouvelles règles de correction.

Vers une autre approche de la correction grammaticale

Pour améliorer encore la correction grammaticale, j'envisage une autre approche. Elle consiste à effectuer simultanément l'analyse morphosyntaxique et la correction grammaticale au fur et à mesure de la lecture de la phrase. C'est une approche gauche-droite qui se fonde sur le principe de latences (Tesnières, 1959). Elle permet de déclarer ce qui est attendu après un mot ou un syntagme et de détecter ainsi les incohérences, au lieu d'énumérer les fautes possibles.
Cette approche permet aussi de sortir du cercle vicieux en correction grammaticale. En effet, pour que les fautes soient bien détectées, les mots doivent être bien étiquetés morphosyntaxiquement. Mais pour que le calcul des étiquettes soit correct, le texte ne doit pas contenir de fautes...
Posted by Agnes Souque @ 07/13/2007 03:04 PM. - Categories: indesko, openoffice -  0 comments
Last modified: 03/15/2007 06:55 PM

Nuxeo Bloggers: Log in!
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.