LIA_PHON : UN SYSTÈME COMPLET DE PHONÉTISATION DE TEXTES


Frédéric BECHET

LIA, Université d'Avignon

frederic.bechet@lia.univ-avignon.fr

 

Résumé *

Abstract *

Mots Clefs – Keywords *

INTRODUCTION *

1. MOTIVATIONS *

1.1. Phonétisation et Reconnaissance Automatique de la Parole *

1.2. Phonétisation et TALN *

1.3. La phonétisation au LIA *

2. FORMATAGE ET ÉTIQUETAGE DE TEXTE *

2.1. Formatage *

2.2. Etiquetage morpho-syntaxique *

2.2.1. Réaccentuation du texte *

2.2.2. Homographes-hétérophones *

2.3. Etiquetage sémantique *

2.3.1. Expressions chiffrées *

2.3.2. Les abréviations *

2.3.3. Les sigles *

2.3.4. Les noms propres *

2.3.5. Formalisme des règles d'étiquetage *

3. PHONÉTISATION *

3.1. Gestion des liaisons *

3.2. Règles de phonétisation *

3.2.1. Bases de règles *

3.2.2. Format des règles *

3.2.3. Stockage des règles *

3.2.4. Application des règles *

3.3. Gestion des exceptions *

3.4. Exemple *

4. EXPLOITATION DES PHONÉTISATIONS *

4.1. Obtention de lexiques phonétiques *

4.2. Phonétisation de textes pour l'alignement *

4.3. Synthèse de parole à partir du texte *

4.3.1. Modification des transcriptions phonétiques *

4.3.2. Paramètres prosodiques *

5. EVALUATION DU SYSTÈME *

CONCLUSION *

RÉFÉRENCES *

 

Résumé


La phonétisation automatique de documents est un domaine de recherche toujours actif permettant de tester et valider efficacement différents modèles issus du Traitement Automatique du Langage Naturel (TALN). Les motivations qui ont conduit le Laboratoire Informatique d'Avignon (LIA) à développer un système complet de phonétisation de textes sont doubles : d'une part disposer d'un outil ouvert et paramétrable permettant d'obtenir les ressources nécessaires à la construction de Systèmes de Reconnaissance Automatique de la Parole (SRAP) ; d'autre part tester et valider différentes techniques utilisées en TALN, notamment concernant le traitement des mots inconnus. Les différents modules de notre chaîne de traitement intègrent des approches diverses utilisant des informations graphiques, phonétiques, morphologiques, syntaxiques et sémantiques.

Abstract


The processes involved in Grapheme-To-Phoneme transcription of documents are a good application field for several techniques and methods used in Natural Language Processing (NLP). The two main reasons which led the computer laboratory of the University of Avignon (LIA) to develop its own Grapheme-to-Phoneme transcription system are: on one hand, we need a flexible tool which allows us to obtain all the necessary resources involved in the building of Automatic Speech Recognition (ASR) systems ; on the other hand, developing a Grapheme-to-Phoneme transcription system was an opportunity to test and validate various NLP methods and tools such as Out-of-Vocabulary word processing.


Mots Clefs – Keywords

Synthèse de la Parole, Transcription Graphème-Phonème, Etiquetage morpho-syntaxique, Reconnaissance Automatique de la Parole, Noms Propres

Speech Synthesis, Grapheme-to-Phoneme Transcription, Part-of-Speech Tagging, Automatic Speech Recognition, Proper Names

 

 

INTRODUCTION

La phonétisation automatique de documents est un domaine de recherche toujours actif permettant de tester et valider efficacement différents modèles issus du Traitement Automatique du Langage Naturel (TALN). En dehors de l'étape de transcription graphème-phonème, généralement traitée par une approche à base de règles (Prouts B. 1980; Divay M. & Vitale A. J. 1997; Boula de Mareüil P. 1997), de nombreux traitements linguistiques sont nécessaires afin de lever les ambiguïtés d'oralisation du texte écrit. Parmi celles-ci, citons les problèmes liés au formatage du texte, aux homographes hétérophones, aux liaisons, à la phonétisation des noms propres, des sigles ou des emprunts à des langues étrangères.

La disponibilité de grandes bases de données d'exemples (telles que des lexiques phonétisés ou des corpus écrits et oraux) ont conduit la communauté scientifique à s'intéresser à des techniques d'apprentissage automatique pour prendre en compte ces problèmes particuliers. Ces techniques regroupent l'apprentissage symbolique (Dietterich T. et al. 1995), les réseaux neuronaux (Sejnowski T. & Rosenberg C. 1987) ou encore les modèles markoviens (Parfitt S. & Sharman R. 1991). Ces méthodes d'apprentissage automatique, identiques celles utilisées dans les Systèmes de Reconnaissance Automatique de la Parole (SRAP), peuvent être employées à divers niveaux dans le processus de phonétisation d'un texte, depuis la phase d'étiquetage lexical jusqu'à la transcription graphème-phonème elle-même (voir (Yvon F. 1996) pour une revue des différentes méthodes automatiques employées dans ce cadre).

Profitant de l'expertise que le LIA avait acquise dans le développement de SRAP, nous avons développé un système complet de phonétisation de textes qui, tout en gardant une approche par règles pour la phase de transcription graphème-phonème, fait collaborer différents agents utilisant des informations graphiques, phonétiques, morphologiques, syntaxiques et sémantiques.

  1. MOTIVATIONS
  2. Les motivations qui ont conduit le LIA à développer un système complet de phonétisation de textes sont doubles : d'une part disposer d'un outil ouvert et paramétrable permettant d'obtenir les ressources nécessaires à la construction de SRAP ; d'autre part tester et valider différentes techniques utilisées en TALN, notamment concernant le traitement des mots inconnus. Nous allons justifier ici ces deux motivations.

     

    1. Phonétisation et Reconnaissance Automatique de la Parole

    Les systèmes de transcription graphème-phonème sont des outils indispensables aux SRAP à travers deux aspects : D'une part les lexiques utilisés lors de la reconnaissance doivent associer à chaque graphie une ou plusieurs formes phonétiques afin d'autoriser une certaine variabilité dans la prononciation d'un mot par un locuteur. D'autre part les modèles acoustiques représentant les unités de base de la reconnaissance ont besoin, durant la phase d'entraînement, de corpus de parole de taille importante retranscrit phonétiquement. Or, les transcriptions disponibles pour ces corpus oraux (tel que le corpus BREF (Gauvain J. et al. 1991)) sont généralement des transcriptions en mots et non pas en phonème.

    Une phase de phonétisation s'avère donc nécessaire afin de calculer un alignement phonétique optimal entre les phrases prononcées et le corpus de parole. Cet alignement conditionne la qualité des modèles appris et en conséquence les performances globales de la reconnaissance. Il est donc primordial de fournir à l'aligneur, pour une phrase donnée, non pas une seule prononciation canonique mais plutôt un espace de phonétisation susceptible de contenir la réalisation du locuteur. Les textes traités étant le plus souvent des textes journalistiques, une attention particulière doit être portée au problème de la prononciation des noms propres et des acronymes, particulièrement fréquents dans ce type de corpus.

     

    1.2. Phonétisation et TALN

    Bien souvent, il est difficile d'évaluer une technique de traitement automatique de texte en dehors de tout contexte applicatif. Notamment en ce qui concerne les techniques d'étiquetage automatique (syntaxique ou sémantique),la pertinence d'une méthode est à juger en fonction de son utilisation dans un contexte particulier : traduction, indexation de documents, filtrage, etc.

    La phonétisation automatique de texte est un domaine intéressant de ce point de vue : les phases de traitements préliminaires au processus de phonétisation ont pour but de rendre le texte aussi peu ambiguë que possible du point de vue de son oralisation. Les ambiguïtés susceptibles d'être levées se situent à divers niveaux : morphologique, lexical, syntaxique et sémantique.

    Ainsi, des systèmes de TALN tels que des réaccentueurs (pour les graphies en majuscule, généralement désaccentuées), des étiqueteurs morpho-syntaxiques (pour les homographes-hétérophones), des analyseurs morphologiques (pour le traitement de flexions ambiguës), des correcteurs orthographiques ou des étiqueteurs sémantiques (pour le traitement particulier des noms propres) peuvent être évalués de manière pertinente à travers une tâche de phonétisation.

     

    1.3. La phonétisation au LIA

    Nos travaux se placent dans la cadre de l'analyse de textes, processus indispensable à la phonétisation de corpus (Tzoukermann E. 1998). A travers les deux aspects mentionnés auparavant, nous avons développé une série d'outils permettant d'une part de produire les ressources nécessaires à la construction de systèmes de RAP ; d'autre part de valider les approches développées dans le domaine de l'étiquetage lexical et plus particulièrement dans le traitement des mots hors-vocabulaires. Ces outils peuvent se décomposer en trois modules: les outils de formatage et d'étiquetage, les outils de phonétisation et les outils d'exploitation des textes phonétisés._ Les outils de formatage et d'étiquetage permettent de traiter le texte brut à phonétiser.

    Cet ensemble d'outils regroupe des modules de découpage(en mots et en phrases), de correction (traitement des capitalisations, des formes désaccentuées et des abréviations) et d'étiquetage (morphologique et syntaxique). A la suite de ces traitements, la plupart des ambiguïtés de prononciation sont levées._ Le module de phonétisation regroupe d'une part un ensemble de bases de règles de phonétisation relatives aux étiquettes préalablement posées et d'autre part un module de traitement des liaisons gérant les liaisons interdites, facultatives et obligatoires.

    Enfin, le module d'exploitation des phonétisations permet d'adapter la sortie du système à l'application visée : gestion des schwas et des pauses pour servir d'entrée à un synthétiseur de parole, génération de prononciations multiples pour la phonétisation de lexiques utilisés dans des SRAP, etc. Nous allons présenter chacun de ces modules à travers une brève description des méthodes utilisées et en illustrant chaque étape par des exemples concrets des sorties de notre système.

     

  3. FORMATAGE ET ÉTIQUETAGE DE TEXTE

Ce module contient l'ensemble des outils permettant de lever les ambiguïtés de prononciation d'un texte brut, à l'exception des ambiguïtés phonologiques graphémiques ou morphologiques qui seront traitées par le module de phonétisation. Les traitements effectués peuvent se décomposer en deux catégories : d'une part les outils permettant de nettoyer et formater le texte à phonétiser ; d'autre part les outils d'étiquetage rajoutant aux graphies ambiguës une étiquette utilisée par les règles de phonétisation.

 

2.1. Formatage

La première étape consiste à nettoyer et segmenter le corpus. Le nettoyage produit en sortie un texte composé uniquement de caractères alphabétiques représentant du texte et des ponctuations. Il s'agit donc de filtrer les caractères de contrôle, les balises de formatage, les insertions d'images ou de macro-commandes, etc. Cette étape est intimement liée au type de fichier traité. Nous nous sommes intéressé, dans notre système, au traitement des fichiers au format ASCII et HTML.

La segmentation du corpus à pour but de découper le texte en unités logiques : paragraphes, phrases et mots. Même si cette étape ne fait pas appel à des théories linguistiques très sophistiquées, elles conditionnent très fortement les résultats finaux de l'étiquetage (Habert B. et al. 1997; Grefenstette G. & Tapanainen P. 1994). La segmentation en paragraphes permet d'une part de garder une structure logique au document et d'autre part d'isoler les titres du corps du texte.

Ce dernier aspect est particulièrement important afin d'éviter de coller un titre à la phrase suivante (les titres ne comportant généralement pas de marque de fin de phrase). Lorsque le titre est entièrement en majuscule, le fait de l'isoler permettra de le traiter de manière spécifique comme nous le verrons ultérieurement. Le découpage en phrases est indispensable, dans une application de synthèse de parole à partir du texte, au module de génération prosodique. Il s'avère également obligatoire pour traiter le cas des majuscules de début de phrase.

Enfin l'étape de tokenisation, c'est à dire de découpage en mots, permet de repérer les formes inconnues du lexique de référence. Détecter ces formes va nous permettre d'appliquer, dans certains cas, des outils de correction. Ces diverses segmentations sont effectuées, dans notre système, avec d'une part un ensemble de règles codant des heuristiques et d'autre part un lexique de référence (extrait des ressources BDLEX(Pérennou G. 1988) et MULTEXT) par rapport auquel sera effectué le découpage en mots. Ces heuristiques sont assez générales pour pouvoir traiter la majorité des cas de manière satisfaisante. Les principales ambiguïtés se situent dans l'utilisation des marqueurs habituels de fin de phrase (point, point d'exclamation et point d'interrogation).

En effet, ces marqueurs peuvent être absent ou bien apparaître à l'intérieur d'une phrase comme dans l'exemple suivant :

Dans la coll. Dupond, l'ouvrage "Pourquoi moi ?" à pour code : IV.12.14

Nos règles permettent de traiter la majorité des cas, néanmoins il est nécessaire de les adapter à chaque traitement de nouveaux corpus afin de prendre en compte les spécificités de chacun d'eux. Une fois le nettoyage terminé, l'étape suivante du formatage va consister à traiter les problèmes liés à l'éventuelle capitalisation du texte. En effet, la présence d'un ou plusieurs mots en majuscule à l'intérieur d'une phrase peut avoir des conséquences importantes sur la prononciation de ceux-ci.

Ces conséquences se situent à deux niveaux : d'une part les accents sont omis dans la majorité des mots en majuscule, ce qui pose des problèmes évidents d'oralisation. D'autre part, la capitalisation d'un mot peut être un signe distinctif indiquant qu'il s'agit d'un sigle, d'un acronyme ou même d'un simple nom propre. Enlever abusivement cette capitalisation peut avoir des conséquences fâcheuses.

Par exemple, dans la phrase le LIA est à Avignon, il est important de conserver les majuscules à LIA pour éviter de le prononcer comme une flexion du verbe lier. Nous avons adopté, dans notre système, la démarche suivante :

A la suite de ce traitement, un certain nombre de mots restent inconnus de notre dictionnaire. Ces mots peuvent être des racines inconnues, des néologismes, des flexions inusitées, des noms propres ou bien, assez souvent, des fautes de frappe. Corriger automatiquement ces fautes est un processus hasardeux, dans la mesure où le risque est grand de modifier à tort un mot réellement absent de notre dictionnaire. C'est pourquoi nous avons pris le parti d'essayer de corriger uniquement les erreurs dues à une mauvaise accentuation.

Nous justifions ce choix par la constatation suivante : l'omission d'un accent dans un mot à une conséquence immédiate sur la prononciation de celui-ci, ce qui n'est pas le cas de toutes les erreurs. De plus, il s'agit d'une erreur extrêmement fréquente, rendue encore plus inévitable à cause de la multiplicité des systèmes d'encodage des caractères accentués.

A cette fin, lorsqu'un mot inconnu est rencontré, le système va chercher si une forme accentuée de celui-ci est présente dans le dictionnaire. Si oui, notre module de réaccentuation va se charger de choisir la forme correcte. Ce module est intimement lié au processus d'étiquetage présenté dans le paragraphe suivant.

 

2.2. Etiquetage morpho-syntaxique

Ce module a pour objet d'attribuer à chaque mot une étiquette syntaxique choisie parmi un jeu de 105 étiquettes. Nous utilisons un étiqueteur statistique basé sur un modèle 3-classes tel que l'on peut trouver dans (Spriet T. & El-Bèze M. 1995; Charniak E. et al. 1993; Chanod J.-P. & Tapanainen P. 1995). Cet étiquetage nous est utile à différents niveaux, notamment dans la phase de réaccentuation de texte et de traitement des homographes-hétérophones.

 

2.2.1. Réaccentuation du texte

Lorsqu'une forme capitalisée, non accentuée, doit être traduite en caractères minuscule, il se peut que plusieurs formes accentuées lui correspondent dans le lexique de référence. Par exemple, le mot VOLE peut correspondre aux formes vole ou volé. Le module de réaccentuation, reprenant la méthode présentée dans (El-Bèze M. et al. 1994), utilise le processus d'étiquetage pour lever ces ambiguïtés : à chaque forme accentuée correspond, dans le lexique de l'étiqueteur, la même forme sans accent avec toutes les catégories syntaxiques que peuvent prendre les différentes formes accentuées le représentant. Une fois l'étiquetage réalisé, il suffit de faire correspondre au couple (mot désaccentué / étiquette syntaxique) la forme accentuée le représentant.

Cette méthode a été évalué sur un corpus de test contenant 150K mots extraits du journal Le Monde Diplomatique entre les années 1990-95. L'étiqueteur été entraîné sur des textes du journal Le Monde entre les années 1990-93. Il utilise un lexique de 260K formes.

Dans un premier temps nous avons supprimé tous les accents des 23K mots accentués du corpus de test(soit 15% des mots). Puis, à l'aide de l'étiqueteur et de la méthode présentée précédemment, nous avons corrigé les accents chaque fois qu'un couple mot/étiquette correspondait à une forme accentuée de notre lexique.

En comparant le texte original avec celui issu de l'étape de réaccentuation nous obtenons les chiffres suivants :

Ces excellents résultats nous permette de traiter les problèmes liés à la capitalisation de textes présentés précédemment.

 

2.2.2. Homographes-hétérophones

La majorité des mots homographes-hétérophones appartiennent à des catégories syntaxiques différentes. Par exemple les célèbres couvent/verbe et couvent/nom. En utilisant les étiquettes syntaxiques pour contraindre l'application des règles de phonétisation, nous traitons l'ensemble de ces homographes(à condition que l'étiquetage réalisé soit correct !).Ce phénomène d'homographie et d'hétérophonie ne se situe pas seulement au niveau des mots.

Par exemple, en français, le suffixe [ent] est ambiguë: il se prononce / ã/ si le mot auquel il appartient est un adverbe et s'il s'agit d'un verbe à la troisième personne du pluriel, il n'est pas oralisé. Si le mot à traiter est connu du lexique de l'étiqueteur, les règles de phonétisation vont utiliser l'étiquette posée pour lever l'ambiguïté. Si par contre le mot est inconnu, un traitement particulier s'impose.

Nous avons choisi de rajouter à notre étiqueteur un module de traitement des mots inconnus afin de résoudre ce problème. Ce module, présenté dans (Spriet T. et al. 1996) et (Béchet F.& El-Bèze M. 1997), va deviner une catégorie syntaxique pour le mot inconnu à partir du suffixe de celui-ci et de son contexte d'occurrence dans la phrase.

Par exemple, dans la phrase ils ttiennent la rampe, le doublement de la lettre t empêche la reconnaissance directe du mot ttiennent comme un verbe. Grâce à notre module, l'étiquette V3P , c'est à dire verbe à la troisième personne du pluriel, va lui être attribué et le suffixe [ent] sera correctement phonétisé.

 

2.3. Etiquetage sémantique

L'étiquetage sémantique va concerner le traitement des expressions chiffrées, des noms propres, des sigles et de quelques cas particuliers. Cet étiquetage est effectué grâce à une base de règles prenant en compte un motet son contexte d'occurrence. Avant de présenter le formalisme de ces règles, nous allons passer en revue les différentes étiquettes susceptibles d'être posées.

 

2.3.1. Expressions chiffrées

La prononciation d'une expression chiffrée repose intimement sur le sens véhiculée par celle-ci. Par exemple, on ne prononcera pas de la même manière une suite de chiffres selon qu'elle représente une date, un numéro de téléphone ou encore une quantité. Il est donc important, dans un premier temps, d'analyser le contexte d'occurrence afin d'identifier le type d'expression chiffrée rencontrée. Nous traitons, dans notre système, les formats les plus courants concernant les dates, les numéros de téléphone et les horaires. Dès qu'une de ces expressions est reconnue, elle est formatée pour constituer une seule entrée pour le module de phonétisation. Voici quelques exemples de ce formatage:

36 15 SNCF -> trente_six_quinze SNCF

10:02 -> dix_heure_deux_minute

90 28 00 50 -> quatre_vingt_dix_vingt_huit_zéro_zéro_cinquante

26/06/95 -> vingt_six_zéro_six_quatre_vingt_quinze

Par défaut, toutes les autres expressions chiffrées sont considérée comme des quantités. Elles sont transcrites de manière orthographique en apportant un soin particulier au traitement des virgules séparant des séries de chiffres.

En effet, dans les applications de synthèse de parole à partir de texte, la ponctuation n'est généralement pas oralisée. Cependant les virgules à l'intérieur d'expressions chiffrées peuvent représenter non pas une marque de ponctuation mais plutôt un séparateur entre un nombre et ses décimales. Là encore, c'est le contexte d'occurrence de l'expression chiffrée qui va nous permettre de lever l'ambiguïté : nous avons déterminé une liste de graphies pouvant suivre une expression contenant des décimales (par exemple : degrés, points). Si la virgule se trouve entre deux nombres suivis d'une de ces entrées, elle est transcrite orthographiquement pour éviter d'être considérée comme une marque de ponctuation.

Les exemples suivants illustrent ce principe :

a gagné 12,8 points -> a gagné douze virgule huit points

les 2,3,4 et 5 mai -> les deux , trois , quatre et cinq mai

Le dernier problème traité par notre module concerne les expressions chiffrées codées en chiffres romains. Si les grands nombres représentant les années sont peu ambiguës (par exemple MCMLXXXVIII pour 1988), il n'en va pas de même pour les chiffres tels que I, V ou X. Notre module va poser l'étiquette CHIF_ROMAIN chaque fois qu'un contexte d'occurrence permettra de lever l'ambiguïté : par exemple, tous les chiffres romains potentiels situés après un prénom ou avant des mots tels que siècle ou arrondissement reçoivent cette étiquette.

 

2.3.2. Les abréviations

Nous traitons ici les acronymes représentant des abréviations et non pas les sigles dont le traitement particulier est présenté dans le prochain paragraphe. Trois types d'abréviations sont considérées :

Chaque fois que l'abréviation est potentiellement ambiguë, une règle examinant son contexte est appliquée afin de la retranscrire en toute lettre si la règle est satisfaite.

Par exemple :

numéro de tel 01 16 -> numéro de téléphone zéro_un_seize

10 F reçu par F. Dupont. -> dix francs reçu par F. Dupont

 

2.3.3. Les sigles

Les sigles envahissent notre vocabulaire quotidien, leur prolifération est telle qu'on ne peut plus les ignorer dans les systèmes de TALN. La gestion d'un dictionnaire exhaustif de tous les sigles répertoriés avec leurs prononciations attestées se révèle insuffisante. En effet l'univers des sigles, loin d'être clos, est en perpétuelle expansion. Face à un sigle, on peut décider de le lire comme s'il s'agissait d'un mot ou de l'épeler lettre à lettre. Il ne s'agit pas d'un ou exclusif : en effet quelques sigles sont mi-lus, mi-épelés ( V-DAT,CDROM) et d'autre admettent les deux modes d'oralisation ( ONU, CES).

En ce qui concerne les processus de décision relatifs au choix d'oralisation, nous avons réalisé un module de décision lu / épelé à base de règles inspirées des travaux sur le sujet (Plénat M. 1994) (Boula de Mareüil P. 1994). La décision du mode de prononciation du sigle (épelé ou lu) est dépendante du poids du sigle exprimé sous diverses unités. L'unité de compte pouvant être la lettre ou le phonème. Nous avons extrait des règles de décision en fonction de la structure des sigles. Ces structures sont représentées en consonnes (C), consonnes occlusives (CO), consonnes liquides (CL) ou voyelles (V). Pour être lu, un sigle doit présenter au moins un doublet de type (CV). Ce qui implique que les sigles formés uniquement de consonnes ou uniquement de voyelles sont systématiquement épelés.

Au delà de cette particularité commune à tous les sigles, il convient d'introduire des règles particulières selon le nombre de lettres composant le sigle. Notre module d'étiquetage des sigles fonctionne en deux étapes : tout d'abord les sigles sont repérés dans le texte. Hormis ceux présents dans notre dictionnaire de référence, nous utilisons la capitalisation pour décider de l'attribution de l'étiquette SIGLE à un mot.

La règle utilisée est la suivante : tout mot inconnu dont la capitalisation a été conservé par le module de formatage est considéré comme un sigle. Ensuite, les règles sur le mode d'oralisation du sigle sont appelée et l'étiquette SIGLE_LU ou SIGLE_EPELE est apposée au mot.

 

2.3.4. Les noms propres

L'oralisation des noms propres pose un certain nombre de problème spécifiques (Yvon F. 1996) :

Le rôle du module d'étiquetage sémantique des noms propres est d'une part d'identifier et caractériser les noms propres à phonétiser, et d'autre part d'estimer une origine linguistique en accord avec la construction du nom et son contexte d'occurrence. Nous allons présenter brièvement ces deux traitements.

La détection des noms propres d'un texte se fait grâce à l'étiqueteur syntaxique présenté précédemment. A l'issue de cet étiquetage, les noms propres reçoivent soit l'étiquette MOTINC , soit l'une des 9 étiquettes caractérisant les noms propres dans l'ensemble des étiquettes utilisées par l'étiqueteur : nom de ville VILLE , nom de pays PAYS (avec genre et nombre), nom d'organisation ORG , prénom PREN (avec genre) et nom de famille FAMIL.

Il faut noter que le choix de ces étiquettes à été fait indépendamment de l'application de phonétisation, et qu'il dépend de considérations syntaxiques plutôt que phonétiques. Chaque nom propre détecté est alors traité par un module, appelé Devin Nom-Propre (Béchet F. et al. 1997), permettant de calculer sa probabilité d'appartenance à une groupe linguistique particulier.

A cet effet, nous avons utilisé un corpus de développement composé de 10K noms et prénoms extraits d'articles du journal Le Monde des années 1987 à 1993. Les entrées de ce corpus ont été classé en fonction de certains traits communs caractéristiques de leurs prononciations. Cette classification a abouti à des ensemble disjoints de parleur consonance. Un ensemble de 8 groupes linguistiques a ainsi été défini de façon subjective.

Pour chacun de ces groupes, un modèle probabiliste de type3-gram a été entraîné. Lors de la phase d'étiquetage, le groupe linguistique choisi pour représenter un nom propre est celui qui maximise la probabilité d'appartenance du nom à l'ensemble des 8 groupes possibles. Les étiquettes caractérisant l'origine linguistique d'un nom propre vont être posées en fonction de ces deux traitements : si les contextes immédiats gauches et droits du nom propre sont composés de noms communs, c'est le seul module Devin Nom-Propre qui va choisir l'étiquette pertinente.

Par contre, dans le cas de séquences de noms propres, des règles vont permettre de prendre en compte un contexte plus large. Les séquences <PREN><FAMIL> ou <ORG><ORG> sont recherchées afin de calculer l'origine linguistique sur l'ensemble de la séquence. Le tableau 1 montre quelques exemples d'étiquetage de séquences <PREN><FAMIL> par notre module. On peut noter l'influence de la prise en compte du contexte dans l'attribution d'une origine linguistique à un nom propre.

Ainsi, en traitant les noms et prénoms séparément, il arrive souvent que l'étiquette posée sur chacun d'eux diffère. Par exemple, dans la séquence Guy Forget, le prénom Guy est considéré comme un prénom français alors que le nom Forget reçoit une étiquette le classant dans les noms d'origine anglaise. Le fait de calculer une étiquette unique en utilisant la séquence complète prénom+nom permet de corriger ces ambiguïtés en attribuant une étiquette cohérente pour prononcer le nom complet.

Prénom

Nom

PREN

FAMIL

PREN+FAMIL

Steffi

Graf

Italien

Allemand

Allemand

Vaclav

Havel

Slave

Français

Slave

Guy

Forget

Français

Anglais

Français

Felipe

Gonzales

Italien

Espagne

Espagne

Table 1: Exemples d'étiquetage de séquences prénom+nom

 

2.3.5. Formalisme des règles d'étiquetage

Le module d'étiquetage sémantique utilise des règles prenant en compte un contexte de 4 mots et pouvant être contraintes indifféremment sur la graphie ou la catégorie syntaxique des mots (fournie par l'étiqueteur syntaxique).Le format de ces règles, proche de la syntaxe de règles Prolog, intègre les paramètres suivants :

Voici le format général de ces règles :

CONTEXT(NUM,<<G1,C1>,<G2,C2>,<G3,C3>,<G4,C4>>,LABEL,EX)-> CONT;

Si aucune contrainte n'est portée sur l'un des mots du contexte utilisé, le couple <G;C> peut être remplacé par le symbole M. Voici quelques exemples de règles :

/* Identification des chiffres romains */

CONTEXT(10,<<G1,"PREN">,<G2,C2>,M,M>,"CHIF_ROMAIN","Henry IV")->

POTENTIEL_ROMAIN(G2) ;

CONTEXT(11,<M,<"XV",C2>,<"de",C3>,M>,"CHIF_ROMAIN","XV de France")->;

/* Origine linguistique des noms propres */

CONTEXT(16,<M,<G2,"PREN">,<G3,"FAMIL">,M>,o,"Guy Forget")->

ORIGINE_DOUBLE(G2,G3,o) ;

Dans la phase d'étiquetage, ces règles sont appliquées de manière exclusive dans l'ordre de leur stockage dans la base. Il faut noter que ces règles permettent également d'écrire de manière élégantes des heuristiques relatives à la phonétisation de termes très particuliers.

Par exemple, certains homographes-hétérophones (heureusement fort peu nombreux) appartiennent à la même classe syntaxique. Ce n'est donc pas l'étiqueteur qui pourra lever l'ambiguïté. Il devient alors intéressant de traiter ces problèmes par des règles heuristiques simples.

Voici, par exemple, deux des règles traitant le cas épineux de la prononciation du mot fils. L'étiquette FILS_FIL signifie qu'il s'agit du pluriel de fil; l'étiquette FILS_FILS correspond à la signification enfant.

CONTEXT(31,<M,<"fils",c2>,<"électriques",c3>,M>,"FILS_FIL","") -> ;

CONTEXT(32,<M,<"fils",c2>,<"de",c3>,<g4,c4>>,"FILS_FIL","fils de fer") ->

ou_bien(g4,["laine","fer","soie","coton","cuivre","métal","nylon"]) ;

 

3. PHONÉTISATION

Le module de phonétisation récupère le texte nettoyé et étiqueté afin de le traduire en symboles phonétiques. Ce module commence par traiter les phénomènes de liaisons entre les mots d'une même phrase en utilisant les résultats de l'étiqueteur morpho-syntaxique. Puis différentes bases de règles de phonétisation sont utilisées en fonction des étiquettes posées par les autres modules.

 

3.1. Gestion des liaisons

La liaison est la survivance de quelques enchaînements de consonnes finales en ancien français : autrefois, toutes les consonnes finales étaient prononcées ; en français moderne, un certain nombre de ces consonnes sont muettes dans les mots pris isolément mais on les prononce lorsque le lien entre un mot (à finale consonantique) et le mot suivant (à l'initiale vocalique)est assez fort pour que se conserve l'enchaînement ancien. Toute la difficulté du traitement des liaisons résulte précisément de l'appréciation de la force de ce lien.

On distingue généralement trois types de liaisons : les liaisons obligatoires, interdites et facultatives. Malgré quelques principes généraux, les règles qui régissent ces liaisons sont souvent floues et font appel à des considérations syntaxiques, parfois sémantiques. Néanmoins, nous avons extrait de la littérature (El-Bèze M. 1990; GrevisseM. 1993) un certain nombre de règles que nous avons formalisées de manière analogue à celles présentées dans le module d'étiquetage.

Les critères qui nous permettent de trancher pour déterminer la présence ou l'absence de liaison entre deux mots sont la graphie et la catégorie syntaxique, non seulement des mots examinés, mais aussi des mots qui les précèdent où les suivent. Nous avons choisi de formaliser dans un premier temps uniquement les liaisons interdites et obligatoires. Les liaisons facultatives peuvent être rajoutées facilement en insérant de nouvelles règles dans la base.

De même que pour l'étiquetage sémantique, nous utilisons les étiquettes syntaxiques posées par notre module d'étiquetage statistique ainsi qu'un moteur permettant de traiter les règles de génération des liaisons. Deux autres phénomènes, outre les règles de liaison décrites, sont pris en charge à l'aide du même formalisme : les phénomènes de dénasalisation lors de la production d'une liaison en [n] et les réalisations de la consonne finale dans les expressions chiffrées avec six, huit, neuf, dix et vingt.

 

3.2. Règles de phonétisation

 

3.2.1. Bases de règles

Le phonétiseur du système LIA_PHON contient 11 bases de phonétisation relatives aux étiquettes posées par le module d'étiquetage. Ces bases se décomposent de la manière suivante :

 

3.2.2. Format des règles

Les informations contenues dans les règles de phonétisation sont : le numéro de la règle NUM ; la chaîne représentant le contexte gauche de la graphie à transcrire C_GAUCHE ; la chaîne représentant la graphie à transcrire GRAPH ; la chaîne représentant le contexte droit de la graphie à transcrire C_DROIT ; la chaîne de phonèmes se substituant à la graphie à transcrire PHO ; un exemple de mot sur lequel la règle en question pourrait s'appliquer EX ; l'éventuelle contrainte grammaticale conditionnant la transcription CONT.

Une règle de réécriture se présente sous la forme suivante :

REGLE(NUM,<C_GAUCHE,GRAPH,C_DROIT>,PHO,EX)-> CONT ;

avec les symboles suivants qui peuvent être utilisés dans les contextes droit ou gauche des règles :

 

3.2.3. Stockage des règles

A chaque règle sont associé trois scores calculés à partir des chaînes de caractères représentant la graphie à transcrire et le contexte droit (GRAPH +C_DROIT ), le contexte gauche (C_GAUCHE ) et enfin l'éventuelle contrainte(CONT).

Les scores de chaque règle représentent le degré de précision dans la modélisation du contexte de phonétisation d'une graphie. Ce degré de précision s'exprime à partir de la taille des contextes et du niveau de représentation choisi (classe de lettres ou lettre précise). Les règles de chaque bases ont triées automatiquement selon les valeurs de leurs scores, d'abord sur GRAPH + C_DROIT puis en cas d'égalité sur C_GAUCHE et enfin sur CONT.

Ainsi les cas particuliers sont placés avant les cas généraux de telle sorte que les règles les plus restrictives sont appliquées en priorité. Le tri est fait lors de l'initialisation du programme de phonétisation. De ce fait, aucune contrainte n'est imposée sur le lieu d'insertion des nouvelles règles dans la base. Le risque de masquer des règles particulières par l'insertion, à une mauvaise place dans la base, d'une règle plus générale n'existe donc pas.

 

3.2.4. Application des règles

Le premier traitement, dans la phase d'application des règles, consiste à segmenter la graphie à prononcer en syllabes. Cette étape, même si elle n'est pas indispensable à la transcription graphème-phonème, permet de simplifier l'écriture de certaines règles en traitant le cas des groupes de lettres non sécables en amont de l'application des règles. Cela permet également au système de fournir en sortie un texte phonétisé déjà découpé en syllabes. Les règles de syllabification utilisées sont des règles classiques utilisant des classes de consonnes et voyelles non sécables.

Une fois ce découpage effectué, la recherche de la prochaine règle de phonétisation à appliquer se fait de manière dichotomique sur le score associé à GRAPH+C_DROIT . Les bornes de la recherche sont obtenues en calculant un poids minimal et un poids maximal à partir de la graphie à transcrire. Cette recherche est rendu possible grâce au tri automatique de la base de règle.

Elle a l'avantage de limiter la recherche séquentielle d'une règle au sous-ensemble de règles ayant même score pour leur chaîne GRAPH + C_DROIT. La première règle trouvée qui satisfait les quatre conditions sur GRAPH ,C_DROIT , C_GAUCHE et CONT est immédiatement appliquée : le champ GRAPH se réécrit en la suite de phonèmes se trouvant dans le champ PHO .Dès qu'une règle a été appliquée, on réitère le processus pour phonétiser la suite du mot.

 

3.3. Gestion des exceptions

Certains mots constituent des contre-exemples aux règles de phonétisation classiques. Si un tel mot tolère des flexions, il est intéressant de le coder sous la forme d'une règle généralisable dans la base. Par contre, si des flexions sont impossibles, représenter un mot par une règle risque de surcharger inutilement la base. LIA_PHON donne donc la possibilité à l'utilisateur de définir un lexique d'exceptions, avec les phonétisations correspondantes. Ce lexique est consulté avant toute recherche de règles : si le mot à phonétiser est présent, il est transcrit directement et l'étiquette EXCEPTION lui est apposé. Ce lexique est codé sous la forme d'un arbre en partie commune sur les graphies afin de garantir un temps constant d'accès aux éléments quelle que soit la taille du lexique.

 

3.4. Exemple

Voici un exemple de traitement, à l'issue du processus de formatage, d'étiquetage et de phonétisation, sur la phrase suivante : Depuis le 21 avril, 12,8% des actions de la COGETA apartiennent à Paulo Fibonacci.

Les phonèmes sont donnés en code SAMPA. On peut noter les liaisons réalisées entre 21 et avril, des et actions, apartiennent et à. La phonétisation du nom propre Paula Fibonacci a été réalisé par la base de règles de phonétisation représentant la prononciation française de noms d'origine italienne.

<s>

ZTRM

##

depuis

PREP

d @ p H i

le

DETMS

l @

vingt-et-un

CHIF

v e~ t e 9~

avril

NMS

n a v R i l

,

YPFAI

##

douze

CHIF

d u z

virgule

CHIF

v i R g y l

huit

CHIF

H i

pour_cent

NMS

p u R s a~

des

PREPDES

d e

actions

NFP

z a k s j o~

de

PREPADE

d @

la

DETFS

l a

COGETA

MOTINC->SIGLE->SIGLE_LU

k o Z e t a

apartiennent

MOTINC->V3P

a p a R t j E n

à

PREPADE

t a

Paula

PREN->Italien

p o l a

Fibonacci

MOTINC->Italien

f i b o n a t S i

</s>

ZTRM

##

 

4. EXPLOITATION DES PHONÉTISATIONS

Le module d'exploitation des phonétisations est directement dépendant de l'application visée. Jusqu'à maintenant, LIA_PHON a été utilisé dans trois contextes différents que nous allons présenter brièvement.

 

4.1. Obtention de lexiques phonétiques

Les SRAP utilisent des lexiques contenant pour chaque entrée une ou plusieurs transcriptions phonétiques. Ces transcriptions correspondent aux prononciations les plus courantes d'une même entrée. Le nombre de variantes codées pour un seul mot est généralement réduit car chacune d'entre elle augmente l'espace de recherche de la reconnaissance.

Ainsi, la modélisation de nombreuses variantes dépendantes du débit ou d'accents régionaux, loin de provoquer un gain au niveau de la reconnaissance, dégrade sensiblement les résultats (Grennberg S. 1999). Le module de calcul de lexiques phonétiques intégré dans LIA_PHON a donc pour but de proposer une forme canonique de prononciation, en donnant les informations nécessaires au décodeur pour éventuellement adapter de manière dynamique les prononciations lors de la reconnaissance. Ces variantes potentielles intègrent le traitement des schwas et des consonnes latentes en fin de mot.

 

4.2. Phonétisation de textes pour l'alignement

Dans la phase d'apprentissage des modèles acoustiques des SRAP, d'important corpus de parole étiquetés phonétiquement sont nécessaires. Le coût d'un étiquetage manuel étant prohibitif, c'est généralement automatiquement que ces alignements son/phonème sont produit.

A cet effet, le décodeur utilise des modèles acoustiques rustiques et la transcription orthographique des phrases prononcées. Le rôle du phonétiseur consiste donc à calculer la transcription phonétique la plus proche possible des phrases prononcées pour permettre au décodeur d'effectuer un alignement de qualité.

L'espace de recherche de la reconnaissance étant limité à la phrase effectivement prononcée, le phonétiseur a intérêt à produire de nombreuses variantes afin de s'adapter au mieux aux différents choix de prononciation effectués par le locuteur.

Cette génération de variantes prends en compte plusieurs niveaux :

 

4.3. Synthèse de parole à partir du texte

Les systèmes de synthèse de parole à partir du texte peuvent se décomposer en trois composantes fonctionnelles (d'Alessandro C. et al. 1996) :la phase d'analyse et de phonétisation ; la phase phonético-acoustique ; la phase de calcul du signal numérique. Nous nous sommes focalisé essentiellement sur la première composante, largement décrite dans ce document.

Néanmoins, dans un but de démonstration, LIA_PHON permet d'obtenir des transcriptions directement traitable par un synthétiseur de signal. La transcription phonétique devant être produite dans un système de synthèse de parole à partir du texte est un moyen terme entre, d'une part la phonétisation canonique présentée dans 4.1 et d'autre part les phonétisations avec variantes du paragraphe 4.2.

En effet, un choix doit être fait au niveau de la gestion des liaisons, de la réalisation des schwas ou de la gestion des pauses pour proposer une transcription phonétique cohérente au niveau de la phrase et non plus seulement au niveau des mots. Il est bien évidemment que cette étape est intimement liée au synthétiseur de parole utilisé pour produire le signal.

Le système LIA_PHON intègre un module de génération de transcriptions phonétiques destinées à un synthétiseur de parole. Le synthétiseur choisi est MBROLA (Dutoit T. 1997). Ce module permet d'une part d'adapter les transcriptions phonétiques à la prononciation d'un texte et d'autre part de calculer des paramètres prosodiques rendant le texte audible.

 

4.3.1. Modification des transcriptions phonétiques

Les règles utilisées pour produire la transcription phonétique finale envoyée au synthétiseur de parole sont les suivantes :

 

4.3.2. Paramètres prosodiques

Le système LIA_PHON ne possède pas, pour le moment, de module de génération de courbe prosodique. Les paramètres envoyés à MBROLA ont juste pour but d'éviter que le signal ne soit généré avec une prosodie plate, peu agréable à écouter lors des tests. Ainsi, pour éviter ce phénomène, les phonèmes sont transmis à MBROLA avec des durées moyennes fonction du débit choisi, et la courbe d'intonation suit simplement la règle de déclinaison habituelle du français en rajoutant des variations aléatoires pour éviter un aspect trop mécanique lors de l'enchaînement des phrases.

 

5. EVALUATION DU SYSTÈME

LIA_PHON ne gérant pas la génération de paramètres prosodiques cohérents, il ne peut être évalué directement de manière perceptive. Par contre, les transcriptions phonétiques produites peuvent être comparées à des textes phonétisés par des experts, et ce de manière automatique en produisant des scores similaires à ceux utilisés en Reconnaissance Automatique de la Parole (nombre de phonèmes corrects, score de précision en comptant les élisions/substitutions/insertions, nombre de mots/phrases correctes).

Ces résultats sont particulièrement intéressant quand ils permettent d'établir une typologie des erreurs faites par le système. Une telle étude a été réalisée dans le cadre de la campagne de tests des phonétiseurs du français organisée par l'AUF (ex Aupelf-Uref) et connue sous le nom d'Action de Recherche ConcertéeB3 (ARC B3). Cette campagne regroupait 8 laboratoires (4 français,2 suisses, 1 belge et 1 canadien), les tests se sont déroulés en 1997 et les résultats ont été publié dans (Yvon F. et al. 1998).Le corpus de tests utilisé est décrit dans le tableau 2.

Nb de mots

total

nom propre

acronyme

exp. chiffrée

occurrence

26 000

1 500

200

600

forme

6 000

1 000

90

200

Table 2: Description du corpus de test

Les résultats du système LIA_PHON sont présentés dans les tableaux 3 et 4. Le premier tableau présente les résultats sur les phonèmes (correction et précision), les mots et les phrases. Le deuxième tableau détaille les résultats sur les mots en les classant en quatre types : nom propre, acronyme, expression chiffrée et autre. La première ligne donne les pourcentages de mots corrects, la deuxième ligne présente la part de chacune de ces classes dans le nombre total d'erreurs.

Ces résultats montrent que si les résultats globaux sont excellents (99% de précision), la répartition des erreurs n'est pas uniforme. Les ambiguïtés classiques de la langue française sont bien traités par le système : les homographes hétérophones ne représentent que 1,1% des erreurs et les ambiguïtés morphologiques seulement 0,3%. Par contre les principales sources d'erreurs proviennent de la présence de mots empruntés à d'autres langues (25,6% des erreurs pour seulement 5,8% des mots).

Nb phon %

corr. %

précision %

mots corr. %

phrases corr

86 938

99,3

99,0

97,5

76,0

Table 3: Résultats globaux de LIA_PHON

 

classe

nom propre

acronyme

expr. chiffrée

autre

%correct

88,8

94,5

91,7

98,2

% des erreurs

25,6

1,7

7,6

65,1

Table 4: Résultats par classe de mots et de noms propres

La détection et l'attribution d'une origine linguistique à un nom en fonction de sa morphologie et de son contexte semble donc être un élément crucial auquel notre module de traitement des noms propres ne répond qu'imparfaitement. L'étude manuelle des résultats nous a montré que la plupart des erreurs provenaient d'un manque de couverture dans les bases chargées de phonétiser les noms propres par origine linguistique. La grande variabilité de l'espace de prononciation des noms propres nécessite donc l'écriture de bases de règles plus importantes que celles développées dans le système à ce jour.

 

CONCLUSION

Cet article présente les nombreux modules développés au LIA afin de prendre en compte les problèmes liés à la phonétisation de corpus. Ces modules faisant partie de l'ensemble de outils linguistiques utilisés dans les diverses activités du laboratoire, un certain nombre d'entre eux ne sont pas spécifiques au processus de phonétisation. Ainsi, la phase de formatage et d'étiquetage de texte est une phase préalable à toute exploitation de corpus écrits.

Néanmoins, si le processus de phonétisation n'a pas été le seul moteur au développement de ces outils, il a été par contre un moyen de contrôle et d'évaluation indispensable. En effet, un mauvais étiquetage ou un formatage erroné des données provoquent le plus souvent des répercussions immédiates au niveau de la prononciation. En utilisant des corpus de tests tel que celui utilisé dans la campagne ARC B3, la synthèse de parole devient un outils de validation de méthodes de TALN particulièrement intéressant. En effet, les performances ne sont plus uniquement mesurées de manière quantitatives en se comparant à des corpus de référence, mais au contraire en fonction de leurs répercussions dans l'exécution d'une tâche précise non artificielle. Les résultats affichés par les systèmes de phonétisation laissent à penser que le problème est quasiment résolu.

Cependant, si les phénomènes globaux de la phonétisation sont bien appréhendés (99% de précision), beaucoup de travail reste à faire pour arriver à l'excellence (24% des phrases phonétisées par notre système comportent au moins une erreur).Ces erreurs se partagent entre des phénomènes connus (noms propres ou acronymes) et une multitude de problèmes locaux difficilement catégorisables (65% des erreurs). Ces derniers problèmes, certainement dû au manque de couverture de nos bases de règles, ne peuvent être traités que par une analyse minutieuse des corpus traités. Généraliser les cas les plus fréquents par des règles ou des méthodes d'apprentissage, coder les autres cas dans des listes d'exceptions, telles sont les tâches qu'il nous faut continuer à mener pour améliorer nos systèmes.

Une autre perspective de travail concerne le traitement des variantes de prononciation ayant des effets sur les chaînes phonétiques représentant les mots. Que ce soit dans le domaine de l'alignement phonétique pour l'apprentissage des SRAP ou pour la génération de parole en fonction de paramètres de débit ou de style de discours, limiter de manière automatique l'espace des variantes d'un mot et garantir une cohérence de variation sur la prononciation d'une ou plusieurs phrases sont encore des problèmes largement ouverts.

 

RÉFÉRENCES

BÉCHET, Frédéric ; EL-BÈZE, Marc (1997) : "Automatic assignment of part-of-speech to out-of-vocabulary words for text-to-speech processing", in Proceedings of the European Conference on Speech Communication and Technology (Eurospeech), pp. 983–986, Rhodes, Greece.

BÉCHET, Frédéric ; SPRIET, Thierry ; EL-BÈZE, Marc (1997) : "Traitement spécifique des noms propres dans un système de transcription graphème-phonème", in Actes des Journées Scientifiques et Techniques du Réseau Francil (JST'97), pp. 469–472, Avignon.

BELRHALI, R. (1995) : Phonétisation automatique d'un lexique général du français : systématique et émergence linguistique, PhD thesis, Université Stendhal, Grenoble, France.

BOULA DE MAREÜIL, Philippe (1994) : "Vers une phonémisation automatique des sigles", in Actes des XXèmes Journées d'Études sur la Parole, pp. 95–100, Lannion.

BOULA DE MAREÜIL, Philippe (1997) : Etude linguistique appliquée à la synthèse de la parole à partir du texte, PhD thesis, Université Paris XI Orsay.

CHANOD, Jean-Pierre ; TAPANAINEN, Pasi (1995) : "Tagging French - comparing a statistical and a constraint-based method", in Proceedings of the Seventh Conference of the European Chapter of the ACL (EACL'95),pp. 149–156, Dublin, Ireland.

CHARNIAK, Eugene ; HENDRICKSON, Curtis ; JACOBSON, Neil ; PERKOWITZ, Mike (1993) : "Equations for part-of-speech tagging", in 11th National Conference on Artificial Intelligence, A. Press/MIT (eds.), pp. 784–789.

D'ALESSANDRO, C. ; GARNIER-RIZET, M. ; DE MAREÜIL, P. Boula (1996) : "Synthèse de la parole à partir du texte", in Fondements et perspectives en traitement automatique de la parole, Éditions de l'Aupelf-Uref – Universités Francophones.

DIETTERICH, T.G. ; HILD, H. ; BAKIRI, G. (1995) : "A comparison of id3 and backpropagation for english text-to-speech mapping", Machine Learning, vol. 18, n 1, pp. 51–80.

DIVAY, Michel ; VITALE, Anthony J. (1997) : "Algorithm for grapheme-to-phoneme translation for French and English: Applications", Computational Linguistics, vol. 23, n 4, pp. 495–524.

DUTOIT, Thierry (1997) : An Introduction to Text-to-Speech Synthesis,Dordrecht, NL, Kluwer Academic Publishers.

EL-BÈZE, M. ; MÉRIALDO, B. ; ROZERON, B. ; DEROUAULT, A.M. (1994) : "Accentuation automatique de textes par des méthodes probabilistes", Technique et Sciences Informatiques, vol. 13, n 6, pp. 797–815.

EL-BÈZE, M. (1990) : Choix d'unités appropriées et introduction de connaissances dans des modèles probabilistes pour la reconnaissance automatique de la parole, PhD thesis, Université Paris VII, Paris, France.

GAUVAIN, J.L. ; LAMEL, L.F. ; ESKENAZI, M. (1991) : "Design considerations and text selection for BREF, a large French read-speech corpus", in Proceedings of the European Conference on Speech Communication and Technology (Eurospeech), Genova, Italy.

GREFENSTETTE, Gregory ; TAPANAINEN, Pasi (1994) : "What is a word, what is a sentence? problems of tokenization", in Proceedings of The 3rd International Conference on Computational Lexicography COMPLEX'94, pp. 79–87, Budapest, Hongrie.

GRENNBERG, Steven (1999) : "Speaking in shorthand - a syllable-centric perspective for understanding pronunciation variation", Speech Communication, n1769, pp. 158–176.

GREVISSE, M. (1993) : Le bon usage, grammaire francaise, refondue par A. Goose, Paris, Duculot.

HABERT, Benoit ; ADDA, Gilles ; ADDA-DECKER, Michelle ; DE MAREÜIL, Philippe. Boula ; FERRARI, Stéphane ; FERRET, Olivier ; ILLOUZ, Gabriel ; PAROUBEK, Patrick (1997) : "The need for tokenization evaluation", in Proceedings of the First International Conference on Language Resources and Evaluation (LREC), pp. 427–431, Granada.

PARFITT, S. ; SHARMAN, R. (1991) : "A bi-directional model of english pronounciation", in Proceedings of the European Conference on Speech Communication and Technology (Eurospeech), pp. 801–804, Gênes.

PÉRENNOU, G. (1988) : "Le projet BDLEX de base de données et de connaissances lexicales et phonologiques", in Premières Journées Nationales du GRECO-PRC Communication Homme-Machine,Paris.

PLÉNAT, Marc (1994) : "Observations sur le mot minimal français", in De Natura Sonorum,B. Laks ; M. Plénat (ed.), pp. 144–172, Saint-Denis.

PROUTS,B. (1980) : Contribution à la synthèse de la parole à partir de texte, transcription graphème-phonème en temps réel sur micro-processeur, PhD thesis, Université Paris Sud - Paris XI Orsay, Paris.

SEJNOWSKI, T.J. ; ROSENBERG, C.R. (1987) : "Parrallel network that learn to pronounce english text", Complex System, vol. 1, pp. 145–168.

SPRIET, Thierry ; EL-BÈZE, Marc (1995) : "Etiquetage probabiliste et contraintes syntaxiques", in TALN, Marseille.

SPRIET, Thiérry ; BÉCHET, Frédéric ; EL-BÈZE, Marc ; DE LOUPY, Claude ; KHOURI, Liliane (1996) : "Traitement automatique des mots inconnus", in Actes de la conférence TALN'96, Marseille.

TZOUKERMANN, Evelyne (1998) : "Text analysis for the BELL labs French Text-To-Speech system", in Proceedings of the International Conference on Spoken Langage Processing (ICSLP).

YVON, François ; BOULA DE MAREÜIL, Philippe ; D'ALESSANDRO, Christophe ; AUBERGÉ, Véronique ; BAGEIN, Michel ; BAILLY, Gérard ; BÉCHET, Frédéric ; FOUKIA, Saliha ; GOLDMAN, Jean-Philippe ; KELLER, Eric ; O'SHAUGHNESSY, Douglas ; PAGEL, Vincent ; SANNIER, Frédérique ; VÉRONIS, Jean ; ZELLNER, Brigitte (1998) : "Objective evaluation of grapheme to phoneme conversion for text-to-speech synthesis in French", Computer Speech and Language,vol.12, n 4.

YVON, François (1996) : Prononcer par analogie : motivations, formalisations et évaluations, PhD thesis, École Nationale Supérieure des Télécommunications Paris.