Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion 23ème Conférence sur le Traitement Automatique des Langues Naturelles,AtelierTALAf, Inalco, Paris, 4-8 Juillet 2016 Digraphie des langues ouest africaines : Latin2Ajami : un algorithme de translittération automatique E. M. Fall, E. M. NGUER, S. D. BAO, M. KHOULE, M. MANGEOT, M. T. CISSE LANI, Université Gaston Berger, Saint-Louis, Sénégal LIG, Université de Grenoble Alpes, France. ARCIV, Université Cheikh Anta Diop de Dakar, Sénégal Présentation : El hadji M. NGUER TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion 1 2 2 23ème Conférence sur le Traitement Automatique des Langues Naturelles,AtelierTALAf, Inalco, Paris, 4-8 Juillet 2016 Introduction Translittération du wolof 3 L’algorithme Latin2Ajami 4 Conclusion El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Contexte Problématique Objectifs Contexte Rapport 2014 de OIF, 30% de francophones au Sénégal Frein au développement économique du pays Solution: utiliser les langues nationales comme alternative Comme le wolof, langue véhiculaire et parlée par plus de 80% de la population 3 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Contexte Problématique Objectifs Contexte longtemps écrit en caractères arabes complétés non harmonisés, le wolof est aujourd’hui écrit : • officiellement avec les caractères latins depuis 1971. Cette écriture tire sa force des décrets officiels • Avec les caractères coraniques harmonisés (CCH) ou Ajami depuis 2007 4 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Contexte Problématique Objectifs Problématique Digraphie des langues nationales (caractères arabes et caractères latins) Deux mondes qui s’ignorent mutuellement Solution : Mettre en place des Outils de translittération (document texte, page Web, sms, emails etc…) 5 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Contexte Problématique Objectifs Problématique Ce travail rentre aussi dans le cadre des projets : • Le projet ibaatukaay de base lexicale multilingue contributive sur le web à structure pivot pour les langues africaines notamment sénégalaises (le dico en Ajami) • Le projet de mise en place d’un correcteur orthographique pour la wolof (application à l’ajami) • Le projet de transcription en graphies modernes de textes écrits en caractères arabes anciens en cours d’élaboration à l’Université de Bambey (Sénégal) 5 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Contexte Problématique Objectifs Objectifs Permettre un accès général aux connaissances (TIC, textes juridiques, religieux, etc.) par ces deux groupes de populations et ceci indépendamment du type d’écriture, Etudier et mettre en place un algorithme de translittération automatiquement du latin vers l’Ajami Appliquer l’algorithme pour mettre en place des outils automatiques de translittération de documents textes, de pages web, de SMS, d’emails, etc 6 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Notion de translittération Les deux alphabets de la langue wolof Situation actuelle de l’Ajami Notion de translittération Qu’est ce que la translittération ? chaque graphème d'un système d'écriture un graphème ou un groupe de graphèmes d'un autre système A quoi sert la translittération? Traitement de l’information bibliographique (catalogue, index, références etc..) Clavier azerty pour taper du texte Ajami Document latin-ajami et vice versa etc. 7 El hadji M. NGUER TALN ْت َ ْل ْن TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Notion de translittération Les deux alphabets de la langue wolof Situation actuelle de l’Ajami Les deux alphabets de la langue wolof L’alphabet wolof latin: construit essentiellement à partir de l’alphabet français, lettres même valeur phonétique sauf: et 8 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Notion de translittération Les deux alphabets de la langue wolof Situation actuelle de l’Ajami Les deux alphabets de la langue wolof L’alphabet Ajami: construit essentiellement à partir de l’alphabet arabe, avec l’utilisation de signes diacritiques additionnels pour : ࣸ • La prise en charge des voyelles courtes » « ا َ ا ا ا ࣺا اِ ا ا ا • correspondant aux voyelles « u, ó, o, i, é, e, ë, à, a » du wolof latin La plupart des consonnes proviennent de l’alphabet arabe sauf » ݖ, ݒ, ݝ, ݧ, «گcorrespondant respectivement aux consonnes latins » g, ñ, ŋ, p, c » 8 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Notion de translittération Les deux alphabets de la langue wolof Situation actuelle de l’Ajami Les deux alphabets de la langue wolof Extrait du tableau de correspondance des 2 systèmes 10 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Notion de translittération Les deux alphabets de la langue wolof Situation actuelle de l’Ajami Situation actuelle de l’Ajami Quelques dates significatives 1980 : naissance des CCH Novembre 1987: atelier sur l’harmonisation des systèmes Ajami pour le wolof et le pulaar (ISESCO) En 1995 un séminaire d’extension de l’harmonisation : sérère, jola, soninké et mandika. 2007, l’écriture standard de l’Ajami reconnue officiellement par l’état 2013 : Enseignement des deux écritures à l’Université (UGB) 11 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Notion de translittération Les deux alphabets de la langue wolof Situation actuelle de l’Ajami Situation actuelle de l’Ajami Cependant… Pour chaque langue (Ex: wolof) Ecriture Ajami standard Ecriture latine Ecriture Ajami libre Problème !!! Solutions: • Lancer une politique soutenue de vulgarisation de l’Ajami standard • Mettre en place des algorithmes de translittération entre les deux écritures 11 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajam Conclusion Présentation Organigrammes Exemple d’éxécution Source Latin2Ajami est basé sur les programmes suivants : Programmes de translittération de document texte sous Java et de page web sous PHP (Gueye S. T., Fall T. G, 2011). Avantage : il est décomposé en modules Inconvénients : il utilise les caractères non harmonisés Macro Ajami63 de translittération de document texte par Galen Currah sous Word et OOffice pour le wolof et le sérere Avantage : utilise les CCH mais est écrit d’un seul tenant. inconvénients : difficile à comprendre et à mettre à jour 13 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajam Conclusion Présentation de Latin2Ajami Le principe de l’algorithme est simple. Il se base sur un tableau de correspondance qui consiste uniquement en points d’Unicode, sous forme hexadécimale, un code romain à gauche 13 Lettre latine Code Romain Code Ajami Lettre Ajami , 2C 60C ، d 0064 062F د … … … … El hadji M. NGUER Le code Ajami correspondant à droite TALAf - TALAf : JEP-TALN-RECITAL 2016 Organigramme du programme de l’algorithme de translittération 14 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Organigramme de la fonction de traitement des consonnes 15 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 آ Organigramme de la fonction de traitement des Voyelles 16 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Présentation Organigrammes Exemple d’éxécution Exemple d’éxécution Exemple d’exécution pour la phrase : Ana dëkkandoo yi? S = Ana dëkkandoo yi? S = chr(32)&chr(32)&Ana&chr(32)&dëkkandoo&chr(32)&yi? &chr(32) Len(S) =22 ; Len(S)-1= 21 17 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = Ana dëkkandoo yi? S = chr(32)&chr(32)&Ana&chr(32)&dëkkandoo&chr(32)&yi?&chr(32) 2 a n a 3 4 5 6 d ë k k a 7 8 9 10 11 n d o o 12 13 14 15 i ? 17 18 19 20 Insertion de Alif dans S et on retourne un espace Chr(32) 18 16 y El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëkkandoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k k 8 9 10 11 a n d o o 12 13 14 15 16 Alif 17 y i ? 18 19 20 On retourne Alif ا 18 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution 2 A a lif n a 3 5 6 4 7 d ë k k 8 9 10 11 a n d o o 12 13 14 15 16 a 17 y i ? 18 19 20 On retourne a َ ا 18 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëkkandoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k k 8 9 10 11 a n d o o 12 13 14 15 16 n 17 i ? 18 19 20 On retourne n ن 18 y El hadji M. NGUER َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëkkandoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k k 8 9 10 11 a n d o o 12 13 14 15 16 a 17 i ? 18 19 20 On retourne a َ ن 18 y El hadji M. NGUER َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëkkandoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k k 8 9 10 11 a n d o o 12 13 14 15 16 Chr(32) El hadji M. NGUER i ? 18 19 20 On retourne chr(32) l 18 17 y َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëkkandoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k k 8 9 10 11 a n d o o 12 13 14 15 16 d El hadji M. NGUER i ? 18 19 20 On retourne d د 18 17 y l َ ن َ ا TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëkkandoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k k 8 9 10 11 a n d o o 12 13 14 15 16 ë El hadji M. NGUER i ? 18 19 20 On retourne ë ࣴ د 18 17 y l َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëk”shadda”andoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k k 8 9 10 11 a n d o o 12 13 14 15 16 K El hadji M. NGUER i ? 18 19 20 Insertion de shadda à la place de la seconde consonne et on retourne k ک 18 17 y ࣴ د َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëk”shadda”andoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o o 14 15 16 17 y i ? 18 19 20 shadda On retourne shadda َ ک 18 El hadji M. NGUER ࣴ د l َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëk”shadda”andoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o o 14 15 16 17 y i ? 18 19 20 a On retourne a َ 18 El hadji M. NGUER َ ک ࣴ د َ ن َ ا TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëk”shadda”andoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o o 14 15 16 17 y i ? 18 19 20 n On retourne n , les consonnes nasales ne prend pas de diacritique ن 18 َ El hadji M. NGUER َ ک ࣴ د l َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S = chr(32)&chr(32)&Alif&Ana&chr(32)&dëk”shadda”andoo&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o o 14 15 16 17 y i ? 18 19 20 d D est consonne prénasale et le caractére suivant est une voyelle : on retourne d د 18 ن َ El hadji M. NGUER َ ک ࣴ د l َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S =chr(32)&chr(32)&Alif&Ana&chr(32)&dëk&shadda&ando&”waw”&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o o 14 15 16 17 y i ? 18 19 20 o Insertion d’une consonne à la place de la seconde Voyelle dans s et on retourne o ࣷ د 18 ن َ َ ک El hadji M. NGUER ࣴ د l َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S =chr(32)&chr(32)&Alif&Ana&chr(32)&dëk&shadda&ando&”waw”&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o wa w 14 15 16 17 y i ? 18 19 20 waw On retourne waw و 18 ࣷ د ن El hadji M. NGUER َ َ ک ࣴ د l َ ن َ ا TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S =chr(32)&chr(32)&Alif&Ana&chr(32)&dëk&shadda&ando&”waw”&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o wa w 14 15 16 17 y i ? 18 19 20 Chr(32) On retourne chr(32) l 18 و ࣷ د ن َ El hadji M. NGUER َ ک ࣴ د َ ن َ ا TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S =chr(32)&chr(32)&Alif&Ana&chr(32)&dëk&shadda&ando&”waw”&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o wa w 14 15 16 17 y i ? 18 19 20 y On retourne y ي 18 و ࣷ د ن َ َ ک El hadji M. NGUER ࣴ د َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S =chr(32)&chr(32)&Alif&Ana&chr(32)&dëk&shadda&ando&”waw”&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o wa w 14 15 16 17 y i ? 18 19 20 i On retourne i ِ 18 ي l و ࣷ د ن َ َ ک El hadji M. NGUER ࣴ د l َ ن َ ا l TALAf - TALAf : JEP-TALN-RECITAL 2016 Présentation Organigrammes Exemple d’éxécution Introduction Translittération du wolof Algorithme Latin2Ajami Conclusion Exemple d’éxécution S =chr(32)&chr(32)&Alif&Ana&chr(32)&dëk&shadda&ando&”waw”&chr(32)&yi?&chr(32) 2 A a lif n a 3 5 6 4 7 d ë k shad da 8 9 10 11 a n 12 13 d o wa w 14 15 16 17 y i ? 18 19 20 ? On retourne ? ؟ 18 ِ ي l و ࣷ د ن El hadji M. NGUER َ َ ک ࣴ د l َ ن َ اl TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Plan Translittération Introduction du wolof Présentation Algorithmedes Latin2Ajami Approches Conclusion Application Perspectives Application de Latin2Ajami Translittération de document texte : Ajami70 version améliorée de Ajami63 (en modulaire) Ajami70 réduit de manière conséquente le temps de translittération (100 pages en 2 minutes) au lieu de 1heure pour Ajami63 Ajami70 prend en charge les notes de bas de page, les entêtes et pieds de page contrairement à Ajami63 19 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Plan Translittération Introduction du wolof Présentation Algorithmedes Latin2Ajami Approches Conclusion Application Perspectives Perspectives (Algorithmes) Adapter l’algorithme Latin2Ajami pour la translittération de pages web pour son application dans le projet ibaatukaay. Appliquer l’algorithme Latin2Ajami pour la translittération de système d’exploitation, d’email, sms, etc. Mettre en place l’algorithme Ajami2Latin pour la translittération de texte Ajami vers du texte latin. 25 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Introduction Plan Translittération Introduction du wolof Présentation Algorithmedes Latin2Ajami Approches Conclusion Application Perspectives Perspectives (Macro) Ajout dans la Macro Ajami70 la prise en charge des couleurs, des images, et des tableaux Généralisation de la Macro Ajami70 aux autres langues (surtout le Pulaar et le Bambara pour le projet ibaatukaay) Macro de translittération de Ajami vers le latin 25 El hadji M. NGUER TALAf - TALAf : JEP-TALN-RECITAL 2016 Merci de votre attention Prêt à répondre à vos questions