• Aucun résultat trouvé

Exemple de représentation d’un modèle varigramme, sous forme d’arbre

Comme chaque nœud représente un contexte, des nœuds proches et associés à des proba-bilités conditionnelles similaires sont ainsi fusionnés. Dans le cas de modèlesn-grammes clas-siques, l’arbre aurait une profondeur fixe égale àn−1. L’avantage des modèles varigrammes est ainsi la diminution du nombre de paramètres, tout en gardant des performances similaires.

Il existe d’autres modèles de langage dans lesquels l’historique est modifié afin que sa lon-gueur puisse être augmentée. Nous pouvons citer les modèles permugrammes [STHKN95] dans lesquels les historiques considérés correspondent à une permutation des mots du contexte courant ou encore les modèles multigrammes [DB95] dans lesquels l’historique est considéré comme une suite de groupes de mots. La plupart de ces approches n’ont cependant permis d’ob-tenir que peu d’améliorations par rapport aux modèlesn-grammes. De plus, ils augmentent la taille du modèle de langage résultant puisqu’ils sont souvent combinés avec un modèle n -gramme.

2.4.7.2 Modèles à base de cache

Un scripteur qui écrit un mot est susceptible de l’écrire de nouveau, dans un futur proche. Cette observation est la base des modèles à base de cache [KM90]. Ces modèles prennent en compte un historique allant de plusieurs dizaines à plusieurs centaines de mots. Les probabilités

P(wi|Φ(hi))sont alors évaluées à partir des fréquences d’apparition des mots, non plus dans le corpus d’apprentissage mais dans le cache. Toutefois, les modèles à base de cache sont généralement combinés avec des modèles n-grammes, dont les probabilités sont calculées à partir d’un corpus d’apprentissage :

e

P(wi|Φ(hi)) =λ P(wi|wiin1+1) + (1−λ)PCache(wi|wii1K+1) (2.45) avec K la longueur du cache, telle que K n. Il existe plusieurs stratégies pour traiter les mots du cache afin de calculerPCache(wi|wiiK1+1).

Dans un modèle à base de cache régulier [KM90], la probabilité d’un mot est proportionnelle à son nombre d’occurrences dans le cache de longueur fixeK et est définie par l’équation :

PCacheReg(wi|wii1K+1) = 1 K i−1 X j=i−K+1 δ(wj, wi) (2.46) avecδ(wj, wi) = 1siwj =wi, 0 sinon.

Dans un modèle à base de cache à oubli exponentiel [Cla99] (en anglais, history decay), la position du mot dans le cache est prise en compte : plus un mot est loin dans le cache, moins il est susceptible d’être écrit de nouveau. Ainsi, la contribution d’un motwi décroît de manière exponentielle avec l’augmentation de la distance entre ce motwjet le mot courantwi, l’équation 2.46 devenant : PCacheExp(wi|wiiK1+1) =β 1 K i−1 X j=i−K+1 δ(wj, wi) × exp(−α(i−j)) (2.47)

avecαle poids d’oubli etβune constante de normalisation définie de façon à obtenir : X

wi∈V

PCacheExp(wi|wii1K+1) = 1. (2.48) Bien que les modèles à base de cache permettent de diminuer considérablement la perplexité, le taux d’erreur des systèmes de reconnaissance de parole utilisés dans [KM90, Cla99] ne dimi-nue que très peu. Ce problème vient essentiellement de la présence d’erreurs de reconnaissance parmi les mots du cache. En effet, le système de reconnaissance à tendance à répéter les erreurs présentes dans le cache. Par exemple, si le scripteur a écrit « efface tous les souvenirs » et que le système a reconnu « efface tous les sourires » alors, si le scripteur écrit « mes souvenirs sont

loin », le système reconnaîtra plutôt « mes sourires sont loin », comme la probabilité de sou-rires est plus élevée que celle de souvenirs. L’utilisation d’un modèle à base de cache, dans un

système de reconnaissance, doit ainsi s’accompagner d’un mécanisme de correction des erreurs par l’utilisateur, afin que les performances du système puissent être améliorées [Goo01].

2.4.7.3 Modèles à entropie maximale

Les modèles à entropie maximale [DD72] ont récemment été utilisés pour modéliser le langage [Ros94, BPP96]. Ces modèles permettent d’incorporer différentes sources d’informa-tions (n-grammes, n-classes, n-grammes distants. . .), en exprimant celles-ci sous forme de contraintes. Ces contraintes sont représentées par des fonctions caractéristiques qui sont appli-quées à un motwi et à son historiquewi11. Une fonction de caractéristique fc retourne1si la contraintecqu’elle exprime est vérifiée par le motwi et son historiquew1i1,0sinon. Par exemple, si la fonctionfc correspond au trigramme « le miroir casse », cela s’exprime par :

fle miroir casse(w1i) =

1 siwi2 =leetwi1 =miroiretwi=casse

La probabilité d’un mot wi est alors définie à partir des fonctions caractéristiques fc par l’équation suivante : PMaxEnt(wi|wi11) = exp( P c λcfc(wi1)) z(wi 1) (2.50)

avecλc des paramètres réels obtenus par un algorithme d’apprentissage comme l’algorithme

GIS (Generalized Iterative Scaling) [DD72, BPP96] ; ces paramètres fixent le poids de chaque

fonction caractéristique.z(wi1)est une constante de normalisation, calculée afin d’obtenir : X

wi

PMaxEnt(wi|w1i1) = 1. (2.51) Ces modèles permettent ainsi de combiner différents types d’informations de manière élé-gante. En effet, le modèle combiné est appris directement, au lieu d’être obtenu par combinai-son de modèles appris séparément. Néanmoins, l’inconvénient majeur de ce type de modèle est le temps de calcul élevé, aussi bien lors de son apprentissage que lors de son utilisation, le nombre de fonctions caractéristiques pouvant atteindre plusieurs millions. De plus, ces modèles n’ont pas encore permis d’obtenir de réduction significative de la perplexité [Goo01].

2.4.7.4 Modèles à base de réseaux de neurones

Il peut être intéressant de pouvoir exprimer une similarité entre mots. En effet, si la phrase

« les fantômes dansent entre les arbres » est présente dans le corpus d’apprentissage, il devrait

être possible de généraliser la phrase « des lutins courent dans la forêt » en lui donnant une probabilité voisine, en s’appuyant sur le fait que fantômes et lutins ont des rôles grammaticaux et sémantiques similaires (il en est de même pour arbres et forêt ainsi que pour dansent et

courent ou encore les et des). L’approche basée sur des réseaux de neurones [BDVJ03] permet

d’exprimer une similarité entre mots. Dans cette approche, chacun des mots du vocabulaire est représenté par un vecteur de mcaractéristiques, avecm |V|(m = 30, dans [BDVJ03]). Deux mots ayant des rôles syntaxiques et sémantiques similaires auront ainsi des vecteurs de caractéristiques proches.

La probabilité P(wi|wii1n+1) est représentée par une fonction f(wi, . . . , win+1). Cette fonction se décompose en deux parties et est illustrée par la figure 2.2.

Une matrice Cde dimension|V| ×mpermet tout d’abord d’obtenir le vecteur de carac-téristiques de taille m, pour chacun des |V| mots du vocabulaire. Ensuite, le réseau de neu-rones prend en entrée m×(n−1)valeurs, correspondant aux vecteurs de caractéristiques

(C(win+1), . . . , C(wi1)) des mots de l’historique wiin1+1. La couche de sortie comporte

|V|neurones, soit un pour chaque mot du vocabulaire. Ainsi, pour un historiquewiin1+1donné, lajesortie correspond à la probabilitéP(wij|wii1n+1),wij étant lejemot du vocabulaire. Le réseau de neurones comporte également une ou plusieurs couches cachées ainsi que d’éven-tuelles connexions directes des neurones de la couche d’entrée vers ceux de la couche de sortie. La projection des mots dans le nouvel espace de représentation, c’est-à-dire leurs vecteurs de caractéristiques (représentés par la matriceC), ainsi que les poids du réseau de neurones sont appris de manière simultanée.

... ... ... ... ... ... ... ... sortiej:P(wij|wiin1+1) couche de sortie couche(s) cachée(s) couche d’entrée matriceC C(wi−n+1) C(wi−n+2) C(wi−1) win+1 win+2 wi1