Brevet FR2704348A1 — publié le 19941028

PROCEDE DE RECONNAISSANCE DE PAROLE A APPRENTISSAGE La présente invention concerne un procédé de traitement de la parole, comprenant une phase d'apprentissage pendant laquelle on traite un signal provenant d'un capteur pour obtenir des paramètres qui représentent des structures vocales prononcées par un utilisateur dans un environnement faiblement bruité et qu'on stocke dans un dictionnaire, et une phase de reconnaissance pendant laquelle le signal provenant du capteur est traité pour obtenir des paramètres qu'on compare à ceux stockés dans le dictionnaire pour reconnaître les structures vocales prononcées par l'utilisateur dans un environnement bruité. Un tel procédé peut notamment s'appliquer dans le domaine de la commande vocale. Dans l'exemple typique du radio-téléphone de voiture, on souhaite permettre à l'utilisateur de commander la composition des numéros de téléphone en prononçant le nom de ses correspondants. Un répertoire de numéros préenregistrés est alors associé au dictionnaire dans lequel sont stockés les représentations des noms des correspondants qui ont été mémorisées lors de la phase d'apprentissage. Les représentations cepstrales sont aujourd'hui à la base de la plupart des systèmes de reconnaissance de parole. L'idée première de cette représentation est qu'elle permet, par filtrage non-linéaire, d'isoler dans une certaine mesure l'information sémantique contenue dans la parole de l'infor- mation esthétique propre au locuteur (cf. "Homomorphic Analysis of Speech" par A.V. Oppenheim et R.W. Schafer, dans IEEE Trans.Audio Electroacoust., Vol. AU-16, juin 1968, pages 221 à 226). Cette approche utilise une technique déconvolutive basée sur la compression logarithmique de l'amplitude du module du spectre de parole. Les coefficients obtenus par transformée de Fourier inverse de ce spectre en logarithme sont appelés coefficients cepstraux (ce nom correspond à l'inversion de la première syllabe du mot spectre étant donné la transformation de Fourier inverse qui lie ces coefficients au spectre). Ce sont ces coefficients qui font en général l'objet de la reconnaissance qui, le plus souvent, fait appel aux modèles de Markov cachés et à l'algorithme de Viterbi. Une difficulté majeure est que la phase d'apprentissage est en général effectuée en l'absence de bruit (voiture à l'arrêt), tandis que la reconnaissance peut avoir lieu en environnement bruyant (voiture roulante). Il en résulte une désadaptation qui affecte l'efficacité du système de reconnaissance. Un but de l'invention est de réduire l'effet de cette désadaptation sur le taux de reconnaissance des mots prononcés en environnement bruyant. Dans ce but, l'invention propose un procédé du type indiqué au début, caractérisé en ce que l'obtention desdits paramètres pendant les phases d'apprentissage et de reconnaissance comporte la formation de trames numériques de longueur prédéterminée à partir du signal provenant du capteur, la transformation de chaque trame du domaine temporel au domaine fréquentiel pour obtenir un spectre X(i), et l'application d'une transformation inverse, du domaine fréquentiel au domaine temporel, à la grandeur Ix(i)Jt, o IX(i)I représente le module du spectre et y représente un exposant compris entre 0 et 2. En d'autres termes, la transformation homomorphique (transformée de Fourier-+logarithme-- transformée de Fourier inverse) clas- siquement utilisée pour obtenir les coefficients cepstraux est remplacée par une autre transformation homomorphique (transformée de Fourier -+ fonction racine. 1r _ transformée de Fourier inverse) permettant d'obtenir des coefficients dits "cepstraux en racine". Les propriétés mathématiques de cette transformation cepstrale en racine ont été étudiées par J.S. Lim, "Spectral Root Homomorphic Deconvolution System" dans IEEE Transactions on Acoustics, Speech, and Signal- Processing, Vol. ASSP27, N' 3, juin 1979, pages 223 à 233. L'invention propose de faire appel à cette transformation pour la reconnaissance de parole lorsqu'il y a désadaptation par rapport à la phase d'apprentissage en utilisant un exposant y compris entre 1/2 et 3/4, ce qui donne lieu à une amélioration de l'efficacité de la reconnaissance. Un intérêt principal de l'utilisation des coef- ficients cepstraux en racine dans un système de reconnaissance de parole vient de leur robustesse aux variations des conditions de bruit rencontrées entre la phase d'apprentissage et la phase de reconnaissance. Cette robustesse se justifie en comparaison à l'approche cepstrale classique (compression logarithmique) dans la mesure o les zones les plus énergétiques du spectre (celles qui sont moins affectées par le bruit) sont accentuées dans l'analyse cepstrale en racine, particulièrement pour des valeurs de y proches de 2/3. Il est également possible de renforcer ce phénomène d'accentuation en adaptant de façon dynamique la valeur de y à chaque trame de signal. Ainsi, dans un mode d'exécution de l'invention, l'exposant y, compris entre 0 et 2, est adapté de façon dynamique pour chaque trame pendant la phase de reconnaissance, par exemple par une formule du type N-1 y=K>: ln(|X(i)[) o K désigne un facteur d'adaptation et N le nombre d'échantillons par trame. Une autre possibilité consiste, dans la phase de reconnaissance, à sélectionner l'exposant y parmi plusieurs valeurs discrètes comprises entre 0 et 2. On peut ainsi appliquer la transformation inverse, du domaine fréquentiel au domaine temporel, à chacune des grandeurs IX(i)|" o l'exposant y correspond aux différentes valeurs discrètes, et sélectionner, pour chaque trame, l'exposant y en comparant les différents jeux de paramètres obtenus pour les différentes valeurs de l'exposant y à ceux stockés dans le dictionnaire et en retenant le jeu de paramètres procurant la correspondance la plus étroite avec une des structures vocales représentées dans le dictionnaire. Cette solution permet d'optimiser le taux de reconnaissance. D'autres particularités et avantages de l'invention apparaîtront dans la description ci-après d'exemples de réalisation préférés et non limitatifs. Aux dessins annexés: - la figure 1 représente sous forme synoptique un système de reconnaissance de parole mettant en oeuvre l'invention; - les figures 2 à 4 représentent sous forme synoptique des variantes de modules de calcul des coefficients cepstraux en racine utilisables dans le système de la figure 1; et - les figures 5A et 5B sont des graphiques comparant les coefficients obtenus par une transformation logarith- mique classique et par une transformation en racine selon l'invention. Un système de reconnaissance de parole comprend, de façon classique, un microphone 10, un module 11 de prétraitement du signal de sortie du microphone 10, un module 12 de calcul de coefficients représentatifs des structures vocales prononcées par l'utilisateur devant le microphone, un module d'apprentissage 13, et un module de reconnaissance 14. Sur la figure 1, on a représenté les modules 11 à 14 et le dictionnaire 16 sous forme synoptique. On comprendra que, dans la pratique, ces moyens peuvent être incorporés, en totalité ou en partie, dans un circuit spécialisé exécutant des programmes appropriés, ou encore comporter des processeurs de traitement de signal appropriés. Le module' de prétraitement 11 produit des trames numériques S(n) de longueur prédéterminée à partir du signal de sortie du microphone 10. Il comporte un filtre 17 dont le rôle est de préaccentuer le signal de sortie du microphone 10. Le filtre 17 a une fonction de transfert de la forme 1-a/z dans le domaine fréquentiel, a désignant un coefficient compris entre 0,7 et 1. La sortie du filtre 17 est adressée à un convertisseur analogique/numérique 18 qui échantillonne le signal à une cadence de 8 kHz. Les échantillons sont produits sous forme de trames de N = 256 échantillons, avec un recouvrement temporel entre trames successives (durée d'une trame = 32 ms). Les trames sont pondérées, en 19, en multipliant chaque échantillon n (0 H(n) = 0,54 - 0,46.cos(2irn/(N-1)). Les trames S(n) ainsi obtenues sont adressées au module de calcul 12 qui, dans une première étape, leur applique une transformée de Fourier rapide (bloc 21) pour obtenir un spectre du signal pour chaque trame. Le spectre peut être obtenu pour N valeurs discrètes du domaine fréquentiel ou, de façon simplifiée, pour N/2 valeurs compte tenu de la symétrie du module du spectre. La sortie du bloc 21 est constituée par les modules des valeurs complexes du spectre. On peut opérer une soustraction spectrale sur le résultat de la transformée de Fourier afin de réduire la contribution du bruit. Une description d'un module 22 de soustraction spectrale non linéaire utilisable dans le cadre de l'invention est donnée dans la demande de brevet européen N' 92 402598.4. Le module du spectre JX(i)J, corrigé par la soustraction spectrale, est ensuite soumis à une fonction de compression en racine lx(i)lI pour chaque valeur discrète i du domaine fréquentiel (bloc 23), y désignant un exposant de préférence compris entre 1/2 et 3/4. Une transformée de Fourier inverse 27 est alors appliquée à la grandeur IX(i)IT pour fournir les coefficients cepstraux en racine C,(k). Comme la fonction IX(i)Iy est réelle et paire, la transformée de Fourier inverse opérée par le bloc 27 peut être une transformée en cosinus du type: N-1 C (k)=- IX(i) [Y. cos(2ck(i+0,5)/9 k désignant l'indice des "quéfrences". Dans la pratique, on peut se contenter de calculer une vingtaine de coefficients CT(k), par exemple pour 0 En phase d'apprentissage, les coefficients CT(k) sont fournis au module d'apprentissage 13 qui génère des modèles de type HMM (modèle de Markov caché à densités continues) à partir d'un certain nombre de répétitions de chaque mot par l'utilisateur en environnement non bruité ou faiblement bruité. Ces modèles HMM constituent les paramètres qui représentent les différents mots à reconnaître. Ils sont stockés dans la mémoire constituant le dictionnaire 16 à l'issue de l'apprentissage. Pour davantage d'explications sur les modèles de Markov cachés, on pourra par exemple se reporter aux articles "Continuous speech recognition using hidden Markov models" par J. Picone, IEEE ASSP Magazine, juillet 1990, pages 26-41, et "An introduction to hidden Markov models", par L.R. Rabiner et al, IEEE ASSP Magazine, janvier 1986, pages 4-16. En phase de reconnaissance, les coefficients C,(k) sont fournis au module de reconnaissance 14 qui les compare aux modèles stockés dans le dictionnaire 16 en appliquant par exemple des calculs de distances cepstrales euclidiennes pondérées (voir "Experiments with Nonlinear Spectral Subtrator (NSS), Hidden Markov Models and Projection, for robust speech recognition in cars", P. Lockwood, J. Boudy, Speech Communication Journal, N 11, 1992, pages 215-228), et l'algorithme de Viterbi. La figure 5B montre des coefficients cepstraux en racine obtenus pour une valeur constante optimale de l'exposant (y = 2/3) dans le cas d'une femme française prononçant la voyelle [i] dans un environnement calme (trait plein) ou bruité (voiture roulant à 90 km/h, pointillés). La figure 5A montre les coefficients obtenus classiquement avec une fonction de compression logarithmique dans les mêmes conditions. On voit que le bruit affecte sensiblement moins les coefficients obtenus selon l'invention, particulièrement pour les indices k d'ordre élevé. La soustraction spectrale 22 et la préaccentuation par le filtre 17, qui ne sont pas obligatoires, contribuent également à améliorer le taux de reconnaissance. Cette amélioration apparaît au tableau I, o on indique les taux de reconnaissance, en %, obtenus pour la valeur optimale 7= 2/3 en utilisant la base de données Matra qui comporte quarante-trois mots français prononcés par quatre locuteurs différents avec quatre prononciations pour l'apprentissage. L'effet favorable de la préaccentuation est surprenant car il n'est pratiquement pas observé lorsqu'on utilise la transformation homomorphique classique à fonction de compression logarithmique. sans soustraction avec soustraction spectrale spectrale sans préaccentuation 64,9 92,7 avec préaccentuation 91,1 98,0 (a = 0,98) TABLEAU I Les coefficients cepstraux en racine C,(k) peuvent subir un certain. nombre d'autres transformations avant d'être adressés au module d'apprentissage 13 ou de reconnaissance 14. Par exemple, l'apprentissage et la reconnaissance peuvent porter sur la dérivée temporelle d'ordre 1 ou d'ordre 2 des coefficients cepstraux en racine, calculée sous forme discrète. La dérivée d'ordre 1 peut être calculée par la formule t+j à Cf(k, t) = (z (- O. Cf (k, -) o t représente l'indice temporel de la trame courante, C1(k,t) représente le coefficient cepstral en racine d'indice k pour la trame d'indice t, et j représente un nombre entier inférieur à 4. De façon semblable, la dérivée d'ordre 2 s'exprime par t+j Li2C (,) tt). A C. (k, t) Une autre transformation possible illustrée à la figure 2, consiste à normaliser les coefficients CT(k) (bloc 28) en les divisant par la quantité N-1 cp (O) =E IX(i) I dans laquelle 5 désigne un nombre compris entre O et 2 qui n'est pas nécessairement égal à l'exposant y de la fonction en racine. La normalisation a pour effet de rendre les coefficients C,'(k) ainsi obtenus insensibles aux variations de gain du signal. Le paramètre D peut être choisi de manière à optimiser la représentation du signal dans le bruit. Lorsque f = Y, le bloc de calcul 24 n'est pas nécessaire, la quantité C(0) = Cy,(0) étant disponible comme résultat de la transformée de Fourier inverse pour k=0. Les coefficients cepstraux en racine normalisés C1*(k) peuvent être adressés directement en entrée des modules d'apprentissage et de reconnaissance, ou ils peuvent d'abord être transformés par une méthode classique de prédiction linéaire (voir par exemple "Linear Prediction: A Tutorial", par J. Makhoul, Proc. IEEE, Vol. 63, N'4, avril 1975; et "Effectiveness of Linear Prediction Charac- teristics of the Speech Wave for Automatic Speaker Identification and Verification", par B.S. Atal, J. Acoust. Soc. Am., Vol. 55, N'6, juin 1974). La mise en oeuvre de la prédiction linéaire s'effectue alors de la façon suivante: les coefficients AJ de prédiction linéaire sont calculés par résolution des équations de Yule-Walker: p AJ=-C (i) - Aky. C.(i-k) k=!7si# ou p est l'ordre de la prédiction (pouvant varier de 1 à ), et C *(k) est le k-ième coefficient cepstral en racine normalisé avec È= 7. On calcule ensuite un autre jeu de coefficients cepstraux. Les nouveaux coefficients cepstraux C1LP(k) issus de l'analyse par prédiction linéaire sont calculés à partir de Aiy par les formules récursives suivantes: C (î1) =-AY k-1 Cpour k variant de 2. l'ordre p de la pr(k-diction. pour k variant de 2 à l'ordre p de la prédiction. La comparaison avec les modèles stockés dans le dictionnaire 16 s'effectue alors sur la base des coefficients cepstraux transformés CYLP(k). En appliquant la transformation homomorphique en racine, on n'a pas observé de différences d'efficacité importantes entre l'utilisation directe des coefficients cepstraux en racine C,(k) (LFCC) et leur utilisation avec prédiction linéaire CILP(k) (LPCC), étant entendu que, dans ce dernier cas, les coefficients cepstraux en racine sont considérés comme fonction d'autocorrélation dans la résolution des équations de Yule- Walker. La figure 3 montre une variante de réalisation du module de calcul 12 permettant une adaptation dynamique de l'exposant y pour chaque trame lors de la phase de reconnaissance. A chaque trame, l'exposant y est calculé par le bloc 26 selon la formule: N-1 y =K. ln X lX(i) [) o ln(.) désigne le logarithme népérien, et K désigne un facteur d'adaptation choisi de façon à contrôler la plage des valeurs prises par y (ymin d'optimiser la robustesse du système en présence de bruit. En phase d'apprentissage, on utilise de préférence la même procédure d'adaptation de l'exposant. Bien entendu, des fonctions d'adaptation autres que celle explicitée ci-dessus sont envisageables. La figure 4 montre une autre variante de réalisation du module de calcul 12, dans laquelle les coefficients cepstraux en racine sont calculés pour trois valeurs discrètes y,, 72 et y3 de l'exposant y comprises entre 0 et 2 lors de la phase de reconnaissance. Les blocs 23. 1, 23.2 et 23.3 calculent les grandeurs IX(i)ll, IX(i)IY2 et IX(i)I73 qui sont chacune soumises à la transformée de Fourier inverse en 27.1, 27.2 et 27.3. Des valeurs typiques pour les exposants 71, Y2 et 73 sont respectivement 1/4, 2/3 et 1. A chaque trame, les trois jeux de coefficents CY l(k), Cy 2(k), Cy 3(k) sont adressés en parallèle au module de reconnaissance 14 qui retient alors le jeu de coefficients fournissant la correspondance la plus étroite avec l'un des modèles stockés dans le dictionnaire 16. Cette sélection de l'exposant y permet d'optimiser le taux de reconnaissance en augmentant seulement le volume de calcul en proportion du nombre de valeurs discrètes utilisées. Dans la phase d'apprentissage, les modèles HMM sont établis avec une valeur fixe de l'exposant égale à la plus petite valeur 71 parmi les valeurs discrètes utilisées en phase de reconnaissance. REVENDICATIONS 1. Procédé de traitement de la parole, comprenant une phase d'apprentissage pendant laquelle on traite un signal provenant d'un capteur (10) pour obtenir des paramètres qui représentent des structures vocales prononcées par un utilisateur dans un environnement faiblement bruité et qu'on stocke dans un dictionnaire (16), et une phase de reconnaissance pendant laquelle le signal provenant du capteur (10) est traité pour obtenir des paramètres qu'on compare à ceux stockés dans le dictionnaire (16) pour reconnaître les structures vocales prononcées par l'utilisateur dans un environnement bruité, caractérisé en ce que l'obtention desdits paramètres pendant les phases d'apprentissage et de reconnaissance comporte la formation de trames numériques (S(n)) de longueur prédéterminée à partir du signal provenant du capteur, la transformation de chaque trame du domaine temporel au domaine fréquentiel pour obtenir un spectre X(i), et l'application d'une transformation inverse, du domaine fréquentiel au domaine temporel, à la grandeur IX(i)ly, o IX(i)I représente le module du spectre et y représente un exposant compris entre 1/2 et 3/4. 2. Procédé selon la revendication 1, caractérisé en ce que l'exposant y est constant et de l'ordre de 2/3. 3. Procédé de traitement de la parole, comprenant une phase d'apprentissage pendant laquelle on traite un signal provenant d'un capteur (10) pour obtenir des paramètres qui représentent des structures vocales prononcées par un utilisateur dans un environnement faiblement bruité et qu'on stocke dans un dictionnaire (16), et une phase de reconnaissance pendant laquelle le signal provenant du capteur (10) est traité pour obtenir des paramètres qu'on compare à ceux stockés dans le dictionnaire (16) pour reconnaître les structures vocales prononcées par l'utilisateur dans un environnement bruité, caractérisé en ce que l'obtention desdits paramètres pendant les phases d'apprentissage et-de reconnaissance comporte la formation de trames numériques (S(n)) de longueur prédéterminée à partir du signal provenant du capteur, la transformation de chaque trame du domaine temporel au domaine fréquentiel pour obtenir un spectre X(i), et l'application d'une trans- formation inverse, du domaine fréquentiel au domaine temporel, à la grandeur IX(i)lf, o IX(i)j représente le module du spectre et y représente un exposant compris entre 0 et 2 qui, dans la phase de reconnaissance, est adapté de façon dynamique pour chaque trame. 4. Procédé selon la revendication 3, caractérisé en ce que, dans la phase de reconnaissance, l'exposant y est calculé pour chaque trame selon la formule N-1 y=K. ln(lX(i) 1) i=O o K désigne un facteur d'adaptation positif, N désigne le nombre d'échantillons numériques dans la trame, et ln(.) désigne le logarithme népérien. 5. Procédé de traitement de la parole, comprenant une phase d'apprentissage pendant laquelle on traite un signal provenant d'un capteur (10) pour obtenir des paramètres qui représentent des structures vocales prononcées par un utilisateur dans un environnement faiblement bruité et qu'on stocke dans un dictionnaire (16), et une phase de reconnaissance pendant laquelle le signal provenant du capteur (10) est traité pour obtenir des paramètres qu'on compare à ceux stockés dans le dictionnaire (16) pour reconnaître les structures vocales prononcées par l'utilisateur dans un environnement bruité, caractérisé en ce que l'obtention desdits paramètres pendant les phases d'apprentissage et de reconnaissance comporte la formation de trames numériques (S(n)) de longueur prédéterminée à partir du signal provenant du capteur, la transformation de chaque trame du domaine temporel au domaine fréquentiel pour obtenir un spectre X(i), et l'application d'une trans- formation inverse, du domaine fréquentiel au domaine temporel, à la grandeur IX(i)lY, o IX(i)l représente le module du spectre et y représente un exposant qui, dans la phase de reconnaissance, est sélectionné parmi plusieurs valeurs discrètes (y, y2, 73) comprises entre O et 2. 6. Procédé selon la revendication 5, caractérisé en ce que, dans la phase de reconnaissance, on applique la transformation inverse, du domaine fréquentiel au domaine temporel, à chacune des grandeurs IX(i)lt o l'exposant y correspond aux différentes valeurs discrètes (y, 72, Y3), et en ce que, pour chaque trame, on sélectionne l'exposant y en comparant les différents jeux de paramètres obtenus pour les différentes valeurs (71, 72, 'Y3) de l'exposant y à ceux stockés dans le dictionnaire (16) et en retenant le jeu de paramètres procurant la correspondance la plus étroite avec une des structures vocales représentées dans le dictionnaire. 7. Procédé selon la revendication 5 ou 6, caractérisé en ce que on utilise trois valeurs discrètes ('Y71, 72'Y2, '3) de l'exposant 'y qui sont respectivement de l'ordre de 1/4, 2/3 et 1. 8. Procédé selon l'une quelconque des revendications à 7, caractérisé en ce que, dans la phase d'apprentissage, on applique la transformation inverse, du domaine fréquentiel au domaine temporel, à la grandeur IX(i)ITl, o '1 désigne la plus petite des valeurs discrètes de l'exposant y utilisées en phase de reconnaissance 9. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'on applique au signal provenant du capteur une préaccentuation par un filtre (17) dont la fonction de transfert, dans le domaine fréquentiel, est de la forme 1 - a / z, o a désigne un coefficient compris entre 0,7 et 1. 10. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que les coefficients (C.(k)) obtenus par l'application de ladite transformation inverse sont normalisés en les divisant par un facteur N ceY(0) lx()I o N désigne le nombre d'échantillons numériques par trame et B désigne un nombre compris entre O et 2. 11. Procédé selon la revendication 10, caractérisé en ce que le nombre 5 est égal à l'exposant Y, en ce qu'on applique aux coefficients normalisés (C,*(k)) une prédiction linéaire, en ce qu'on applique aux résultats (Ait) de la prédiction linéaire un calcul récursif pour obtenir un autre jeu de coefficients (C1LP(k)), et en ce que les paramètres faisant l'objet de la comparaison avec le dictionnaire (16) sont constitués par cet autre jeu de coefficients (CyLP(k)).