• Aucun résultat trouvé

Mesures de distance entre chaînes et autre méthodes de filtragefiltrage

des Langues Assisté par Ordinateur

3.2 Traitement des erreurs orthographiques ou ty- ty-pographiquesty-pographiques

3.2.2 Typologies des erreurs d’orthographe

3.2.3.10 Mesures de distance entre chaînes et autre méthodes de filtragefiltrage

Les différentes méthodes de recherche de mots décrites précédemment trouvent souvent des mots trop éloignés du mot original. Le nombre de mots retrouvés peut être considérablement élevé, comme nous le verrons au chapitre 6. C’est pourquoi dans cette section, nous décrivons quelques méthodes de mesure de distance entre chaînes, destinées à filtrer les résultats.

Ladistance lexicographiqueentre deux chaînes de caractères (ou plus sim-plement deux mots) est le calcul du nombre minimal d’opérations nécessaires pour transformer une chaîne vers une autre. Les opérations possibles sont l’insertion, la substitution et l’effacement. La mesure de distance la plus connue, la distance de Levenshtein (Levenshtein, 1966), est une métrique simple entre deux chaînes, où chaque opération a un coût de 1. La distance est comprise entre 0 et la taille de la plus grande des deux chaînes com-parées. L’algorithme est de complexité O(m×n), ou m et n représentent la longueur des chaînes respectives. La distance de Levenshtein peut être pondérée par la longueur des chaînes comparées : le score obtenu est alors divisé par la somme des longueurs des deux chaînes comparées.

La figure (3.3) montre les opérations nécessaires à la transformation de intention vers exécution. Ainsi, la distance de Levenshtein entre ces deux chaînes est de 6. Une variante de cette métrique interdit l’opération de sub-stitution et la remplace par une insertion suivie d’un effacement, ce qui revient à donner un coût de 2 à la substitution. Dans ce cas, la distance entreintention vers exécution sera de 10.

Jurafsky et Martin (2000, pp. 153 ss.) présentent un algorithme dyna-mique de calcul de distance entre une chaîne source et une chaîne cible, inspiré de Levenshtein (1966). Nous y reviendrons au paragraphe 6.1.2.1.

Une telle mesure de distance est également applicable à la phonétique27.

27. Voir notamment le correcteur orthographique en logiciel libre GNU-ASPELL,http:

//aspell.net/, dernière consultation le 13.04.10.

i. intention ii. effacement dei

ntention

iii. substitution den pare etention

iv. substitution det par x exention

v. substitution dee paré exéntion

vi. insertion deu exénution

vii. substitution den parc exécution

Fig.3.3 –Transformation de intentionà exécution pour calculer la distance entre deux chaînes

Par contre, l’algorithme Similar-Text 28 (Oliver, 1993) retourne sim-plement le nombre de lettres qui se retrouvent entre deux chaînes et détermine un pourcentage de similarité. L’algorithme est de complexité O(max(m,n)×3). Une autre mesure, la distance de la plus longue séquence commune (longest common subsequence distance, Needleman et Wunsch, 1970, cité par Navarro, 2001), n’autorise que les insertion et suppressions.

Elle consiste à mesurer la plus grande séquence de caractères communs à deux chaînes en respectant leur ordre. La distance est le nombre de carac-tères sans correspondant dans l’autre chaîne.

La distance de Hamming (Hamming, 1950) compare deux chaînes de longueur égale et calcule le nombre de substitutions sur la même position.

Ainsi,bain etbien auront une distance de 2, car les lettres betn, qui sont à la même position, sont identiques, mais pas les autres lettres en gras.

La techniquethree-way match procède à au plus trois comparaisons pour calculer une distance. Un poids est calculé d’après la position du caractère dans l’erreur, d’après la proximité du caractère sur le clavier et d’après la proximité phonétique du son, d’après la taille de la chaîne et la distance d’édition. Soient S la chaîne inconnue, M le mot du lexique, n la posi-tion du caractère dans la chaîne inconnue etm la position dans le mot du lexique : si caractère(n) et caractère(m) ne sont pas identiques, on procède aux comparaisons entrecaractère(m)etcaractère(n+1)et entrecaractère(n)

28.http://php.benscom.com/manual/fr/function.similar-text.php, consulté le 29 septembre 2006.

etcaractère(m+1). Par cette méthode, on peut retrouver les erreurs de per-mutation, effacement, insertions et substitutions. Les mots du lexique sont classés par ordre alphabétique de la première lettre et par ordre de longueur croissant.

Enfin, Church et Gale (1991) proposent de classer les propositions d’un correcteur à l’aide d’un filtre probabiliste bayésien, basé sur une estimation de probabilité du mot, sur des fréquences d’erreurs et sur le contexte droit et gauche du mot candidat (calculé sur des probabilités de co-occurrence).

3.2.4 Logiciels

Dans cette section, nous décrivons quelques logiciels de correction ortho-graphique. Nous avons déjà passablement décrit les ouvrages des pionniers comme Morris et Cherry (1975), avec la recherche par trigrammes, ou LAD-DER(Hendrixet al., 1978) ou Berghel (1987) avec la similarité par chaînes.

Sitbon et al. (2007) décrivent un correcteur destiné aux personnes dysor-thographiques, qui utilise des matrices de confusion phonétique et procède à l’aide de transducteurs (§3.3.4.1).

Dans le domaine de l’ALAO, Kempen (1992, §B.2.15) utilise l’analyse de triphones pour un correcteur du néerlandais couplé à un analyseur. Par contre, Vosse (1992, §C.36) utilise à la fois des triphones et des trigrammes pour sélectionner des mots appropriés ; ces mots sont ensuite ordonnés par un mécanisme de calcul de score et de classement. Véronis (1988b, §C.35) propose une technique de correction phonétique du français par substitu-tion de chaînes phonétiques similaires. Enfin, pour le correcteur CELINE (§C.5), Courtin et al.(1991) passent par une double conversion graphèmes-phonèmes-graphèmes pour trouver des propositions plausibles.

Passons maintenant à des correcteurs par règles. Le tuteur intelligent SPELLER(de Haan et Oppenhuizen, 1994, §B.4.32) est destiné à apprendre aux apprenants néerlandophones de l’anglais à résoudre des problèmes d’or-thographe. Le système traite 15 000 mots et se concentre sur les erreurs pho-nétiques et les erreurs typographiques (inversion, substitution et omission).

Il identifie les stratégies et connaissances de l’apprenant et lui rappelle les erreurs du même type qu’il a déjà commises. Par ailleurs, Pijlset al.(1987), Kempen (1992) et Bos (1994) utilisent une correction par règles pour un conjugueur du néerlandais.

A cause de la richesse morphologique de la langue basque, le correcteur XUXEN (§C.37, Agirre et al., 1992; Aduriz et al., 1991) utilise un

analy-seur morphologique. Certaines erreurs fréquentes sont entrées directement dans le lexique. Quant aux autres erreurs typographiques, elles sont cor-rigées par analyse de trigrammes. Pour des raisons d’efficacité, seules les trois premières corrections retrouvées sont proposées à l’utilisateur. Succes-seur du correcteur précédent,XuxenII (Aldezabalet al., 1999) est basé sur des transducteurs qui recherchent tous les lemmes possibles d’une forme.

L’utilisation de dictionnaires d’utilisateurs permet d’étendre la couverture du correcteur.

Monson et al. (2004) présentent un correcteur orthographique pour le mapundungun, la langue des Mapuche, indigènes du Chili et Argentine.

Cette langue a une morphologie très riche29 en adaptant le correcteur or-thographique MySpell, inclus dans le logiciel libre de bureautique OpenOf-fice. Quant à Enguehard et Mbodj (2004), ils discutent des problèmes liés à la correction orthographique des langues africaines, dont la morphologie est également complexe.

Le correcteur SANTY (§B.5.18 Rimrott, 2003) procède à une correction morphologique en tentant de retrouver les radicaux potentiel d’un mot in-connu. De même, le correcteurSkryba (§C.32, Nicholaset al., 2004) corrige les erreurs d’orthographe grâce à des règles morphologiques et phonétiques.

Ben Othmane Zribi et Zribi (1999) évoquent les problèmes particuliers posés pour la correction de l’arabe. Les mots doivent parfois être voyelli-sés. De plus, l’arabe est une langue agglutinative qui utilises des affixes et des enclitiques (pronoms) et proclitiques (adverbes, prépositions et conjonc-tions). En outre, cette langue contient de nombreux lexèmes très voisins les uns des autres. Les propositions candidates pour la correction d’un mot peuvent donc être très nombreuses. Le correcteur est donc accompagné d’un analyseur morphologique, qui découpe les formes en proclitique, radical et enclitique.

3.2.5 Discussion

Terminons notre survol de la correction orthographique par quelques considérations. Cette technique est robuste et éprouvée et fonctionne de ma-nière satisfaisante pour les utilisateurs. Toutefois, certaines caractéristiques comme la recherche phonétique et certaines règles d’erreurs ne sont pas

adap-29. La racine du verbe est suivie de marques de personne, de temps et de mode ; de plus, la forme peut être nominalisée ou adverbialisée ; enfin, entre la racine et les morphèmes finaux, on peut encore insérer des morphèmes indiquant l’aspect, le temps, la direction et l’accord avec l’objet.

tées aux apprenants d’une langue : ceux-ci confondent certains phonèmes (notamment les voyelles nasales), ils utilisent incorrectement les règles de conversion phonème-graphème, ils omettent les accents et les apostrophes, etc. Un bon correcteur doit être adapté à leurs besoins. Cependant, nous manquons de données fines sur les erreurs fréquentes des apprenants et sur les erreurs qui dépendent de la langue première. Ces indications seraient pourtant précieuses, notamment pour mieux ordonner les propositions. Nous reviendrons largement sur cet aspect au chapitre 6.

Par ailleurs, nous pouvons remarquer que la correction orthographique n’est pas un sujet de recherche très prisé. Il existe peu de publications com-paré à d’autres domaines. Nous verrons plus tard que bien plus de projets de recherche portent sur la détection et la correction d’erreurs grammaticales.

Enfin, terminons par quelques considérations sur des pistes d’améliora-tion possible. Comme nous l’avons déjà souligné au paragraphe 3.1.1.4, il serait souhaitable d’utiliser un analyseur morphologique pour tenter de dé-composer les mots inconnus, de retrouver la ou les racines potentielles et éventuellement d’aider l’apprenant, à travers un dialogue, à retrouver une forme correcte. Les outils comme les déclineurs et conjugueurs sont aussi une précieuse aide à la rédaction30. Par ailleurs, des accès à des dictionnaires monolingues et bilingues seraient recommandables, ainsi qu’à des lexiques conceptuels plus évolués comme nous l’étudions en 3.5.