Reconnaissance vocale
Transcription
Reconnaissance vocale
Reconnaissance vocale Recherche et technologies Activités Projet Fondé en 1995 par la Faculté Polytechnique de Mons (FPMs), le centre de recherche MULTITEL possède une large expérience dans le domaine du traitement de la parole, et plus particulièrement de la reconnaissance automatique de parole (Automatic Speech Recognition, ASR). En outre, le centre de recherche MULTITEL entretient une étroite collaboration avec le laboratoire de Théorie des Circuits et Traitement de Signal (TCTS) de la FPMs, qui est actif dans le domaine de la reconnaissance automatique de parole depuis près de 20 années, au travers de nombreux projets de recherche nationaux et européens (cfr. tableau I). En 2000, MULTITEL est devenu un centre de recherche privé indépendant sous la forme légale d’une association sans but lucratif. Les activités de MULTITEL en reconnaissance automatique de parole s’orientent autour de trois pôles : recherche appliquée, développement logiciel et consultance. Projet Description DIVINES CE – FP6 STREP (2004 – 2007) Diagnostic and Intrinsic Variabilities in Natural Speech SIMILAR CE – FP6 NoE (2004 – 2008) European Taskforce for Creating Human-Machine Interfaces Similar to H man-Human Communication ALLADIN CE – FP6 STREP (2004 – 2007) Natural Language Based Decision Support in Neuro-Rehabilitation PSOC-ASR RW – FIRST (2004 – 2008) Robust Speech Recognition on Programmable System on Chip (PSoC MULG2P RW – FIRST (2003 – 2004) MULG2P RW – FIRST (2003 – 2004) MAJORCALL EUREKA (2003 – 2005) Customer Relationship Management Call Center MODIVOC RW – INITIATIVE (2002 – 2004) Systèmes Mobiles et Distribués à Interface Vocale ARTHUR RW – WDU (2000 – 2003) Architecture de Télécommunication Hospitalière pour les Services d’Urgence DEMOSTHENES RW – WDU (1998 – 1999) Logiciel Multimédia pour l’Apprentissage et la Correction du Néerlandais Parlé RESPITE CE – FP5 ESPRIT (1998 – 2001) Recognition of Speech by Partial Information Techniques THISL CE – FP5 ESPRIT (1997 – 2000) Thematic Indexing of Spoken Language Description SPRACH CE – FP5 ESPRIT (1995 – 1998) Improvement of HMM/ANN Speech Recognition Algorithms for Connectionist Hybrids HIMARNNET CE – FP4 ESPRIT (1993 – 1995) Hidden Markov Models and Neural Networks for Automatic Speech Recognition COST 278 Spoken Interaction CE – COOPERATION in Telecommunication (2002 – ) COST 249 Continuous Speech Recognition CE – COOPERATION over the Telephone (1995 – 2000) COST 232 Speech Recognition CE – COOPERATION over the Telephone Line (1983 – 1993) RW : Région Wallonne – CE : Communauté Européenne Tableau I : Projets TCTS - MULTITEL nationaux et européens mettant en oeuvre une recherche ou un développement dans le domaine de la reconnaissance automatique de parole. Recherche Appliquée Cette activité consiste en l’étude des éléments mathématiques, algorithmiques et informatiques nécessaires au développement de logiciels de reconnaissance automatique de parole. Outre une activité de veille technologique, MULTITEL s’intéresse actuellement aux techniques d’analyse acoustique robuste aux conditions acoustiques défavorables (par exemple en présence de bruit ou dans un environnement réverbérant), aux techniques de transcription phonétique automatiques, à l’optimisation automatique des dialogues, ainsi qu’à la reconnaissance automatique de parole distribuée. Développement Logiciel La recherche réalisée en reconnaissance automatique de parole depuis plusieurs années a conduit au développement du logiciel STRUT (Speech Training and Recognition Unified Tool). Basé sur le concept de la programmation orientée objet par blocs (Object Oriented Block Programming, OOBP), le logiciel STRUT fournit une plate-forme pour le développement et l’évaluation d’algorithmes de reconnaissance automatique de parole. Ses principales caractéristiques techniques sont reprises dans le tableau II. La société BABEL TECHNOLOGIES assure une exploitation commerciale des divers logiciels développés par MULTITEL dans le cadre du projet STRUT. Reconnaissance vocale Fonction Description Détection de Parole Manuelle (mode push-to-talk) Automatique (mode voiced-activated) Analyse Acoustique Techniques MFCC / LPCC / PLP Multi-bandes (robuste au bruit acoustique) Modèles de mots ou de phonèmes Hidden Markov Models (HMM) + Vector Quantification (VQ) + Gaussian Mixture Models (GMM) + Artificial Neural Network (ANN) Modélisation Acoustique Modèles dépendants du locuteur Modèles indépendants du locuteur Langues disponibles : français / néerlandais / anglais / américain / allemand / italien / espagnol / suédois / islandais / turc / grec / arabe Développement rapide d’une nouvelle langue sur demande Décodage Viterbi pour mots isolés ou parole continue Petit vocabulaire (< 10 mots) Grand vocabulaire (> 2000 mots) Grammaire word-pair Décodeur Liste N-best Mesure de confiance Détection de mots clef (mode keyword spotting) Plate-forme Multi-OS : Windows 98, 2000, NT4.0, XP Windows CE (plate-forme embarquée) Linux distante disposant de plus de ressources et hébergeant les bases de données nécessaires au traitement des informations saisies au moyen du module client. La transmission peut être réalisée au travers d’un réseau sans fil (par exemple, WiFi ou Bluetooth), laissant ainsi une totale liberté de mouvement à l’utilisateur. Le module serveur interprète les données reçues et génère la réponse appropriée, par exemple, l’envoi des informations nécessaires au remplissage du second champ du formulaire. Le dialogue se poursuit entre l’utilisateur et la machine jusqu’à ce que l’ensemble des champs définis dans le formulaire aient été remplis. Le langage XML (Extended Markup Language) est utilisé pour décrire les formulaires électroniques et la stratégie du dialogue. Outre la démonstration des techniques de reconnaissance de parole développées par MULTITEL sur un ordinateur de poche, l’application SpeecForms illustre le principe de multimodalité dans les interfaces homme-machine. Par exemple, si l’utilisateur est amené à choisir un élément dans une liste pour remplir un champ du formulaire, l’affichage aux dimensions limitées du PDA peut rendre l’accès à l’élément souhaité fastidieux. La reconnaissance automatique de parole permet par contre une sélection directe. Afin de prendre en compte les erreurs possibles du système ASR, en particulier dans des conditions acoustiques défavorables, on préfère garder l’ensemble des meilleures hypothèses (technique N-best). Celles-ci, en nombre restreint, peuvent être alors affichées de façon conviviale et le choix final est opéré de manière classique. Cet exemple met en évidence la collaboration entre deux modalités, graphique et vocale, afin de choisir un élément dans une liste. La modalité vocale permet de restreindre la liste, éventuellement à un seul élément, tandis que la modalité graphique permet de compenser les erreurs de la modalité vocale. Tableau II : Caractéristiques du logiciel STRUT. Consultance Outre ses activités de recherche et développement, MULTITEL assure un service de consultance en reconnaissance automatique de parole : formations générales ou spécifiques, aide au développement d’applications (spécification et prototypage), collecte des données vocales d’entraînement et d’évaluation pour des systèmes ASR, maintenance des systèmes ASR déployés, etc. Démonstrations SpeechForms Cette application démontre l’utilité d’une interface vocale, et en particulier de la reconnaissance automatique de parole, pour le remplissage de formulaires électroniques sur un ordinateur de poche (Pocket Digital Assistant, PDA). Le schéma de l’application est présenté à la figure I. L’utilisateur communique avec la machine au moyen d’un module client exécuté sur un PDA et disposant d’une interface graphique et d’une interface vocale. Lorsque l’application est initiée, l’utilisateur est invité à remplir le premier champ d’un formulaire. Pour cela, un message graphique est affiché et un message vocal peut être émis. Sa requête peut alors être saisie soit de manière classique au moyen de l’écran tactile, soit par la voix au moyen d’un système ASR. Le gestionnaire de formulaire traite les informations acquises et les transmet ensuite au module serveur. Il n’est pas toujours possible ou souhaitable d’exécuter le module client et le module serveur sur la même machine. Dans le cadre d’une application mobile, le module client est exécuté sur le PDA tandis que le module serveur est exécuté sur une machine Figure I : Schéma de l’application SpeechForms pour le remplissage multimodal de formulaires électroniques sur PDA. SpeechKiosk La borne interactive SpeechKiosk (cfr. figure II) utilise les techniques ASR développées au sein de MULTITEL afin de réaliser une hôtesse d’accueil virtuelle. Par exemple, SpeechKiosk peut être placée à l’entrée d’un bâtiment et un visiteur peut s’adresser à la borne afin d’obtenir des informations ou entrer en contact avec un membre du personnel. Il suffit au visiteur de se présenter devant la borne et d’utiliser l’écran tactile, ou alternativement, de prononcer le nom de la personne qu’il souhaite contacter. Le nom est alors reconnu et le contact est établi. Cette application met en oeuvre les techniques de détection de parole et d’analyse acoustique robustes développées par MULTITEL pour la reconnaissance automatique de parole, et constitue un autre exemple d’interface multimodale basée sur la collaboration de la voie avec d’autres modalités haptiques (ex : l’écran tactile). Reconnaissance vocale subit ensuite une conversion analogique-numérique, c’est-àdire qu’il est discrétisé à la fois en temps (échantillonnage) et en valeur (quantification). On obtient ainsi un signal digital sous la forme d’une séquence d’échantillons qui mesurent l’amplitude du signal du microphone à des instants régulièrement espacés, et l’amplitude de chaque échantillon est représentée sous sa forme digitale, utilisable par la machine. Le choix de la fréquence d’échantillonnage est généralement fonction de l’application visée et de la plate-forme utilisée (par exemple, 8000 Hertz pour les applications sur ligne téléphonique et 16000 Hertz pour les applications. Figure II : Borne interactive SpeechKiosk à interface vocale, matériel construit par IMMEDIA et technologies vocales développées par MULTITEL. Technologie La parole s’est imposée comme le mode de communication entre individus par excellence. De nos jours, la parole devient également une interface pour la communication entre l’homme et la machine (cfr. figure III). Le locuteur convertit l’information qu’il souhaite communiquer à la machine en parole, c’est-à-dire en une séquence de sons structurés et associés pour former des mots et des phrases. La parole se propage alors sous la forme d’une onde acoustique jusqu’à un microphone qui constitue la porte d’entrée du système de Reconnaissance Automatique de Parole (Automatic Speech Recognition, ASR). Le signal délivré par le microphone y est décodé, c’est-à-dire l’information linguistique encodée par le locuteur dans le signal de parole est extraite sous la forme d’une séquence de mots. Cette information peut ensuite être interprétée par la machine et l’action appropriée peut être prise. Par exemple, la machine peut générer un message vocal grâce à un système de Synthèse Automatique de Parole (Text-To-Speech, TTS) et l’émettre à destination du locuteur au moyen d’un hautparleur. Figure IV : Système classique de reconnaissance automatique de parole. Détection de Parole Ce module a pour fonction de détecter les segments où la parole est présente dans le signal digital. Seuls ces segments qui constituent le signal de parole sont transmis au module suivant. Le rôle du détecteur de parole est de limiter le coût de calcul et éviter d’exécuter abusivement le processus ASR lorsque des événements sonores imprévus se produisent. Cette fonctionnalité est parfois réalisée de manière manuelle : le locuteur est invité à presser un bouton pour activer le processus ASR lorsqu’il prononce la phrase à reconnaître (mode push-to-talk). Analyse Acoustique Figure III : Schéma d’une interface homme-machine vocale. Les systèmes ASR modernes reposent sur une architecture séquentielle et modulaire (cfr. figure IV) dans laquelle une onde acoustique de parole est mesurée et analysée afin d’en extraire son contenu linguistique sous la forme d’une séquence de mots [1,2]. Interface Audio Ce module réalise l’acquisition de l’onde acoustique de parole captée par un microphone et la convertit en une forme exploitable par la machine. Il existe de nombreux types de microphones mais tous assurent la même fonction : transformer les fluctuations de pression causées par l’onde acoustique de parole en un signal électrique. Ce signal Le signal de parole démontre une très grande variabilité. Il est en effet peu probable de mesurer deux signaux de parole totalement semblables même si des mots identiques sont prononcés par le même locuteur.Cette variabilité rend le processus de reconnaissance automatique de parole excessivement complexe. Le rôle du module d’analyse acoustique est de traiter le signal de parole de manière à réduire cette variabilité. Pour se faire, une analyse temps-fréquence est réalisée. Le signal de parole est observé au travers d’une fenêtre d’analyse d’une durée classique de 30 millisecondes et se déplaçant par pas de 10 millisecondes. Pour chaque position de la fenêtre d’analyse, une estimation de l’enveloppe du spectre, c’est-à-dire de la répartition de l’énergie en fonction de la fréquence, du signal de parole observé est calculée. Cette estimation est exprimée de façon concise sous la forme d’un vecteur d’une dizaine de coefficients. On obtient ainsi une séquence de vecteurs acoustiques qui décrivent l’évolution temporelle de l’enveloppe spectrale du signal de parole. Reconnaissance vocale Il existe de nombreux algorithmes pour calculer des vecteurs acoustiques mais ils visent tous à obtenir des vecteurs acoustiques représentatifs de l’information linguistique contenu dans le signal de parole et aussi insensibles que possible aux causes non-linguistiques de variabilité tels que l’identité du locuteur, l’environnement acoustique (par exemple, le bruit d’ambiance) ou le canal de transmission (par exemple, la distorsion induite par une ligne téléphonique ou un microphone inadapté). Décodage Acoustique Pour pouvoir reconnaître un mot, le système ASR doit avoir appris à quoi ressemblent les réalisations acoustiques de ce mot en termes de vecteurs acoustiques. Durant une phase d’apprentissage, on présente au système ASR des exemples pour chacun des mots possibles. Un modèle statistique représentatif de la distribution des vecteurs acoustiques pour le mot considéré peut alors être construit. On obtient ainsi un modèle acoustique de la parole, c’està-dire un ensemble de modèles statistiques pour chacun des mots considérés, qui est stocké dans le système ASR. Cependant, une modélisation acoustique basée sur le mot devient problématique lorsque le nombre de mots possibles devient trop important (>50 mots). En particulier, la collecte des données pour réaliser la phase d’apprentissage devient fastidieuse voire irréaliste. On préfère généralement utiliser des unités linguistiques plus petites que le mot mais en nombre plus restreint pour décrire la parole. Un choix classique est le phonème. La plupart des langues peuvent être définies complètement par quelques dizaines de phonèmes. Ils constituent l’ensemble des sons élémentaires dont est composé l’énoncé de tout mot, toute phrase. Durant la phase d’apprentissage, un modèle statistique est calculé pour chaque phonème et les modèles de mots sont obtenus par concaténation des modèles de phonèmes. Une telle approche nécessite de disposer d’une transcription phonétique de chaque mot, c’est-à-dire de sa prononciation en termes de phonèmes. Pour cela, on recourt à un lexique contenant une ou plusieurs prononciations pour chaque mot. De nos jours, la technique dominante pour la modélisation acoustique repose sur la théorie des Modèles de Markov Cachés (Hidden Markov Model, HMM) [3,4]. En phase d’utilisation, étant donné un signal de parole, le module de décodage acoustique recherche la suite de mots dont la séquence de modèles associés est la plus « proche » de la série de vecteurs acoustiques observés. Ce problème est complexe car ni le nombre de mots, ni leur durée ne sont connus au préalable. Le formalisme des HMMs a permis de développer des algorithmes de décodage performants. Ces algorithmes utilisent le modèle acoustique et la recherche de la meilleure séquence de mots est contrainte par le lexique qui définit les mots reconnaissables et la grammaire qui détermine les séquences de mots autorisées ou du moins les plus probables. Applications Les applications de la reconnaissance automatique de parole sont nombreuses. Elles existent là où la parole peut remplacer ou compléter une interface existante pour communiquer avec une machine, par exemple, pour accéder à un service ou contrôler une fonctionnalité d’un équipement. La parole s’impose parfois comme le seul mode de communication, par exemple dans les applications mains-libres où l’utilisateur ne touche pas l’équipement. Le tableau III présente quelques exemples d’applications démontrant l’intérêt de la reconnaissance automatique de parole. Domaine Applications Téléphonie Automatisation de transactions téléphoniques (ex : opérations bancaires), selfservice téléphonique pour l’accès à des services d’information (ex : consultation de bulletins météorologiques), etc. Automobile Contrôle mains-libres des équipements tels que la radio, le conditionnement d’air, le système de navigation, le téléphone sans fil (ex : voice dialing), les systèmes télématiques, etc. Multimédia Logiciels de dictée vocale, interaction vocale dans les logiciels pédagogiques (ex : apprentissage des langues) et lud ques (ex : jeux vidéo), etc. Médical Aide aux personnes handicapées, rééducation assistée (ex : exercices de logop die automatisés), etc. Industriel Contrôle vocal de machines, applications pour la gestion de stocks, etc. Tableau III : Exemples d’applications de la reconnaissance automatique de parole Références [1] - R. Boite, H. Bourlard, T. Dutoit, J. Hancq, H. Leich, Traitement de la Parole, Presses Polytechni-ques et Universitaires Romandes, 2000. [2] - B. Gold, N. Morgan, Speech and Audio Signal Processing, John Willey & Sons, 2000. [3] - L. R. Rabiner, A Tutorial on Hidden Markov Models and Select Application in Speech Recognition, Proceedings of the IEEE, vol. 77, no. 2, pp. 257-286, Feb. 1989. [4] - N. Morgan, H. Bourlard, Continuous Speech Recognition, IEEE Signal Processing Magazine, vol. 12, no. 3, pp. 24-42, May 1995. Contact Parc Initialis Rue Pierre et Marie Curie 2 B-7000 MONS BELGIQUE Tél. : +32 65 34 27 22 ou Tél : +32 65 34 27 86 Fax : +32 65 34 27 98 [email protected]