Introduction

Dans les applications de dialogue oral, le module de compréhension analyse la transcription générée par le moteur de reconnaissance automatique de la parole (RAP) pour en produire une interprétation exploitable par le gestionnaire de dialogue. Or dans ce contexte de dialogue oral, la transcription automatique produite par le RAP n’est pas fiable. Ceci est dû à plusieurs facteurs :

Le système de RAP utilise des connaissances acoustiques pour extraire les mots du signal de parole tandis que les connaissances linguistiques permettent d’assurer une cohérence syntaxique sur la phrase complète. Mais transcrire, c’est comprendre. En effet, si l’on considère les 3 hypothèses de transcription suivantes :

1 Patrick Bruel est dans l’île de France
2 Patrick Bruel est dans le lit de France
3 Patrick Bruel aidant le lit de France

on peut remarquer qu’elles sont phonétiquement quasi-identiques et qu’elles sont syntaxiquement correctes. Le modèle acoustique ne sera pas en mesure de les discriminer. Un modèle de langage N-grammes avec N> 2 pourrait rejeter l’hypothèse 3, le syntagme « aidant le lit » étant vraisemblablement peu probable, tandis qu’un modèle Bi-grammes, avec N restreint à une historique de 1 mot ne pourrait détecter cette incohérence. En limitant la recherche de la bonne transcription aux seuls critères acoustiques et linguistiques, trouver la bonne solution devient hasardeux. Des informations de plus haut niveau, liées à la compréhension peuvent nous aider à discriminer des hypothèses qui ont un sens ou non : les hypothèses 1 et 2 ont un sens alors que l’hypothèse 3 n’en a pas. Afin de faire un choix entre l’hypothèse 1 et 2, qui sont, toutes deux, cohérentes et aussi probables, le contexte du dialogue est nécessaire pour trouver la transcription correcte.

La performance du module de compréhension s’appuyant sur la transcription pour extraire une interprétation de la parole de l’utilisateur est donc dépendante de la qualité de la transcription. Or, nous voyons que le processus de transcription pour être plus performant a besoin d’informations liées à la compréhension. L’utilisation séquentielle de ces deux modules est une des faiblesses de cette architecture de dialogue. Contrairement à une application de dictée vocale où l’objectif est de transcrire fidèlement tous les mots prononcés par l’utilisateur, l’objectif d’une application de dialogue est de comprendre le sens des paroles de l’utilisateur. La transcription n’a pas vocation à être lue et n’est ici qu’une étape intermédiaire nécessaire. À la différence de la dictée vocale, la transcription n’a pas besoin d’être totalement fidèle, seuls les mots utiles à la compréhension doivent être correctement reconnus. Dans les deux cas des informations liées à la compréhension doivent aider la génération de la transcription. Dans le cas de dictées vocales où aucune restriction n’existe, il n’est pas possible de modéliser les informations sémantiques. Dans une application de dialogue, la sémantique est connue et restreinte, l’exploiter est alors chose possible.

Dans les applications de dialogue oral dans lesquelles nous situons notre travail, l’opération de compréhension s’appuie sur une interprétation conceptuelle de la phrase transcrite pour construire une représentation sémantique. Cette interprétation conceptuelle peut être vue comme l’ensemble des concepts qui ont été détectés dans la phrase. Indépendamment de la méthode d’analyse en compréhension utilisée, la détection de ces concepts est une étape particulièrement importante. Ces concepts sont obtenus en associant des mots ou groupes de mots à des étiquettes conceptuelles et contiennent les informations nécessaires au système, pour d’une part interroger la base de données afin de répondre à l’utilisateur, d’autre part permettre au gestionnaire de dialogue d’interpréter les attentes de l’utilisateur. Plus que la transcription en mots, c’est la génération de cette interprétation (ensemble de concepts) qui est importante pour le système.

Dans l’architecture séquentielle de la plupart de ces systèmes, l’extraction de ces concepts est faite postérieurement à la recherche de la meilleure transcription qui est assurée par des modèles basés sur l’acoustique et des contraintes linguistiques réduites (N-grammes). Nous proposons une architecture de système permettant de tenir compte de cette information conceptuelle lors du décodage. Elle donne la possibilité d’enrichir le graphe de mots, généré par le module RAP, de ces informations conceptuelles afin de pouvoir articuler les deux opérations de transcription et génération d’interprétation conceptuelle.

Dans le chapitre 5, nous proposons un modèle de langage conceptuel contenant les informations nécessaires afin de pouvoir passer des mots à ces concepts. Ce modèle associe à chaque concept une grammaire régulière permettant de le détecter. Notre modèle basé sur le formalisme des transducteurs à états fini permet de segmenter le graphe de mots selon les concepts qu’il contient. Un chemin dans ce graphe associe chaque phrase avec son ou ses interprétations (en cas d’ambiguïtés qui doivent être levées à un niveau supérieur). Il est alors aisé de passer du graphe de mots à un graphe de concepts. Nous proposons comme sortie de notre architecture une liste structurée des N-meilleures hypothèses. Cette liste créée à partir du graphe de mots enrichi par notre modèle, présente les N-meilleures interprétations existantes dans le graphe avec leur N-meilleures phrases supports qui ont un sens différent du point de vue de la compréhension (même séquence de concepts mais au moins un concept avec une valeur différente). Cette liste correspond à un résumé exhaustif de toutes les informations conceptuelles nécessaires à la compréhension dans le système de dialogue.

Dans les systèmes statistiques, les meilleures hypothèses de mots ou de compréhension sont choisies en fonction de la vraisemblance calculée selon des distributions statistiques apprises sur des corpus souvent de taille réduite. Elle n’est pas optimale. Il est important de mettre en place des critères permettant d’estimer la qualité du processus de RAP. Dans le chapitre 6 sont proposées différentes mesures de confiance opérant à des niveaux différents : acoustique, linguistique et conceptuel. Ces mesures de confiance permettent de diagnostiquer la réponse de notre module RAP à différents niveaux : mot, phrase et concept.

En fonction de la sortie du module de RAP et des mesures de confiance associées le système de dialogue se doit d’avoir une stratégie cohérente : doit-il faire confiance à la sortie totalement ? partiellement ? et demander une confirmation ou au contraire rejeter l’intervention et demander une répétition. Cette décision appartient au gestionnaire de dialogue qui doit assurer la satisfaction maximale de l’utilisateur. Nous proposons dans le chapitre 7 une stratégie de décision qui, en fonction de la sortie de notre décodage (i.e. la liste structurée des N-meilleures hypothèses) et des mesures de confiance présentées, définit des états de fiabilité permettant de guider le gestionnaire de dialogue dans les choix qu’il aura à prendre.

Les travaux de cette thèse ont été financés par France Télécom Recherche et développement. Ces travaux seront illustrés par des exemples concrets d’applications développées par France Télécom et les expériences évaluées sur les corpus de données qui ont été mis à notre disposition. Le chapitre 4 décrit les deux applications de serveur vocal utilisées dans cette thèse ainsi que les données fournies.