Un environnement de compréhension de la parole pour les serveurs interactifs 
l'environnement cacao
Caroline Bousquet-Vernhettes
IRIT, Université Paul Sabatier
118, route de Narbonne 31062 Toulouse cedex
bousquet@irit.fr
Résumé — Nous présentons dans ce papier l’environnement CACAO (Compréhension Automatique par segments Conceptuels Assistée par Ordinateur). Cet environnement est constitué de plusieurs outils utilisés pour la compréhension d'énoncés de parole continue et spontanée dans des IHM (Interaction Homme-Machine) de systèmes interactifs (SI) vocaux ou multimodaux. CACAO doit répondre à plusieurs exigences comme de pouvoir comprendre tout le monde (en effet la majorité de ces serveurs sont tout public) et d’être facilement portable d’une application vers une autre. Plusieurs algorithmes de décodage conceptuel paramétrables, des fonctions d'apprentissage des connaissances linguistiques liées au SI ainsi que des outils d'évaluation composent CACAO.

1. Introduction
Le multimédia pénètre dans toutes les applications didactiques, culturelles etc. La profusion commerciale de SRAP (Systèmes de Reconnaissances Automatique de la Parole) et de restitution vocale suffisamment performants sur le marché permet d'envisager le mode vocal comme une modalité d'interaction dans les systèmes interactifs (SI). Certes si des API (Application Program Interface) et des normes Speech API existent pour intégrer les périphériques, qu'en est-il des niveaux supérieurs de compréhension, d'interprétation et de génération des informations véhiculées pas ces périphériques ? Existe-t-il des boîtes à outils comme pour les interfaces graphiques ? Quels problèmes pose l'interprétation des énoncés oraux en raison de l'ambiguïté du langage naturel, des spécificités de l'oral spontané ?
Le travail présenté vise à proposer l'environnement CACAO (Compréhension Automatique par segments conceptuels Assistée par Ordinateur), constitués d'outils nécessaires à la compréhension d'énoncés oraux spontanés. Ces outils ont été conçus dans le but d’être portables en terme d’application et de langues. Ils ont été prévus à l'origine pour des systèmes d'IHM de type serveurs vocaux interactifs de demandes de renseignements. Ces serveurs sont dit "tout public" mais le dialogue est finalisé par la tâche (langage limité au domaine de l'application). Depuis la dernière décennie, nous assistons à l'évolution de ces systèmes. Selon le type d'expression verbale (du mot clef à la parole continue et spontanée), l'interactivité entre les usagers et la base d'informations s'en trouve modifiée. Dans un cas le dialogue est très dirigé, dans l'autre il peut être plus coopératif, plus négocié  (Sadek, 96). 
Il existe plusieurs serveurs vocaux de ce type. On peut citer le projet ATIS (projet américain ARPA) pour les horaires d'avion (Price, 1990), le système GALAXY (Goddeau, 94) dans le domaine du voyage, le projet ARISE (projet européen LE) où plusieurs serveurs d'informations accessibles par téléphone sur les horaires de train ont été développés (Baggia, 99)...
L'environnent CACAO peut aussi être envisagé pour le décodage d'énoncés multimodaux à forte composante langagière dans des IHM de SI multimodaux (accès au Web, bornes interactives…). Ce type de serveurs est actuellement en pleine expansion. Certains d'entre eux ont comme principale modalité la parole, les autres modalités, essentiellement le geste de désignation, servant seulement à compléter  l'énoncé de l'utilisateur par des références déictiques, par exemple. Les systèmes MATIS (Multimodal Airline Travel Information System, voir (Nigay, 95)), le projet IMAR (Brison, 97),  le kiosque MASK (Lamel, 98), GALAXY-II (Seneff, 99) ou encore HALPIN (Rouillard, 99), en sont quelques exemples. Ces systèmes utilisent des approches différentes de compréhension : grammaire de cas (Minker, 96), grammaire hors contexte avec des contraintes (Seneff, 92) ou des concepts (Levin, 95).   
Nous allons dans un premier temps décrire les serveurs d'informations interactifs et les critères de robustesse auxquels devra faire face notre environnement. Puis nous décrirons les divers outils composant CACAO en nous attachant plus particulièrement aux problèmes de portabilité et d'accessibilité à un large public.
2. Les besoins des serveurs au niveau de la compréhension 
L'environnement CACAO s'intègre parfaitement au sein d'architecture de SI comportant au moins une entrée parole. Nous allons en premier lieu décrire l'architecture générale de tels systèmes, puis en déduire les besoins. 
2.1 Les serveurs d'informations
Comme nous l'avons souligné un peu plus haut, les serveurs d'informations interactifs sont de plus en plus nombreux à voir le jour. L'architecture globale de ces SI peut être dans la majorité des cas, décrite de la manière suivante (voir figure 1) : 
-	
Figure 1— Architecture générale d'un SI.

Tâche

Interprétation du message multimodale et
contrôle de l'interaction

M1

M2

Mn

Comp1

Comp2

Compn

Génération
et 
synthèse 
de la réponse multimodale

M'1

M'2

M'm

info1

info2

infon

sens

L'utilisateur, pour formuler sa requête, peut utiliser n types de modalités (notées de M1 à Mn sur la figure). Ces modalités peuvent être de la parole, du texte, des gestes de désignation…
-	Chacune de ces entrées génère des informations (par exemple, dans le cas d'une entrée parole, un module de reconnaissance automatique de la parole indique quels mots ont été prononcés, pour une entrée clavier, un module indique quelles touches ont été tapées…).
-	Les informations produites sont alors interprétées dans le contexte de la tâche. C'est le rôle de CACAO.
-	Ensuite un module rassemble toutes les interprétations afin de donner un sens à la requête de l'utilisateur. Selon le sens, le contrôleur de l'interaction décide de ce qu'il faut répondre après prise en compte des informations de la tâche. Cette réponse est alors générée et synthétisée en utilisant diverses modalités (notées de M'1 à M'm sur la figure 1).
Les serveurs vocaux sont en fait un cas particulier de ce type de SI : seule la modalité parole est utilisée que ce soit en entrée ou en sortie.
2.2 Objectifs et notion de robustesse

       demande     destination     date         horaire

(1) Je voudrais aller à Paris demain vers 16 heures

L'environnement CACAO doit pouvoir s'intégrer dans plusieurs types de serveurs vocaux. Pour cela il doit pouvoir prendre en compte plusieurs types de sorties des systèmes de reconnaissances de la parole utilisés (N suite de mots ou graphe de mots, voir figure 2). Plusieurs types de sorties doivent être possibles (représentation du sens sous forme de formulaires ou de structures de traits – notées SDT). Les entrées et sorties de CACAO peuvent être des données probabilisées afin de tenir compte du taux de confiance des différents outils de reconnaissance d'énoncés oraux et de leur décodage. Enfin, la compréhension doit être robuste face à des énoncés continus et spontanés qui peuvent être prononcés par n'importe quel locuteur, puisque ce type de serveurs s'adresse à un très large public.
Nous identifions plusieurs types de difficultés auxquels les outils de CACAO doivent faire face :
-	Les caractéristiques du langage naturel (Sabah, 89) comme les ellipses, déictiques, références, ambiguïtés… 
-	Les spécificités du canal oral : d'une part la syntaxe des énoncés oraux est bien plus approximative que celle de l'écrit ; d'autre part, du fait du caractère spontané des énoncés, ces derniers peuvent être entachés d'hésitations, d'autocorrection…
-	Les variabilités du comportement de l'usager : le système devant être accessible pour tous, tout le monde, du novice à l'habitué, doit être compris. De plus le comportement d'un usager donné peut évoluer tout au long du dialogue en particulier si celui-ci ne se déroule pas correctement.
3. Description de l'environnement CACAO
3.1 Modélisation pour des IHM tous public
Afin de répondre aux divers problèmes de robustesse exposés au paragraphe 2.2, nous avons choisi un modèle stochastique fondé sur les segments conceptuels. Le modèle de compréhension utilisé dans CACAO est basé sur une approche stochastique avec des segments conceptuels.

Figure 2 —  Les types d'entrées et de sorties dans CACAO.

SDT

formulaire

Graphe de mots

N suites de mots

CACAO

Un segment conceptuel réunit les groupes de mots ayant un sens commun (par exemple des groupes de mots comme "partir pour Saint-Petersbourg" et "aller à  Moscou" font partie du même segment conceptuel 'direction'). Chaque segment conceptuel est représenté sous la forme d'un modèle de Markov caché et n'importe quel énoncé peut être décomposé en une suite de segments (voir l’exemple (1) comportant 4 segments). 
L'avantage de cette modélisation est de permettre un aperçu plus global des structures sémantiques possibles. Ainsi le système est capable de comprendre  le plus de monde possible.
Ce modèle permet aussi de traiter des énoncés contenant des mots hors vocabulaire (c'est à dire des mots n'appartenant pas au modèle de langage de l'application (Bousquet, 00)). Certains de ces mots sont sans intérêt pour la compréhension, d'autres sont par contre, essentiels. Dans ce modèle, la compréhension d'un mot dépend du segment conceptuel où il se trouve. Ce principe permet alors de traiter les mots ambigus, c'est à dire des mots qui n'ont pas toujours le même sens selon leur appartenance à un segment conceptuel (Bousquet, 99a).
3.2 Architecture générale
L'environnement CACAO (figure 3) comporte de nombreux outils, à savoir :
-	Un module de prétraitements permet de transformer la sortie de la reconnaissance de la parole sous la forme adéquate pour le décodage conceptuel ; les mots considérés comme inutiles sont supprimés (hésitations, mots exprimant la politesse si on ne veut pas traiter cet aspect…). Seuls  les N meilleurs énoncés sont conservés.
-	Ensuite chaque énoncé est décomposé en une suite de segments conceptuels à l'aide du module de décodage, détaillé dans (Bousquet, 99b). C'est à ce niveau qu'interviennent les connaissances linguistiques liées à l'application. La décomposition peut se faire à l'aide de deux algorithmes (au choix, Viterbi ou A*) et peut tenir compte du contexte.
-	Le module de décision retient alors la meilleure solution en tenant compte à la fois du score de la décomposition conceptuelle, de celui de la reconnaissance de la parole et éventuellement du contexte.
-	Cette solution est alors interprétée afin de fournir le sens de l'énoncé. Le sens peut être représenté sous la forme d’un formulaire. Si nous considérons l'énoncé de l'exemple (1), nous obtenons le formulaire (2) ou la SDT (3). 
Ville_d’arrivée = Paris
(2)	Date_départ = 18-02-2000    		   
Heure_départ = [15h00, 17h00]
3.3 Portabilité
Nous distinguons ici deux types de portabilité. D'une part les outils de CACAO nécessitent, pour la compréhension de la parole, un modèle de langage qui dépend en grande partie de l'application et de la langue choisie. Or nous voulons qu'un serveur intégrant CACAO soit facilement portable vers une autre langue et/ou une autre application. D'une autre part, ces outils doivent pouvoir s'intégrer facilement dans divers cadres de systèmes interactifs. 
3.3.1 Portabilité vers d'autres applications 

Figure 3 — Architecture de CACAO.

N meilleurs énoncés

Connaissances linguistiques

Décodage conceptuel

Prétraite-ments

Sortie RAP

Sens

Interprétation du sens

Décision

meilleure solution

N meilleures décompositions

Le processus de compréhension de la parole requérant un modèle de langage lié à l'application et à la langue, il n'est pas a priori facilement portable. Cependant certains segments conceptuels sont communs à diverses applications et peuvent donc être utilisés tels quels (par exemple le segment représentant l'heure est employé dans toutes les applications impliquant  l'horaire). De plus, le modèle étant stochastique, l'apprentissage des données du modèle de langage peut être fait automatiquement à partir de corpus ; CACAO comporte des outils pour réaliser cet apprentissage.
Actuellement notre environnement est utilisé pour une application d'informations sur les horaires de trains et  il a été utilisé en mars 99 par des étudiants du DESS IRR (ingénierie robotique, intelligence artificielle et reconnaissances des formes) dans le cadre d'un bureau d'étude sur la compréhension du langage naturel (Bousquet, 99b).  L'application développée par ces étudiants était la demande de renseignements sur les horaires de films dans les cinémas. Bien que le modèle de langage soit relativement simple et qu'aucune évaluation n'ait été faite par des usagers, cette expérience a démontré que CACAO peut être mis en œuvre pour diverses applications finalisées.
3.3.2 Intégration dans d'autres IHM
CACAO doit pouvoir s'intégrer dans plusieurs types d'IHM. Dans ce but, notre environnement est capable de traiter des entrées de type graphes de mots et N meilleures suites de mots ; les modules de reconnaissance de la parole actuels fournissant en général un de ces deux types de données. De même l'interprétation du sens peut être fournie sous la forme de formulaires ou de structures de traits selon les besoins. 
Chaque outil de l'environnement peut être paramétré quand les valeurs par défaut sont inappropriées. Certains paramètres permettent d'optimiser les algorithmes, d'autres d'indiquer le nombre de solutions voulues, de gérer les mots hors vocabulaire (Bousquet, 00), le contexte ou encore l'apprentissage…

Départ =     Date = 18-02-2000
	     Heure =    Inf = 15h00 
		       Sup = 17h00		 Destination = [ Ville = Paris ] 

(3)

Enfin, CACAO permet de gérer, si on le désire, le contexte en tenant compte de la question posée par le système et auquel l'énoncé est censé répondre. Le contexte peut actuellement être pris en compte au niveau du décodage conceptuel ou bien au niveau du module de décision.
3.4 Des outils pour l'évaluation
Afin de pouvoir évaluer facilement le processus de compréhension, nous avons inclus un outil permettant de comparer ce qui a été compris avec ce qui aurait dû être compris. La comparaison peut être réalisée soit au niveau  du  module de décodage conceptuel (comparaison des décompositions en segments conceptuels), soit au niveau de l'interprétation du sens (comparaison des formulaires ou des SDT).
Dans les deux cas, cet outil compte et donne le pourcentage d'énoncés faux, de segments conceptuels (ou attribut dans le second cas) substitués, supprimés et insérés. Il indique aussi quels énoncés comportent des erreurs.
3.5 Un environnent extensible et travaux futurs
L'environnement CACAO est composé de plusieurs modules C++ combinables entre eux. Il est donc facile d'y ajouter des outils.
Par la suite, nous voudrions compléter cet environnement afin que la compréhension soit multimodale. En particulier nous voudrions traiter des entrées comportant à la fois de la parole et des gestes de désignations (souris, écran tactile…). Contrairement a ce qui a été décrit dans la figure 1 et au paragraphe 2.1, il n'y aurait plus pour chaque modalité un processus de compréhension (dont les résultats seraient combinés et interprétés ultérieurement), mais un unique module de compréhension pour plusieurs modalités. Cet aspect est utile uniquement dans le cas où les énoncés contiennent des références intermodes. 
4. Conclusion
Nous avons réalisé un environnement de compréhension automatique de la parole pouvant s'intégrer aisément dans divers serveurs d'informations interactifs. CACAO comprend les outils nécessaires pour la compréhension de la parole, l'apprentissage des connaissances linguistiques et l'évaluation. L'environnement a été réalisé dans le but d'être facilement portable vers d'autres applications ou langues. La méthode est générique mais, bien que certains segments conceptuels puissent être réutilisés, le modèle de langage dépend de la langue et de l’application choisie.
Quelques tests préliminaires des outils principaux (module de décodage conceptuel avec l'algorithme de Viterbi, interprétation du sens et compréhension des mots ambigus et hors-vocabulaire) ont déjà été réalisés (Bousquet, 99a et 00) et sont encourageants. Ces tests ont été réalisés sur des transcriptions orthographiques d'énoncés réels provenant de la plate-forme DEMON (Pérennou, 98) réalisée à l'IRIT dans le cadre du projet ARISE.
Cependant, à l'heure actuelle, notre environnement n'a pas été intégré dans un serveur d'informations. Nous projetons de l'insérer dans une borne interactive de consultation d'information pour les personnes âgées, cadre favorable pour étudier la robustesse (hésitations, nombreux mots hors vocabulaire, changement de focus). Dans ce but, nous voulons compléter l'environnement afin de  comprendre les gestes de désignations et de prendre en compte les erreurs d'énonciation des personnes âgées.
Bibliographie
[Baggia et al, 99] Baggia P., Kellner A., Pérennou G., Popovici C., Sturm J. et Wessel F., (1999), "Language Modelling and Spoken Dialogue Systems - the ARISE Experience", EUROSPEECH'99, Budapest, Hongrie, 1999, Vol 4, pp. 1767-1770.
 [Bousquet et al, 99a] Bousquet-Vernhettes C., Vigouroux N. et Pérennou G. (1999), "Stochastic Conceptual model for Spoken Language Understanding", SPECOM'99, Moscou, Russie, 1999, pp. 71-74.
[Bousquet, 99b] Bousquet-Vernhettes C. (1999), "Principes et éléments de mise en œuvre pour le décodage stochastique conceptuel de la parole spontanée", support de cours du DESS IRR, Février 1999.
[Bousquet et al, 00] Bousquet-Vernhettes C., Vigouroux N. et Pérennou G. (2000), "Traitements des mots hors-vocabulaire en compréhension de la parole", soumis au JEP'2000, Aussois, France.
[Brison, 97] Brison E., "Stratégie de compréhension dans l'interaction multimodale", thèse de doctorat, Université Paul Sabatier, 6 février 1997.
[Goddeau et al, 94] Goddeau D., Brill E., Glass J., Pao C., Philips M., Polifroni J., Seneff S. et Zue V. (1994), "GALAXY: a Human-Language Interface to On-line Travel Information", ICSLP 94, Yokohama, Japon, pp. 707-710.
 [Lamel et al, 98] Lamel L., Bennacef S., Gauvain J.L., Dartigues H. et Tenem J.N. (1998), "User Evaluation of the MASK KIOSK", ICSLP'98, Sydney, Australie, pp. 2875-2878.
[Minker et al, 96] Minker W., Bennacef S. et Gauvain J.L. (1996), "A Stochastic Case Frame Approach for Natural Language Understanding", ICSLP'96, Philadelphie, USA, pp. 1013-1016. 
[Nigay, 95] Nigay L. (1995), "A Generic Platform for Adressing the Multimodal Challenge",  CHI'95, Denver, pp. 98-105.
[Price, 90] Price P. (1990), "Evaluation of Spoken Language Systems: The ATIS Domain", Proceedings of ARPA Wokshop on Human Language Technology,  pp. 91-95.
[Pérennou et al, 98] Pérennou G., De Calmès M., Lavelle A. et Tronel R. (1998), "un système de dialogue oral spontané pour l'accès téléphonique aux informations d'horaires de train - Problème de robustesse", Systèmes complexes, systèmes intelligents et interfaces,  pp. 211-216.
[Levin, Pieraccini, 95] Levin E. et Pieraccini R. (1995), "Concept-Based Spontaneous Speech Understanding System", EUROSPEECH'95, Madrid, Espagne, pp. 555-558.
[Rouilllard, Caelen, 99] Rouillard J. et Caelen J. (1999), "Multimodal information Seeking Dialogues on the World Wide Web", EUROSPEECH'99, Budapest, Hongrie, Vol 5, pp. 2151-2154.
[Sabah, 89] Sabah G. (1989), "L'intelligence artificielle et le langage", tome 1 et 2, édition hermès.
[Sadek, 96] Sadek D. (1996), "Le dialogue homme-machine : de l'ergonomie des interfaces à l'agent intelligent dialoguant", dans "Nouvelles interfaces hommes-machine", Lavoisier Editeur, Paris, série ARAGO, n°18,  pp. 277-321.
[Seneff, 92] Seneff S. (1992), "Robust Parsing for Spoken Language Systems", ICASSP'92, Vol 1, pp. 189-192.
[Seneff et al, 99] Seneff S., Lau R. et Polifroni J. (1999), "Organization, Communication, and Control in the GALAXY-II Conversationnal System", EUROSPEECH'99, Budapest, Hongrie, 1999, pp. 1271-1274.