• Aucun résultat trouvé

Chapitre 1 : Contexte de l’étude et état de l’art

1.2. Reconnaissance automatique de la parole monolingue

1.2.6. Modélisation du langage

Un système de reconnaissance automatique de la parole continue à grand vocabulaire dépend généralement fortement de la connaissance linguistique de la parole. Les meilleurs systèmes de décodage acoustico-phonétique qui n’utilisent aucun modèle de langage n’atteignent qu’un taux d’exactitude en phonèmes de l’ordre de 50 % environ. La modélisation du langage est donc une réelle nécessité pour la reconnaissance automatique de la parole continue à grand vocabulaire. Un module linguistique est nécessaire dans le système pour déterminer la forme lexicale correspondante, c’est-à-dire la séquence de mots la plus probable, au sens langagier.

Dans l’équation bayésienne appliquée à la reconnaissance automatique de la parole (équation 1.1 précédente) apparaît une probabilité a priori de la séquence. Cette probabilité se calcule à partir d’un modèle de langage. Ainsi, la séquence « je suis ici » est plus probable, en terme de langage, que « jeu suis ici », ou encore « jeux suit y si », bien que l’acoustique soit quasi-similaire. Pour une même suite de phonèmes, il peut exister plusieurs dizaines de phrases possibles. Le rôle principal du modèle de langage est de les classer selon leur plausibilité linguistique.

Dans la section suivante, nous présentons les modèles n-grammes qui sont les modèles les plus utilisés pour la modélisation du langage.

1.2.6.1. Les modèles n-grammes

Un modèle statistique du langage consiste, pour une séquence de mots M = m1, m2, …, mN, à calculer la probabilité P(M) : 1 1 1 1 ( ) ( | ,..., ) ( | ) N N i i i i i i P M P m m m P m h = = =

=

(1.4)

où hi = m1, …, mi-1 est considéré comme l’historique du mot mi et P(mi|hi) est la probabilité du mot mi, connaissant tous les mots précédents.

En pratique, au fur et à mesure que la séquence de mots hi s’enrichit, une estimation des valeurs des probabilités conditionnelles P(mi|hi) devient de plus en plus difficile car aucun corpus de texte d’apprentissage ne peut permettre d’observer toutes les combinaisons possibles de hi = m , …, mi-1.

Afin de réduire la complexité du modèle de langage, et par conséquent de son apprentissage, l’approche n-gramme peut être utilisée. Le principe est le même, mais l’historique est limité aux n-1 mots précédents (hypothèse de Markov). La probabilité P(M) est donc approchée par :

1 1 1 ( ) ( | ,..., ) N i i n i i P M P m m− + m = =

(1.5)

Les modèles de langage n-grammes sont assez souples car ils permettent de modéliser des phrases grammaticalement incorrectes mais ils n’interdisent pas non plus de produire des phrases incorrectes syntaxiquement. On parle alors de modèle unigramme si n = 1 (sans historique), bigramme si n = 2 ou trigramme si n = 3, etc. Les modèles les plus couramment utilisés en RAP sont les modèles d’ordre trois à cinq.

1.2.6.2. Estimation des modèles de langage

L’estimation des paramètres d’un modèle de langage à n-grammes s’effectue en deux opérations : une opération de décompte et une opération de redistribution des probabilités. La méthode d’estimation effectue un décompte des suites de mots observés afin d’en extraire une probabilité d’apparition. Le principe est d’estimer toutes les probabilités issues des événements observés, puis de les redistribuer à des événements non vus. Cette seconde étape, qui correspond au lissage, permet d’associer une probabilité non nulle à des événements jamais observés sur le corpus d’apprentissage. Les méthodes de lissage classiques calculent une probabilité non nulle en réduisant la fenêtre d’observation.

Les modèles à n-grammes sont donc très dépendants du corpus d’apprentissage, et ont un champ de vision limité à la taille n du n-gramme (qui est comprise entre trois et cinq généralement). Même pour les langues bien dotées, les quantités de texte disponibles pour estimer les probabilités des n-grammes ne sont pas suffisantes pour les n-grammes d’ordre plus élevé. De nombreuses techniques de lissage ont été proposées pour pallier ce problème. L’une des techniques de lissage les plus utilisées est la technique dite de Kneser-Ney [Kneser, 1995]. Avec cette technique, les probabilités des n-grammes peu observés sont estimées comme avec les autres techniques de lissage, en faisant un repliement (backoff) sur un historique d’ordre moins grand. Pour un trigramme, par exemple, le bigramme puis l’unigramme si nécessaire sont utilisés. L’originalité de la technique Kneser-Ney modifiée est de ne pas prendre la même distribution de probabilités pour les ordres plus petits que n. Au lieu de prendre la fréquence de l’historique d’ordre n−1, à savoir 1

1

i i n

h

− + , c’est le nombre de contextes différents dans lesquels se produit 1

1

i i n

h

est faible, alors la probabilité accordée au modèle d’ordre n−1 doit être petite et ce, même si 1 1 i i n h

− + est fréquent. Ainsi, le biais potentiel introduit par la fréquence de l’historique est évité. Les modèles à n-grammes sont extrêmement simples, mais ont prouvé leur efficacité et leur souplesse. Ils se sont imposés dans les systèmes dits « état de l’art », bien que diverses alternatives efficaces aient été proposées dans la littérature (par exemple, modèles continus de [Schwenk, 2002] et [Schwenk, 2007]); ils continuent d’être quasi-systématiquement intégrés aux systèmes de RAP à l’état de l’art.

1.2.6.3. Évaluation des modèles de langage

La qualité d’un modèle de langage dépend de sa capacité à influencer le système de reconnaissance automatique de la parole afin d’en augmenter la performance. Une question primordiale est de savoir comment deux modèles de langage peuvent être comparés en terme de performances dans un système de reconnaissance. La façon correcte de procéder consiste à intégrer chaque modèle dans un système complet, et à évaluer quelle est la meilleure transcription en sortie du système. Cette méthode permet d’évaluer concrètement la performance d’un modèle de langage, mais nécessite de disposer d’un système complet.

La mesure la plus couramment utilisée consiste à estimer la perplexité de chacun des modèles. La perplexité d’un modèle de langage correspond à sa capacité de prédiction. Plus la valeur de la perplexité est petite, plus le modèle de langage possède des capacités de prédiction. La perplexité s’estime sur le corpus d’apprentissage pour définir si les modèles choisis modélisent correctement le corpus. Elle est calculée sur un corpus de test ou de développement, pour estimer le degré de généralisation du modèle. Cependant, bien que la perplexité permette d’estimer la capacité de représentation d’un modèle de langage, elle n’est pas systématiquement corrélée avec la qualité du décodage. Pour des modèles n-grammes, la perplexité (PP) se définit ainsi :

( | ) 1 2 1 log ( ) 2 P m h n t t n PP M = = (1.6)

où P(mt|h) est la probabilité associée au n-gramme (mt|h).

Deux remarques importantes sont à prendre en considération lorsque l’on compare des modèles de langage :

• une réduction de perplexité n’implique pas toujours un gain de performances pour un système de reconnaissance ;

• en général, la perplexité de deux modèles n’est comparable que s’ils utilisent le même vocabulaire ; sinon, il faut utiliser une perplexité normalisée qui simule un nombre de mots identique.

Bien que des modèles de langage avec des mesures de perplexité qui diminuent tendent à améliorer les performances d’un système de reconnaissance, on trouve dans la littérature des études qui décrivent des cas où des diminutions importantes de perplexité ont peu ou pas apporté de gain de performance [Lyer, 1997; Martin, 1997b].