• Aucun résultat trouvé

Chapitre 7 : Présentation et développement des outils TAL

4 Amélioration et développement des outils pour l’Arabe

4.4 Amélioration d’ASVM et construction d’un nouveau corpus arabe

4.4.1 Mise à jour du segmenteur d’ASVM

4.4.1.1 Développement

Avant d’intégrer l’analyseur morphologique ASVM dans notre plate-forme nous

avons décidé d’améliorer les performances de l’analyseur ASVM en corrigeant les erreurs

faites par son segmenteur.

Pour corriger ces faiblesses, nous avons développé un outil sous la forme d’un script

Perl qui normalise le texte à analyser avant la phase de segmentation et corrige la sortie de

segmenteur d’ASVM. D’abord, avant de lancer ASVM l’outil normalise les deux lettres « ى »

ay et « ي » ya (la seule différence entre ces deux lettres est la présence de deux points sous la

lettre ya). Cette étape consiste à vérifier dans un dictionnaire qui contient 392 000 mots arabes

(la description de la construction de ce dictionnaire est décrite dans la section 4) à l’aide d’une

Chapitre 7 : Présentation et développement des outils TAL

133

expression régulière si les mots dans le texte sont écrits avec la lettre « ى » ou la lettre « ي ».

Si le mot est trouvé dans le dictionnaire, mais avec la mauvaise lettre alors l’outil remplace le

mot du texte par celui trouvé dans le dictionnaire. Par exemple, le mot « ىلإ » ILA écrit avec

la lettre « ى » sans les deux points au-dessous de la lettre sera remplacé après la vérification

dans le dictionnaire par le mot « يلإ ». Si l’outil trouve le mot dans le dictionnaire avec les

deux variantes (c’est-à-dire ce mot peut être présenté sous les deux formes avec la lettre « ى »

et la lettre « ي » comme le mot « ىلع » sous et le mot « يلع » Ali), il ne modifie pas le mot et

passe aux mots suivants. Dès que l’étape de normalisation est effectuée, l’outil lance le

module de la segmentation d’ASVM. Ensuite, notre outil corrige les erreurs liées à la

mauvaise segmentation de l’article « لا » AL. L’outil identifie tous les mots qui commencent

par l’article « لا ». Par la suite, il cherche dans le dictionnaire si le mot courant existe sans

l’article « AL », si oui, alors l’outil segmente le mot au niveau de l’article en deux (par

exemple, le mot « تيبلا » devient « لا » + « تيب »). Sinon, l’outil ne modifie pas le mot et passe

aux mots suivants. Enfin, l’outil corrige la confusion faite par le segmenteur d’ASVM sur le

marqueur de féminin. L’outil vérifie si le mot segmenté peut avoir une forme masculine,

c’est-à-dire le mot existe dans le dictionnaire avec les deux formes (masculin et féminin).

Dans ce dernier cas, l’outil segmente le mot en deux (mot + marqueur de féminin « ة »). Par

exemple, le mot « ةيناجم » gratuite est féminin, ce dernier est présent dans le dictionnaire sous

les deux formes masculin et féminin, alors l’outil segmente ce mot en deux : « يناجم » + « ة ».

Dans la suite de ce chapitre, nous allons appeler l’étiqueteur ASVM initial par ASVM1 et

l’étiqueteur ASVM avec la correction de module de segmentation par ASVM2.

134

Figure 42 : Nouveau principe du module de segmentation d’ASVM après la correction

4.4.1.2 Construction d’un corpus arabe pour l’évaluation

Afin de vérifier la qualité de notre outil, nous avons besoin d’un corpus arabe

segmenté et annoté. Comme les ressources arabes sont rares est parfois inexistants, nous

n’avons pas trouvé de corpus fiable et libre pour la langue arabe. Les corpus trouvés sont soit

étiquetés automatiquement soit non segmentés. Dans le cadre de notre thèse, nous avons

décidé de construire notre propre corpus manuellement. Pour ce faire, nous avons adopté une

approche rapide en utilisant le Web, l’analyseur morphosyntaxique ASVM et quatre linguistes

arabes. Actuellement, l’utilisation du Web pour la construction rapide des corpus dans

Chapitre 7 : Présentation et développement des outils TAL

135

différents domaines et différentes langues devient de plus en plus fréquente (Meftouh et al,

2007). Après quelques recherches et analyses des contenus des sites web journalistiques

arabes tels que Aljazeera, Alhayet, Alwatan, nous avons choisi le site d’Aljazeera vu la

qualité de ses textes ainsi que la richesse de son contenu (politique, économique, tourisme,

sport, etc).

La procédure de construction du corpus se déroule en trois phases : construction du

corpus à partir du Web, prétraitement automatique, correction manuelle.

a. Construction du corpus à partir du Web

La première tâche est d'acquérir des données textuelles dans la langue arabe à partir du

site Aljazeera. Pour cela, nous avons développé un outil en Perl qui aspire les pages html à

partir d’une adresse web donnée. Pour assurer la richesse de notre corpus en vocabulaire, nous

avons choisi six thèmes : politique, religion, sport, tourisme, science et technologie et santé.

Après la phase d’aspiration des pages web souhaitées, le corpus obtenu ne peut pas être

exploitable linguistiquement. Donc nous avons développé un deuxième outil pour la

conversion des fichiers HTML en texte brut. La partie cruciale dans cette procédure de

construction du corpus est le nettoyage des fichiers des textes obtenus, c’est-à-dire isoler et

extraire les informations utiles à inclure dans notre corpus. Nous voulons supprimer les

informations non utiles (menu, des liens vers d'autres pages, graphiques, images, les styles, les

scripts). Le tableau suivant donne la taille du contenu des corpus par thème :

Thème Nombre de phrases Nombre de mots

Politique 2321 6902 Religion 1751 19243 Sport 3742 22538 Tourisme 4611 27223 Science et technologie 4367 26751 Santé 5226 28279 Total 19972 130936

136

b. Prétraitement automatique

Pour simplifier la tâche de l’étiquetage manuelle aux annotateurs, nous avons effectué

un premier étiquetage automatique à l’aide de l’outil ASVM2. La première étape consiste à

convertir le corpus obtenu en format Buckwalter (Buckwalter, 2002) car ASVM ne traite que

des textes translittérés en Buckwalter (voir en annexe la table de Buckwalter). Pour cela, nous

avons développé un outil de translittération en Perl qui prend un texte arabe encodé en utf-8 et

rend en sortie un texte translittéré. À la fin, nous avons lancé ASVM2 sur notre corpus pour

obtenir un texte segmenté et étiqueté.

Notons que le jeu d’étiquette pour l’annotation automatique de ce corpus est le même

que celui utilisé par l’analyseur ASVM.

c. Correction manuelle

Comme ce corpus a été créé pour évaluer l’amélioration de module de la segmentation

d’ASVM, alors le corpus doit être fiable et ne pas contenir d’erreurs de segmentation ou

d’étiquetage. La meilleure solution pour corriger notre corpus est de passer par une phase de

vérification manuelle à l’aide des linguistes natifs

28

. D’abord, nous avons divisé le corpus en

quatre parties en conservant la même taille. Ensuite, la phase d’annotation manuelle se

déroule en trois étapes :

- Dans la première étape, chaque annotateur vérifie si la pré-segmentation d’ASVM est

correcte ou non. Dans le cas où la segmentation est fausse, l’annotateur doit corriger

les erreurs.

- De même, dans cette étape, chaque annotateur vérifie si l’étiquetage par ASVM est

correct ou non. Dans le cas où l’étiquetage est faux, l’annotateur doit corriger les

erreurs.

- Dans cette étape, l’annotateur met un astérisque s’il a le moindre doute sur la faute (au

niveau de la segmentation ou bien de l’étiquetage).

Enfin, les annotateurs valident ensemble après une discussion entre eux les fautes où il

y a des astérisques, sachant que le prétraitement du corpus a diminué le temps dédié à la

segmentation et à l’annotation manuelle du corpus.

28

Les linguistes sont des étudiants des langues en Master à l'université Stendhal. Ils sont d'origine tunisiens.

Chapitre 7 : Présentation et développement des outils TAL

137

4.4.1.3 Évaluation

Après la construction du corpus fiable pour la langue arabe, nous pouvons maintenant

évaluer la qualité de l’analyseur ASVM après l’amélioration de son module de segmentation.

La meilleure façon d’évaluer la performance de deux modules (segmentation et étiquetage)

est de calculer le taux de la segmentation correcte et l’annotation correcte sur le corpus

d’évaluation ainsi que la précision et le rappel. Pour cela, nous avons développé un script Perl

que prend en entrée le corpus segmenté et étiqueté automatiquement ainsi que le corpus

étiqueté manuellement. À la fin, le script affiche en sortie le taux, la précision et le rappel

selon les formules suivantes :

- Le rappel mesure la proportion de segmentations correctes faites par ASVM2 par

rapport au total de segmentations correctes.

- La précision mesure la proportion de segmentations correctes faites par ASVM2 par

rapport au total de segmentations possibles.

Le tableau suivant montre les résultats de la segmentation du corpus d’évaluation.

Système Taux Précision rappel

ASVM1 96.7 83.2 86.6 ASVM2 99.8 97.5 99.3

Tableau 24 : Le nouveau résultat obtenu par ASVM2 par rapport à ASVM1 (en %)

Ce tableau montre une augmentation significative de la performance du module de la

segmentation. De plus, nous devons vérifier si notre modification n’a pas affecté le module

d’étiquetage d’ASVM. Le tableau suivant montre les résultats de l’étiquetage de notre corpus

d’évaluation par ASVM1 et ASVM2.

Système Taux ASVM1 90.3 ASVM2 98.8

Tableau 25 : Résultat d’étiquetage obtenu par ASVM1 et ASVM2 (en %)

La performance de l’étiqueteur ASVM2 est nettement supérieur à celle de ASVM1.

Par conséquent, les améliorations du module de segmentation d’ASVM ont augmenté la

138

performance de l’étiquetage et rendent l’analyseur plus utile dans notre plate-forme l’ALAO.

Par contre, il reste encore un faible taux d’erreurs dans les résultats d’étiquetage. Ce problème

reste un défi majeur pour les différents outils du traitement automatique de la langue.