Reconnaissance

La Reconnaissance Vocale : l'approche globale


Principe de l'approche globale

Il s'agit de rechercher dans un dictionnaire préenregistré le mot le plus proche de l'image acoustique du mot prononcer.


Traitement du signal

Il faut en tout premier lieu traiter le signal acoustique pour effectuer un tri sur les informations disponibles et de n'en retenir que les plus pertinentes au point de vue phonétique.
La parole est caractérisé par une amplitude, une fréquence, une forme du signal sonore ; il faudra quantifier ces trois données.

L'analyse du signal reçu peut être fait de différentes façons que l'on peut classer en trois catégories :

- Méthodes d'identification

Elles sont fondées sur une connaissance des mécanismes de production (ex : le conduit vocal).
La méthode la plus utilisée est celle basée sur le codage prédictif linéaire (appelée LPC).


Spectre lissé obtenu par prédiction linéaire (LPC)

On commence en considérant que la parole est produit par un buzzer à la fin d'un tube. La glotte (l'espace entre les cordes vocales) produit le bourdonnement, qui est caractérisé par son intensité (le volume) et la fréquence (le pitch). L'étendue vocale (la gorge et la bouche) forme le tube, qui est caractérisé par ses résonances, qui sont appelées formants. On repère alors ces fréquences formantiques (maximum d'énergie dans le spectre).
Le but du système LPC est de déterminer le formant du signal de discours. La solution est une équation de différence, qui exprime chaque échantillon du signal comme une combinaison linéaire d'échantillons précédents. Une telle équation est appelée une prédiction linéaire (d'où le nom de Codage Prédictif Linéaire).


Empreinte obtenue par prédiction linéaire (LPC).

Les coefficients de l'équation de différence (les coefficients de prédiction) caractérisent le formant et le système LPC doit évaluer ces coefficients.
Cela implique le calcul d'une matrice de valeurs de coefficient et de la solution d'un jeu d'équations linéaires. Plusieurs méthodes (l'autocorrélation, la covariance) peuvent être employées pour assurer la convergence vers une solution unique.

- Méthode spectrale

A partir d'un spectrogramme (représentation fréquentielle et temporelle obtenue par les principes posés par Fourrier) du signal reçu, on visualise la majorité des phonèmes émis.

- Méthode d'audition

Elle se base sur les connaissances humaines des mécanismes d'audition.

 

Ces méthodes s'appliquent sur des segments du signal d'une durée allant de 20 à 50 ms. Sur cette durée, on représente le signal par un vecteur X=(x1,x2,...,xn) appelé échantillon centiseconde.

 

- Exemple de représentation de signaux

Premièrement, voici le mot SKI :


Représentation temporelle du signal acoustique de la parole : le mot SKI


On peut découper le signal en quatre zones (A, B, C, D) fondamentalement différentes :La zone A comporte un signal apparemment aléatoire. Il s'agit d'un son fricatif.
La zone B est neutre, il s'agit d'un bruit ambiant.
La zone C est impulsionnelle. Il s'agit ici d'un phonème occlusif.
Enfin, la zone D est pseudo périodique, c'est un son voisé.


A l'aide de la FFT, on obtient un spectrogramme sur lequel apparaît le temps en abscisse, la fréquence en ordonnées. Le niveau de chaque fréquence est caractérisé par l'intensité des points sur le graphique. Voici un spectrogramme du mot SAMEDI :


Spectrogramme du mot SAMEDI

On observe la présence des formants (maxima d'énergie). En haute fréquence se trouve le bruit du friction de la lettre S.


Reconnaissance de mots isolés

Un spectrogramme peut suffir à trouver la succession des phonèmes prononcés. Il suffit alors de comparer cette séquence décodée à un dictionnaire interne prédéfini pour obtenir finalement le mot prononcé par l'utilisateur.

CAN : Convertisseur Analogique Numérique
FFT : Fast Fourier Transform (Transformée de Fourier Rapide)
HMM : Hiden Markov Models (voir plus bas)

Il est aisé d'utiliser une FFT pour obtenir en temps réel le spectre du signal pour obtenir les phonèmes obtenus. Une analyse de ces spectres en continue permet d'enlever un bruit de fond éventuel.

Pour déterminer le mot prononcé, on peut comparer la succession des phonèmes décetctés avec les mots du dictionnaire par comparaison dynamique.


La comparaison dynamique

Un même locuteur ne prononce pas deux fois le même mot de la même façon. Les variation de la vitesse d'élocution ou du rythme de prononciation entraîne des transformations non-linéraires au sein du signal acoustique.
On effectue une normalisation temporelle pour comparer les deux mots par comparaison dynamique ou alignement temporel dynamique (Dynamic Time Warping) introduit par Vintsujk.
On compare l'image acoustique avec les images de tous les mots du dictionnaire. Le mot dont l'image obtient la distance la plus courte est retenu. Bien sûr il existe un seuil au delà duquel on décidera la non-reconnaissance du mot prononcé.

Exemple
Soient deux images A et B de longueur respectives I et J. L'alignement dynamique entre ces deux formes est représenté par le chemin C(k)=(n(k) ; m(k)) avec C(1)=(1 ; 1) et C(K)=(I ; J). Des contraintes sont appliquées aux fonctions n et m qui doivent rester croissantes et continues.


Reconnaissance monolocuteur / multilocuteur / adaptative - Mots isolés / enchaînés

Durant l'apprentissage, le locuteur prononce les mots du dictionnaire. Il est nécessaire d'avoir plusieurs références de chaque mot, à cause de la variabilité intra-locuteur. Cela implique un grossissement des données à stocker. On peut effectuer des moyennes des références obtenues pour n'en garder que quelques significatives.

Pour la reconnaissance multilocuteur, la comparaison dynamique peut être appliquée. Il faut que chaque mot de vocabulaire du dictionnaire soit prononcé par un échantillon important d'individus ayant des particularités propres (timbres différents, sexe, accents...). On fait là aussi une moyenne des échantillons obtenus pour n'en garder qu'une poignée. Plusieurs tests ont démontrés que 8 à 12 représentants donnent une bonne image de l'ensemble des prononciations d'un mot.

Pour la reconnaissance indépendante du locuteur (avec une phase d'adaptation), il s'agit juste de faire coïncider le vocabulaire déjà stocké avec le nouveau locuteur. Ceci est possible par comparaison des formes acoustiques. Bien entendu, le locuteur n'a pas à répéter tous les mots du dictionnaire : il ne doit que répéter quelques phrases choisies à partir desquelles seront appliquées les fonctions de transformations.

Pour passer de la reconnaissance de mots isolés à la reconnaissance de mots enchaînés, il existe une méthode simple. Nous avons vu qu'un mot n'est pas prononcé de la même façon s'il est isolé ou dans une phrase. Lors de l'aprentissage, il suffit alors d'apprendre chaque mot de manière isolé (comme pour la reconnaissance de mots isolés) puis que le locuteur prononce des phrases connues par le système qui va pouvoir déterminer des nouvelles images acoustiques pour chaque mots. Là encore, une moyenne des échantillons peut être faite.
Pour éviter la segmentation, on effectue la reconnaissance sur toute la phrase et on compare le signal à une concaténation de références du dictionnaire par une méthode ressemblant à la comparaison dynamique.


Modèles de Markov

Pour parer aux aléas de prononciation, on peut utiliser les Modèles de Markov Cachés (HMM). Grâce à ces modèles, on règle en effet le problème d'alignement temporel et de variabilité intra-locuteur.
A l'aide du processus acoustique, on obtient une liste de phonèmes en fonction du temps (due à la FFT). Or les mots peuvent être prononcés plus ou moins lentement et donc la durée des phonèmes peut varier. Le modèle de Markov corrige ce détail en ne conservant que les successions de sons.
Ces modèles, introduit par Levinson, datent de 1983.

Un modèle de Markov est représenté par une succesion d'états reliés entre eux par des arcs de transition, ces derniers étant associés à une probabilité de transition. Lors de la reconnaissance, on effectue une méthode analogue à la comparaison dynamique en remplaçant la notion de distance par les probabilités (algorithme de Viterbi).

Voici un exemple de modèle de Markov avec le mot Office :

Lors de l'apprentissage, on détermine pour chaque mot (prononcé plusieurs fois) les probabilités des arcs vus plus haut. On établit alors le modèle Markovien après une prononciation de chaque mots par une centaine de locuteurs différents.

Ces modèles sont bien adaptés à la reconnaissance multi-locuteur.


Améliorations et Performances de l'approche globale

Si les performances sont satisfaisantes, il est possible de les améliorer en ajoutant des connaissances linguistiques. Il s'agit alors d'une méthode semi-globale, appliquée dès que sont utilisés des dictionnaires de grande taille et que la reconnaissance a lieu sur des mots enchaînés.

On peut, pour cela, décrire toutes les phrases du langage sous forme de succession d'unités phonétiques dans un graphe. Il faut alors reconnaître le graphe le plus ressemblant à la phrase prononcée. Le taux d'erreur est alors réduit ainsi que le temps de réponse.

La solution la plus usitée est d'intégrer ces connaissances linguistiques sous forme stochastique grâce à un modèle de Markov. On connaît alors la probabilité qu'un mot en suive un autre.

Pour la reconnaissance monolocuteur de petit vocabulaire, on atteint des résultats proches de 99%. Voici un tableau regroupant différents systèmes basés sur les modèles Markovien :

Laboratoire

Système Locuteur Vocabulaire % mots corrects Débit
Lincoln

Lincoln

Lincoln

dépendant

indépendant

991

991

94.5 %

89.9 %

continu

continu

Dragon

Dragon Writer

Dragon Writer

dépendant

indépendant

997

997

98.6 %

91.9 %

isolé

isolé

IBM

Tangora

Tangora

dépendant

dépendant

5.000

20.000

97.1 %

94.6 %

isolé

isolé

INRS INRS dépendant 75.000 89.5 % isolé


Conclusion de l'approche globale

Si l'approche globale est bien adaptée à la reconnaissance de mot isolé, elle pose des difficultés lors de la reconnaissance multi-locuteur de grands vocabulaires ainsi que la reconnaissance continue (mono et multi-locuteur) de grands vocabulaires.

La modélisation markovienne est à l'heure actuelle la méthode la plus performante pour résoudre la reconnaissance de mots isolés. Presque tous les systèmes commercialisés sont fondés sur l'utilisation de tels modèles. Par exemple, en reconnaissance de chiffres anglais multi-locuteurs prononcés en continu, les modèles Markoviens ont commis 0.5 % d'erreurs. Il faut aussi noter que les modèles Markoviens bénéficient de plus de 10 ans d'efforts continus.