• Aucun résultat trouvé

Architectures pour la reconnaissance de la parole

7 Méthodes connexionnistespour la reconnaissance de

7.1 Architectures pour la reconnaissance de la parole

Nous avons vu que tous les systèmes de reconnaissance de la parole reposaient sur un ensemble de contraintes plus ou moins sévères. Avec un peu d’optimisme, on peut espérer que des algorithmes d’adaptation et d’apprentissage permettront d’assouplir certaines de ces contraintes.

Les algorithmes connexionnistes, et plus particulièrement les perceptrons multi-couches, résistent remarquablement au bruit [2], et possèdent une forte capacité discriminante. Ces qualités ne suffisent

1 Lippmann R.P.: Review of Neural Networks for Speech Recognition - Neural Computation, vol 1, pp 1-38, (1989)

2 Bollivier M. de, Gallinari P., Thiria S.: Cooperation of neural nets for robust classification, IJCNN 90, San Diego, vol1, pp 113-120, (1990)

cependant pas: Il importe donc de ne pas sous-estimer l’acquis des méthodes “classiques”, raffinées depuis une vingtaine d’années.

7.1.1 Une classification atypique.

Après les prétraitements, la tâche d’un système de reconnaissance consiste, dans un cadre très général, à extraire du signal codé une séquence de symboles représentant le message. C’est donc une tâche de reconnaissance des formes. Elle s’écarte cependant des hypothèses présentées dans la section 3.4.

• Le nombre de classes n’est pas fini. Chaque classe est en effet identifiée par une séquence de symboles virtuellement infinie, représentant par exemple une séquence de mots, syllabes ou phonèmes.

• Les formes ne sont pas éléments d’un espace vectoriel de dimension finie: Le signal est en effet codé sous la forme d’une séquence de vecteurs virtuellement infinie.

On cherche donc à identifier et localiser dans le signal les diverses unités phonétiques qui se succèdent.

Les phénomènes de coarticulation compliquent singulièrement ce double problème de classification et de segmentation.

7.1.2 Reconnaissance statique.

Il existe une façon simple de s’affranchir de ces problèmes: contraindre le locuteur à insérer un bref silence entre chaque mots. Il est alors possible de déterminer les limites de ces mots isolés, en étudiant les variations de l’amplitude du signal.

Système ordinaire de classification

Signal segmenté

Début du mot Fin du mot

Mot reconnu /abricot/

Fig 7.1 - On peut se ramener au cas standard de reconnaissance des formes si l’on dispose d’une segmentation en mots a priori.

On découpe alors des signaux durant environ une seconde, qu’il suffit de regrouper en autant de classes qu’il y a de mots dans un vocabulaire défini à l'avance (fig 7.1). On peut alors utiliser toutes les méthodes connues de classification, sans plus s’inquiéter des problèmes de distorsions temporelles.

Les premiers réseaux connexionnistes pour la reconnaissance de la parole fonctionnaient ainsi. Dans [1], Elman et Zipser utilisent un perceptron multi-couches pour discriminer six syllabes isolées: /ga/

/gi/ /gu/ /da/ /di/ /du/, mais d’autres algorithmes peuvent être utilisés (cf. [2], [3], [4] ).

7.1.2 Reconnaissance dynamique.

7.1.2.1 Pour des mots isolés.

Pour un nombre d’exemples fixé (cf.˚chp.˚4), un système d’apprentissage de faible capacité réduit l’écart entre la performance mesurée sur les exemples, et la performance réelle. Pour une même performance mesurée sur les exemples, un système de faible capacité est donc préférable.

Or, même un mot isolé présente des régularités remarquables. Deux prononciations du même mot diffèrent non seulement par la réalisation des phonèmes qui le composent, mais aussi par les instants auxquels ils apparaissent.

1 J.L. Elman, D. Zipser: Learning the hidden structure of speech. UCSD Institute for Cognitive Science Tech. Report 8701, San Diego, (1987).

2 Prager R.W., Harrison T.D., Fallside F.:Boltzmann machines for speech recognition - Computer, Speech & Language - Vol 1, n°1, pp 3-27 (1986)

3 Lippmann R.P, Gold B.: Neural Classifiers useful for Speech Recognition - Procs of 1st International Conf. on Neural Networks, IEEE IV-417 (1987)

4 Kohonen T.: The "Neural" phonetic typewriter. IEEE Computer, March 1988, pp˚11-22, (1988)

Seconde étape:

classification proprement dite

Première étape:

transformations de données invariantes dans le temps

Signal Mot identifié /casserole/

Fig 7.2 - Système invariant dans le temps pour la reconnaissance de mots isolés

On peut concevoir un système beaucoup moins sensible à cette dernière cause de variations organisé comme suit (Fig 7.2):

La première étape consiste à transformer le signal de façon invariante dans le temps. Cette transformation vise à réduire l’information totale transportée par notre signal, sans toutefois perdre l’information phonétique que nous recherchons.

Dans une seconde étape, un système de classification de capacité plus faible peut identifier les mots à partir de ce codage plus compact.

Un tel système, de capacité plus faible, peut offrir la même performance sur les exemples d’apprentissage, et donc une performance réelle supérieure.

Malheureusement, on ne connaît pas a priori un tel système de transformation du signal. Il devra donc être déterminé par apprentissage, au travers du système de classification dont il dépend.

7.1.2.2 Pour de la parole continue.

Certains systèmes de classification donnent des informations quantitatives sur la ressemblance entre la forme observée et les formes apprises. C’est en particulier le cas de ceux (cf.˚§3.4) qui fournissent des probabilités a posteriori ou des vraisemblances conditionnelles.

Dans [1], les auteurs suggèrent d’utiliser les indices statistiques fournis par de tels systèmes de classification comme distance locale dans un algorithme de programmation dynamique (Fig 7.3).

1 Bourlard H., Wellekens C.J.: Speech Pattern Discrimination and Multilayer Perceptrons - Computer, Speech and Language - vol 3, pp 1-19, (1989) & also Philips Research Lab.

Brussels, Manuscript M211 (1987)

Programmation Dynamique

Evaluation d'indices statistiques de classification

Signal /di/

/du/

/pu/

/da/

Séquence de symboles

/du/ /di/ /pu/ /da/

Fig 7.3 - Utilisation de système d’évaluation d'indices statistiques de classification comme générateur de distances locales pour une programmation dynamique.

L’apprentissage du premier étage, chargé d’évaluer des indices statistiques est difficile à mettre en œuvre. Les exemples d’apprentissage doivent être des unités phonétiques segmentées, le plus souvent à la main. Depuis quelques années, des efforts considérables visent à constituer de telles bases de données [1].

Il serait bon, cependant, de s’affranchir de cette contrainte. Il faudrait pour cela entraîner ces systèmes au travers de l’étage de programmation dynamique.

Les modèles de Markov cachés sont un représentant remarquable d’un tel système. Les vraisemblances locales

b

i

(O

t

)

servent, au moyen de l’algorithme de Viterbi (6.31), à déterminer des séquences d’unités phonétiques. Or, cet algorithme n’est jamais qu’une variante de programmation dynamique.

7.1.2.3 Liens entre ces deux approches.

Il suffit de comparer les figures 7.2 et 7.3 pour se convaincre du lien étroit qui unit ces deux approches. Chacune est constituée de deux étapes de traitement.

Une étape de transformation du signal, invariante dans le temps. Cette étape est explicite dans le cas de la reconnaissance de mots isolés. Dans le cas de la reconnaissance de séquences, l’extraction d’indices statistiques de classification n’est qu’un cas particulier de transformation invariante du signal.

1 Lamel L.F., Kassel R.H., Seneff S.: Speech Database development: Design and analysis of the acoustic-phonetic corpus - Proc. DARPA Speech Recogn. Workshop, L.S.Baumann Ed, pp 100-109 (1986)

Dans une seconde étape, l’extraction soit de mots isolés, soit de séquences d’unités phonétiques est alors effectuée à partir du signal transformé.

Bien souvent, chacun de ces deux étages est un système défini par apprentissage. Il est alors important de savoir réaliser l’apprentissage de ces deux étages de façon globalement optimale. Une réponse générale est proposée au chapitre 8.