Chapitre VI : Expérimentations et résultats |
|
Ce chapitre présente les résultats de l'utilisation de la méthode de filtrage de documents en provenance d'Internet.
Dans une première partie, nous décrirons le système de reconnaissance utilisé lors de nos tests.
Nous préciserons ensuite les mesures employées dans nos évaluations. Nous présenterons
alors une étude statistique de nos modèles de langage et l'apport des documents d'Internet. Nous terminerons
par l'étude de nos outils dans diverses tâches de reconnaissance allant de quelques milliers à plus
de 20000 mots.
RAPHAEL [Akbar et al. 98] (Reconnaissance Automatique de PHrases, d'Acronymes et d'Expressions Langagières) est le système
de reconnaissance de la parole spontanée du laboratoire CLIPS. Il a été entièrement défini et élaboré par
l'équipe GEOD. Il est basé sur la boîte à outils Janus développée par CMU, cependant l'apprentissage acoustique
est entièrement réalisé par nos soins et les modèles de langage sont ceux que nous présentons dans cette thèse.
Janus est une boîte à outils dédiée à la traduction de parole [Waibel et al. 91].
Nous n'utilisons pour notre part que la partie
reconnaissance de la parole. Janus
possède toutes les briques de base pour la définition d'un système de reconnaissance : module d'extraction
de paramètres acoustiques, module gérant les HMMs, différents algorithmes de recherche, etc. Janus
est une extension du langage de scripts Tcl/Tk [Welch 95].
Cela donne l'avantage d'obtenir la portabilité des scripts qui décrivent les systèmes. Cependant,
le code source de Janus-III n'était, lui, pas portable. Nous avons réalisé nous-même son portage
sous Windows™ de Microsoft, environnement de travail au sein
de notre équipe de recherche.
Nous utilisons comme paramètres acoustiques les 13 premiers coefficients MFCCs et
l'énergie. Nous calculons les dérivées première et seconde de ces coefficients. Nous ajoutons à cela le zero-crossing rate
(Janus n'incluant pas le band-crossing) pour obtenir pour chaque fenêtre d'analyse un ensemble de 43 paramètres.
Ceux-ci sont extraits toutes les 10 millisecondes sur une fenêtre de 20 ms, ce qui signifie que le recouvrement
entre deux fenêtres successives est de 10 ms. Avant le calcul de nos paramètres, une fenêtre de Hamming
[Bellanger 95] est appliquée. Enfin, pour réduire l'espace de représentation,
nous appliquons une LDA (Linear Discriminant Analysis) pour obtenir 24 coefficients. Pour résumer, nous obtenons donc
toutes les 10 ms un jeu de 24 coefficients représentant les paramètres extraits du signal. Le lecteur se référera au
chapitre II « Reconnaissance de la parole » pour la description
de ces coefficients.
Les modèles acoustiques sont appris sur le corpus sonore BREF-80 [Lamel et al. 01]
qui contient environ 10 heures de parole. Raphaël fonctionne sur une base de 46 unités acoustiques qui sont les phonèmes
du français, leurs variantes, 'o' ouvert ou fermé par exemple, plus une unité acoustique spéciale pour modéliser le silence.
Ces unités sont, pour l'instant, traitées hors contexte. On ne différencie pas les phonèmes en fonction des
phonèmes qui les précèdent ou qui les suivent.
Toutes les unités sont construites sur une topologie de HMMs dites de Bakis, c'est-à-dire un HMM gauche-droit d'ordre 1 à 3 états, sauf
le silence qui lui compte 5 états.
Nous travaillons en parallèle à la rédaction de ce manuscrit, à la mise au point d'un système modélisant les unités
acoustiques en triphones. Nous utilisons pour cela BREF-TOTAL qui est un corpus bien plus gros que BREF-80. Les résultats
présentés dans cette thèse sont obtenus avec le modèle de phonèmes indépendants du contexte appris sur BREF-80.
Bien que Janus soit tout à fait capable d'intégrer des grammaires, nous n'utilisons que des modèles de langage
trigrammes pour les raisons que nous avons énoncées plusieurs fois depuis le début de ce manuscrit. Ceux-ci sont
appris sur nos corpus en provenance d'Internet avec les méthodes décrites au chapitre précédent. Nous utilisons le
lissage de Katz [Katz 87]. Les sections suivantes de ce chapitre présentent
les résultats que nous obtenons dans ces conditions.
Les algorithmes de recherche sont fondés sur une représentation arborescente du dictionnaire acoustique. C'est
ce que [Woszczyna 98] présente sous le nom de recherche Tree-Forward.
Une fois la phase de construction de l'arbre terminé, un treillis de mots est construit (cf.
chapitre II). Une nouvelle passe, n'utilisant cette fois que le modèle de langage,
fournit l'hypothèse finale de reconnaissance.
Nous avons intégré RAPHAEL dans deux démonstrateurs des projets européens dont le laboratoire. Pour le projet CSTAR
[Web 01], le système de reconnaissance de la parole fonctionnait localement, c'est-à-dire
que le système de visioconférence n'était là que pour réaliser le face à face entre les deux utilisateurs du système.
Il n'y avait donc aucun transfert de données parole pour faire de la reconnaissance sur un site distant. L'architecture
était donc une reconnaissance faite sur une machine dédiée sur le réseau local. Pour cela, nous avons défini un protocole
propriétaire de transfert de données et de récupération de résultats décrit dans
[Vaufreydaz et al. 99a]. Le système de synthèse de la parole, donc du texte
au signal sonore, fonctionnait sur le même principe. Ce système a été utilisé avec succès lors de la démonstration finale
du projet CSTAR, dans sa phase II, en juillet 1999 [Presse 99].
Pour ce qui est du projet Nespole!, le principe de fonctionnement est différent. En effet, le système est sur un
site distant et utilise directement le signal de parole encodé par le système de visioconférence
[Besacier et al. 01a], via le protocole H323
[Black 00] pour la reconnaissance. L'architecture globale du système est composée
d'une grappe de serveurs de traduction (reconnaissance, traduction et synthèse) qui sont appelés par un logiciel
intermédiaire appelé le médiateur. Les données transitent du logiciel de visioconférence du client
vers le médiateur. Elles sont ensuite traitées par le serveur adéquat puis transférée vers
l'agent, et inversement. Cela permet l'intégration de ce système avec tous les logiciels de visioconférence du marché
respectant la norme H.323. Comme nous l'avons déjà indiqué, la difficulté de ce mode de fonctionnement,
contrairement à CSTAR, est non seulement la dégradation du signal de parole due au codage mais aussi à la perte de données provoquée
par l'utilisation du protocole UDP/IP. Nous avons réalisé plusieurs études pour prendre en compte ces données
dans l'apprentissage de nos modèles acoustiques [Bergamini 00],
[Besacier et al. 01b],
[Besacier et al.], [Lamy 01].
Pour juger de la pertinence et de la qualité de nos modèles de langage, nous avons besoin d'utiliser différentes mesures
[Chen et al. 98].
Nous allons décrire dans cette section celles que nous emploierons dans nos différents tests.
Dans la théorie de l'information, un langage L est considéré comme une source produisant une suite
de mots mi à partir d'un ensemble fini d'élément V, le vocabulaire
[Abramson 63]. L'entropie, souvent notée H(L), est la
quantité d'information portée par chacun des éléments. Le nom entropie est tiré de la mesure de désordre
en thermodynamique car la formule de calcul de ces deux entités est mathématiquement similaire. Dans le cadre
du langage, la quantité d'information, en base b, contenue dans une séquence de mots
S = m1...mn vaut -logbP(S), où P
est la vraisemblance de la séquence S. Intuitivement, plus une suite de mots est
improbable, plus sa quantité d'information augmente. Il est maintenant possible de calculer l'entropie
avec l'équation VI.1.
Dans cette équation, P(mi) est la probabilité d'émission de mi, le i-ème mot
de la séquence.
Alors, d'après le théorème de Shannon
[Shannon 48], tout codage d'une séquence S, dans une base b, nécessite
en moyenne pour être codé Hb(S) chiffres. À partir de maintenant, nous simplifierons notre
notation en utilisant H pour H2. Cela correspond au codage de l'information
en base 2, l'une des bases utilisées en informatique.
Le problème de cette formule réside dans l'estimation de l'entropie d'un langage complet. En effet, pour obtenir la valeur la plus fiable possible
de l'entropie, il faut pouvoir observer le plus de séquences possibles. La valeur de l'entropie d'un langage L
peut alors se calculer par la formule suivante, en sommant sur un nombre maximum de séquences possibles N, tendant vers l'infini :
Ce calcul se révèle infaisable car il existe une infinité de séquences possibles. On fait alors un calcul approché
en estimant que si l'on possède une
séquence suffisamment longue, elle est dite ergodique, c'est-à-dire qu'elle représente toutes les possibilités qu'offre le langage.
Dans ces conditions, il est suffisant de calculer l'entropie de cette source ergodique pour avoir celle du langage.
La perplexité est la mesure la plus couramment employée depuis
de nombreuses années [Jelinek et al. 77] pour juger de la qualité d'un modèle de langage.
Cette valeur se calcule sur un texte non vu au cour de l'apprentissage. C'est ce que l'on nomme en anglais
test-set perplexity [Rosenfeld 94], à ne pas confondre avec la
training-set perplexity qui est la perplexité du modèle sur ses données d'apprentissage.
Elle est facteur de l'entropie H(M) d'un modèle M utilisé dans la prédiction des mots rencontrés.
Elle peut être obtenue de la manière suivante :
Dans le cadre de l'emploi d'un modèle de langage statistique, le calcul de l'entropie de ce modèle se fait au moyen
d'une quantité nommée logprob [Jelinek 89]. Celle-ci est définie comme suit pour
une séquence de mots S de longueur N.
La formule de la perplexité se réduit alors par simplification, dans le cas du calcul de la perplexité d'un modèle
statistique sur un texte de test représenté par une séquence S, à
La perplexité peut aussi être vue comme le facteur de branchement moyen du langage considéré. Si l'on prend
un modèle de langage ayant une perplexité X, il est équivalent, en terme de perplexité, à un langage qui comporterait
X mots équiprobables. Alors, un système de reconnaissance de la parole utilisant un modèle de langage de perplexité X
peut se contenter, en moyenne, de n'évaluer que les X hypothèses les plus probables à chaque instant.
Une méthode alternative de calcul de la perplexité a été développée pour permettre une plus grande justesse de résultats
[Bimbot et al. 97], [Jardino 98],
[Bimbot et al.].
En effet, si l'on regarde les équations précédentes, il est évident que leur résultat est très dépendant du modèle et
du texte sur lequel on l'évalue. La variante proposée est basée sur le jeu de Shannon [Shannon 51].
Ce jeu, mis au point dans les années 50 par C. Shannon, avait pour but l'estimation de l'entropie d'un langage. Il était
demandé à des sujets de prédire la lettre suivante en connaissant ou non les lettres précédentes. En réitérant les expériences
avec différents sujets et plusieurs historiques, il est possible de déduire quelle quantité d'information est présente dans le langage
considéré.
La variante de calcul de la perplexité utilise le même type de procédé.
L'idée est de construire un ensemble de test constitué de phrases tronquées dont le contenu linguistique est
complètement différent. On demande c'est-à-dire de donner une probabilité avec un modèle de langage,
sur le mot manquant à la fin de la séquence et seulement lui. La perplexité est alors calculée à partir de ces mises.
La difficulté de cette méthode réside dans la définition du corpus de test pour être certains de tester tous
les phénomènes présents dans le langage considéré. Cependant, d'après les résultats
présentés dans [Bimbot et al.], cette méthode semble prometteuse.
Bien qu'elle soit utilisée depuis très longtemps, la perplexité a montré son imperfection, pour la reconnaissance de la parole,
au cours des expérimentations de diverses équipes de recherche. Selon [Ito et al. 99], le facteur
de corrélation entre la perplexité et le taux de reconnaissance n'est que de 0,59. D'autres approches ont donc été utilisées
pour tenter de mesurer l'adéquation d'un modèle de langage à une tâche de reconnaissance de la parole.
La perplexité acoustique, intégrant les transcriptions acoustiques des mots du modèle, a été suggérée
mais [Jelinek 89] a montré qu'elle était simplement
proportionnelle à la perplexité. [Ferretti et al. 89] proposaient de combiner l'information acoustique
et linguistique par le biais de l'entropie du système de reconnaissance (Speech Decoder Entropy).
[Chen et al. 98] ont proposé deux approches. L'une, nommée M-ref, se calcule en fonction
de la fonction de l'erreur de vraisemblance des mots appris. La seconde est basée sur une simulation d'un processus de reconnaissance.
[Ito et al. 99] indiquent que ces deux
propositions n'ont pas une très forte corrélation avec le taux de reconnaissance. Leur proposition est d'utiliser
une différence normalisée entre le score du mot et le score du meilleur mot, sachant le contexte courant, avec des fonctions
de seuillage de type sigmoïde pour l'obtention du résultat final. Le facteur de corrélation entre cette métrique
et le taux de reconnaissance est supérieur à 0,8, et va jusqu'à 0,85 dans certaines expérimentations.
La distance de Levenshtein [Levenshtein 66] ou distance d'édition est couramment utilisée dans de nombreuses applications où il faut
mesurer la similarité entre deux séquences : la gestion de versions de fichiers (la commande diff sous Unix par exemple), la génétique avec l'alignement de séquences
d'ADN, dans certains systèmes de correction d'erreurs orthographiques, lors du choix du mot le plus proche et enfin
la mesure de performance en reconnaissance de la parole [Sankoff et al. 83]. Elle permet, à partir d'un alphabet et de deux séquences, de déterminer
quelle est la longueur d'une séquence minimale d'opérations pour transformer la première séquence en la seconde. Ces opérations sont au nombre
de trois et portent sur les lettres de l'alphabet considéré :
La distance dite de Damerau-Levenshtein [Damerau 64], [Levenshtein 66]
(souvent noté DLM dans la littérature
pour Damerau-Levenshtein Metric, nous utiliserons la version française DDL)
ne considère plus simplement chaque erreur comme possédant un coût unitaire mais affecte des poids à chaque opération.
Elle s'écrit ainsi pour une distance entre deux séquences S1 et S2 :
® S2) = argmin(NSxPS+NOxPO+NIxPI)
NS, NO et NI sont respectivement le nombre de substitutions, d'omissions et de d'insertions et
PS, PO et PI le poids positif ou nul associé à chacune de ces opérations. Wagner et Fischer
[Wagner et al. 74] ont montré que la minimisation de la DDL peut s'exprimer
sous la forme d'une récurrence et ont proposé un algorithme de résolution par programmation dynamique.
Le lecteur pourra trouver des informations sur l'utilisation de cette mesure de distance pour l'apprentissage et le test de modèles de langage syntaxiques stochastiques dans le
cadre de dialogues dans [Miclet et al. 99].
Dans le cadre où nous l'utiliserons, c'est-à-dire l'évaluation de système de reconnaissance, chaque élément de
notre alphabet est un mot et le calcul de cette distance repose sur deux séquences. La première, nommé référence (REF), représente la transcription
corrigée de ce qui est énoncé dans la portion de signal à reconnaître. La seconde, l'hypothèse (HYP), correspond
à la solution la plus probable trouvée par le système.
Pour que les deux soient comparables, les mêmes
règles de transcription doivent être appliquées à ces deux éléments. Nous détaillerons plus loin quelles sont
les règles que nous avons suivies. L'exemple suivant nous donne un exemple d'alignement réalisé avec cette métrique :
REF: bon c' est d' accord pour les nuits de lundi neuf et mardi dix
HYP: comment c' est d' accord tous les nuits *** lundi neuf août mardi dix août ERR: S S O S I
Dans cet exemple, nous voyons qu'il existe 3 types d'erreur. Les substitutions, notées 'S', correspondent aux
mots substitués à d'autres. Le 'O' correspond à une omission, c'est-à-dire à un mot qui n'a pas été trouvé par le système,
c'est généralement le cas des mots courts prononcés trop rapidement. Enfin, il arrive parfois que des mots soient
insérés par erreur. Ces derniers sont notés 'I'. L'alignement proposé ci-dessus comprend donc 10 mots correctement reconnus
et 5 erreurs, pour un total de mots à reconnaître de 14. Des procédures d'alignement plus performantes pour limiter
le cumul des erreurs ont été décrites dans [Fisher et al. 93].
Le Taux de Mots Corrects (Word Correct Rate dans la littérature en anglais) est la mesure la plus intuitive pour mesurer
les performances d'un système de reconnaissance de la parole. Il est basé sur une transcription
correcte des éléments à reconnaître, la référence, et l'hypothèse de reconnaissance.
Un alignement entre la référence et l'hypothèse est généré et permet de comptabiliser
combien de mots ont été correctement reconnus. L'équation de ce taux est donc :
Si l'on considère l'exemple précédent, le TMC est égal à :
Le problème majeur de ce calcul est qu'il ne prend pas en compte toutes les erreurs commises. Si l'on modifie l'exemple
précédent comme suit :
REF: bon c' est d' accord pour les nuits de lundi neuf et mardi dix
HYP: bon c' est d' accord pour les nuits de lundi neuf et mardi dix août ERR: I
Dans ce cas, malgré l'erreur, le TMC = 100%. C'est pour cette raison que dans la majorité des évaluations, une autre mesure est utilisée : le taux
d'erreur et son dual, le taux de reconnaissance.
L'utilisation du taux d'erreur (Word Error Rate en anglais) pour l'évaluation des performances résout les problèmes d'incohérence
que nous venons d'évoquer. Ensuite en déduisant le taux d'erreur, nous pouvons calculer le taux de reconnaissance (Word Accurracy)
qui est une mesure plus juste que le simple TMC. Nous obtenons l'ensemble d'équations suivant :
Taux de reconnaissance = 1 - Taux d'erreur
Si l'on reprend le cas de notre premier exemple, nous obtenons les résultats suivants :
Ce résultat, plus sévère que le TMC (64% contre 71% précédemment), permet la mise en évidence de toutes les erreurs du système
de reconnaissance. Pourtant cette mesure, plus juste, possède aussi un revers. En effet, dans des tâches telles
que la reconnaissance d'enregistrements continus avec de grandes portions de silence, si la détection de silence n'est pas optimale, il est évident
on aura beaucoup d'erreurs d'insertion, et, dans les cas extrêmes, plus d'insertions que de mots
à reconnaître. Dans ces conditions, le taux d'erreur serait donc supérieur à 1 et le taux de reconnaissance inférieur à 0.
Dans le cas d'un apprentissage sur un corpus textuel "linéaire", c'est-à-dire non formé de blocs minimaux, on sait
pour tous les mots comment ils sont prédits par leurs prédécesseurs et comment ils prédisent leurs successeurs. Or, au sein d'un
corpus d'apprentissage formé de blocs minimaux, ce n'est pas le cas car nous avons un problème d'apprentissage
sur toutes les césures entre les blocs minimaux. Ce problème de césure n'est présent dans un corpus linéaire qu'au début
et à la fin du corpus qui peut être considéré comme un seul bloc minimal.
Pour mesurer quelle
quantité d'information apporte un mot à notre modèle de langage, nous avons défini
la notion d'information contextuelle portée par un mot au sein d'une séquence utilisée pour l'apprentissage
d'un modèle n-grammes.
En considérant uniquement la position du mot au sein de la séquence, et non pas le mot lui-même, cette mesure
identifie le nombre de mots qui se retrouve, par le mécanisme d'apprentissage, dans toutes les positions des contextes
d'un n-grammes. Nous noterons cette valeur ICn pour Information Contextuelle en contexte de longueur n.
Son calcul est décrit ci-dessous :
ICn(S) = 0 si la longueur de S < (2.n - 1)
ICn(S) = longueur de S - 2 x (n - 1) sinon
Par exemple, dans le cas d'une séquence de 3 mots et pour un modèle bigramme, le second porte une information
contextuelle complète puisque l'on apprend comment le prédire avec le premier et comment il prédit le troisième.
Dans ce cas, IC2(S) est bien égale à 1 puisque seul le second mot de la séquence comporte une information contextuelle
complète pour un modèle bigramme.
Cette métrique n'est en aucun cas utile dans le cas de n=1. Effectivement,
puisque nous comptons alors tous les unigrammes, l'information contextuelle est donc égale
à la longueur de la séquence S.
Évidemment, cette mesure vaut aussi avec d'autres types d'éléments, par exemple pour les modèles n-classes, n-Seq, etc.
Le choix parmi ces mesures avait plusieurs objectifs. Premièrement, il devait permettre d'avoir des métriques
utilisées par d'autres, fournissant alors des points de comparaison avec d'autres travaux de recherche. De plus, il devait
apporter une information pertinente et juste.
Nous avons choisi d'utiliser la perplexité comme mesure pour les modèles de langage. Même si d'autres mesures présentent
un intérêt, par exemple la mesure décrite par [Ito et al. 99], nous ne fournirions
aucune information sur nos modèles car nous n'avons trouvé aucun résultat sur le français obtenu ces autres mesures.
Ensuite, pour des raisons évidentes de justesse des résultats affichés, nous utiliserons le taux de reconnaissance
et non pas le taux de mots corrects.
Il faut noter ici que nous avons employé deux outils différents
au cours de nos différentes expérimentations. Le premier, nommé align, est fourni avec le toolkit
Janus III [Waibel et al. 91]. Le second est sclite, un outil fourni par le NIST
[Web 03] pour ses évaluations. Avec les mêmes
règles de transcription des hypothèses et des références, ces deux outils fournissent bien entendu le même résultat.
Ayant, commencé les calculs avec align dans certaines conditions expérimentales, et possédant par ailleurs les résultats
d'autres laboratoires
obtenus avec sclite pour d'autres expériences, nous avons cependant choisi de ne pas interchanger
les logiciels dans nos évaluations, pour être certain
d'avoir des résultats comparables.
Les statistiques que nous donner maintenant concernent les modèles trigrammes que l'on peut obtenir avec
le corpus WebFr et la répartition de l'information au sein de ce corpus.
Ces expérimentations étant très gourmandes
en temps de calcul et en capacité disque pour stocker
plusieurs milliers de modèles de langage, nous n'avons travaillé que sur la tâche de réservation touristique type CSTAR.
Celle-ci se résume à un petit vocabulaire d'environ 2500 mots, ce qui nous permet d'accélérer les phases de test et de limiter
la taille des modèles trigrammes que nous calculons.
Le corpus textuel extrait par la méthode des blocs minimaux sur WebFr dans ce cadre compte, comme
nous l'avons déjà vu, presque 145 millions de mots avec une taille minimale des blocs égale à 3. Nous n'utiliserons que
les 46 premiers millions de mots pour nos expériences, celles-ci s'avérant trop longue à conduire sur le corpus entier.
Nous avons donc découpé ce corpus
en morceaux d'environ 2 millions de mots. La césure entre deux morceaux est faite entre deux blocs minimaux. Nous obtenons un ensemble de 23 morceaux,
et pouvons ainsi mesurer l'influence de chaque partie de notre corpus.
Nous allons nous attacher à mesurer si la répartition de l'information est uniforme sur notre corpus. Notre première intuition
est que cela est forcément le cas puisque le robot Clips-index ne possède pas de stratégie de collecte particulière. Seuls la vitesse
de réponse des serveurs Web et le temps de transfert sur le réseau Internet conditionnent l'ordre de collecte des documents.
Pour valider cette hypothèse, nous avons conduit un H-Test qui consiste à utiliser tous les éléments à étudier
sauf un seul qui est mis à part. Il suffit ensuite de refaire les mêmes statistiques en enlevant successivement chaque élément
et de calculer la moyenne et l'écart type entre chaque test pour évaluer l'importance relative de chaque élément.
Dans notre cas, chaque élément considéré est un bloc de 2 millions de mots de WebFr. Nous nous intéressons dans cette
expérience au nombre de contextes trigrammes connus par le modèle de langage. Cela nous donne une information
sur la couverture linguistique de chaque bloc en nombre de contextes différents. Si l'un des blocs à une plus grande importance
que les autres sur la variété des contextes connus, nous pourrons le détecter.
Nous nous retrouvons avec 23 corpus de test comprenant chacun environ 44 millions de mots. Pour chacun, nous
avons calculé un nouveau modèle de langage tous les 20000 mots d'apprentissage pour mesurer le nombre de contextes connus.
Cela nous permet d'otenir une courbe moins lissée que si l'on avait pris simplement les blocs complets.
Pour pouvoir visualiser les trigrammes présents dans chacun de ceux-ci et faire quelques tests de reconnaissance,
nous avons dû sauvegarder chacun des modèles obtenus. Pour chaque corpus de test, nous avons calculé 2286 modèles de langage,
soit au total 52578 modèles. Ensuite, pour chaque modèle utilisant x mots pour l'apprentissage, x allant de
20000 à plus de 44 millions, nous calculons la moyenne du nombre de contextes trigrammes connus, et l'écart type
sur les 23 corpus. Les résultats sont présentés sur le graphique suivant.
Nous pouvons remarquer que la courbe de la moyenne présente une évolution constante, hormis sur la fin où l'accroissement
du nombre de contextes semble s'atténuer. Cela peut-être expliqué par l'obtention d'une couverture presque maximale
avec 34 millions de mots. Pourtant, vue la grande taille du corpus, il nous est difficile d'être formel à ce sujet.
Nous verrons, dans les deux sections suivantes, des tests sur la perplexité réalisés dans les mêmes conditions qui nous apporterons
plus d'informations sur ce phénomène. Le résultat le plus intéressant de ce graphique est le très faible écart-type entre les résultats. Il ne dépasse
jamais 1000 alors que nous travaillons avec des valeurs de l'ordre du million. De plus, sur les tests effectués sur de très
gros corpus, cette valeur se situe autour de 500.
Nous pouvons conclure, après examen de ces résultats, que toutes les parties de WebFr apportent la même quantité d'information
au modèle de langage. Cependant, la totalité du corpus comprend plus de données que chacune des sous-parties. Alors, nous pouvons
affirmer que l'information est répartie uniformément sur notre corpus d'apprentissage. L'emploi du corpus complet pour l'apprentissage
de nos modèles est donc obligatoire pour maximiser la couverture en nombre de contextes trigrammes de notre modèle.
La perplexité est une mesure très répandue pour l'évaluation des modèles de langage. Nous avons effectué
les calculs de la perplexité de nos modèles de langage sur le corpus textuel de réservation touristique, puisqu'il contient
le type d'énoncés que nous nous efforçons de modéliser. Nous avons employé le découpage en 23 morceaux de WebFr. Nous obtenons
donc 23 modèles de langage appris progressivement avec 2 millions de mots, puis 4, etc. Comme nous avons montré précédemment que
tous les blocs avaient la même importance, l'ordre de calcul sur ces blocs n'est pas crucial et ne biaise pas nos résultats
Le graphique suivant présente l'évolution de la perplexité et du nombre de trigrammes connus dans le modèle de langage.
La première remarque que nous pouvons faire est que la courbe du nombre de trigrammes est similaire à celle
obtenue lors de la précédente expérience. À partir de 38 millions de mots en apprentissage, la pente s'atténue
aussi. Nous pouvons dire que ce phénomène n'est pas directement corrélé avec la perplexité du modèle. En effet,
celle-ci commence à osciller faiblement autour de la valeur 80 avec un modèle calculé sur seulement 28 millions de mots. Cette valeur
est d'ailleurs tout à fait raisonnable au regard de la taille de notre vocabulaire.
Nous pouvons conclure sur ce graphique que, malgré l'arrivée de nouveaux trigrammes au sein du modèle,
la perplexité n'évolue plus. Cela tendrait à prouver que dans les 28 premiers millions de mots du corpus d'apprentissage,
ou dans 28 millions de mots pris au hasard dans celui-ci, l'information étant uniformément répartie, nous trouvons la majorité
de la couverture langagière de notre tâche de réservation touristique. Le surplus de corpus sert donc à affiner
les probabilités, l'apparition de nouveaux trigrammes nous donne la variété que nous recherchons pour nos modèles.
Le but d'un modèle de langage est de représenter le langage avec des trigrammes et de ne pas avoir à employer
des méthodes de repli avec des modèles d'ordre inférieur pour prédire les mots du corpus de test. Nous pouvons utiliser
le pourcentage de mots prédits avec des trigrammes, des bigrammes et des unigrammes lors du calcul de la perplexité
pour mesurer la couverture langagière. Effectivement, nous avons jusqu'à maintenant considéré que l'augmentation
du nombre de trigrammes dans le modèle était suffisante pour juger de cette couverture. Pourtant, il est possible,
de par la nature des corpus que nous utilisons, que l'augmentation du nombre de trigrammes ne le soit
que par des contextes représentant des erreurs présentes sur Internet et ne soit pas due à un phénomène langagier réel.
Le graphique de la figure VI.3 précédent montre l'évolution du pourcentage de mots prédits avec des trigrammes (axe de gauche),
des bigrammes et des unigrammes (axe de droite). Tout d'abord, nous voyons qu'avec seulement 2 millions de mots,
nous prédisons déjà 74% des mots, du corpus de test, et ce avec des trigrammes. Encore une fois, cela corrobore ce que nous énoncions auparavant
dans ce manuscrit à savoir que les éléments de base du français sont présents dans tous nos blocs.
Par la suite, le nombre de trigrammes
connus augmentant, ce pourcentage ne cesse de croître pour atteindre 81% à la fin. Dans le même temps, les pourcentages
prédits avec des bigrammes et des unigrammes passent respectivement de 20% à 16% et de 5 à 2%.
Bien que la valeur de la perplexité puisse être considérée comme constante après 28 millions de mots, l'augmentation
du nombre de trigrammes permet une prédiction de meilleure qualité, c'est-à-dire avec moins de replis. Cela indique que
le modèle de langage est donc plus performant, car plus couvrant, tout en gardant une perplexité identique.
Cela justifie les critiques que d'autres équipes de recherche, citées plus haut, et nous même avons émises à propos de l'utilité
de la perplexité en reconnaissance de la parole.
Notre expérience montre qu'elle reste
cependant un indice intéressant qui peut s'avérer utile en reconnaissance de la parole. Dans des approches de type
Beam Search (voir chapitre I), le réglage des seuils empiriques d'élagage des hypothèses en cours peut être fait en fonction de la valeur
de perplexité du modèle de langage. La taille de l'espace de recherche peut ainsi être contrôlée.
Les corpus sonores sur lesquels nous allons évaluer
nos méthodes automatiques de construction de modèles de langage sont issus des projets CSTAR et Nespole!, et
d'une évaluation des systèmes de dictée vocale proposée par l'AUPELF.
Le corpus CStar120 a été enregistré lors de la préparation du démonstrateur du projet CSTAR pour la présentation de juillet 1999. Il
est composé de 120 énoncés concernant la réservation touristique, cadre d'expérimentation du projet CSTAR. Ces énoncés sont extraits du
corpus réservation touristique. Deux locuteurs de sexe masculin ont
participé à son enregistrement, dont l'un n'était pas français de naissance. La description du corpus est donnée dans
le tableau suivant :
Nous pouvons remarquer que le locuteur de langue maternelle française n'est pas celui qui a réalisé
le plus d'enregistrements. De plus, nous devons signaler que l'autre locuteur a commis des erreurs de prononciation
dans certaines phrases. Par exemple, dans "dois-je vous verser des arrhes ?", le mot arrhes
a été prononcé "arrhèsse". Ces erreurs ont été laissées dans le corpus.
Tous les résultats de reconnaissance obtenus sur le corpus CStar l'ont été sur la base des règles de transcription
suivantes. Les mots composés, comme d'accord, ont été considérés comme un seul mot par le système d'alignement. Il en va de même
pour les nombres comme dix-sept, dix-huit, etc. De plus, les inversions des pronoms sujets dans les formes
interrogatives l'ont aussi été. Ainsi, dois-je et pouvez-vous, sont aussi comptés comme un seul mot. Cette manière
de dénombrer les mots a aussi été employée pour les comptes affichés dans le tableau précédent.
Ce corpus a été produit au moyen du système de démonstration du projet Nespole!. Les signaux ont été enregistrés après
codage-décodage en G711 [REF] (codage acoustique 8000 Hz, 8 bits avec une quantification
m -law) et transmission avec perte sur un réseau.
Cette perte est négligeable, mais non nulle, car la session
d'enregistrement a été réalisée sur un réseau local.
Cette base contient au total 77 signaux, prononcés par un seul locuteur, correspondant à des tours
de parole extraits eux-mêmes du corpus Nespole!. C'est pourquoi nous appellerons ce corpus Nespole!-G711
pour le différencier du corpus textuel Nespole!. Le tableau suivant présente ses caractéristiques :
L'intérêt principal de ce corpus est le fait qu'il est constitué de phrases longues, presque 12 mots en moyenne, soit 1/3 de plus
que les 9 mots du corpus CStar120. Les signaux contiennent des tours de parole comportant plusieurs phrases successives,
des hésitations, des répétitions, etc. Enfin, le vocabulaire de la tâche Nespole! est beaucoup plus étendu que celui de CSTAR
puisqu'il compte, en tout cas pour le système de reconnaissance, plus de 20000 mots.
L'ARC (Action de Recherche Coordonnée) B1 de l'AUPELF [Web 11], consistait en l'évaluation comparative de systèmes de dictée vocale
[Chibout et al. 99], [Dolmazon et al. 97].
La tâche de reconnaissance comprend 299 phrases extraites du journal « Le Monde », prononcées
par 20 locuteurs, 10 hommes et 10 femmes. Nous appellerons ce corpus « Aupelf ».
Le tableau ci-après indique les caractéristiques de ce corpus pour chacun des locuteurs. Le code du locuteur indique grâce
à sa dernière lettre, si le locuteur est un homme ('m') ou une femme ('f').
Ce corpus contient plus de données que le précédent. De plus, les règles de transcription qui s'y appliquent
sont différentes. Ainsi, les mots composés, conformément aux recommandations de l'AUPELF, elles-mêmes provenant
à l'origine du NIST, sont éclatés. Ainsi, d'accord est cette fois considéré comme deux mots. Si une erreur
survient, elle engendre alors deux erreurs pour le système d'alignement : une substitution du mot plus une suppression.
Pour les expérimentations impliquant cette base, nous utiliserons comme outil d'alignement sclite du NIST.
Cette base Aupelf étant état de l'art, de par le fait que plusieurs équipes de recherche ont évalué
leur système de reconnaissance dans le cadre de l'ARC B1, nous avons aussi suivi ces recommandations.
Nos résultats sont ainsi comparables à ceux des autres laboratoires. De plus, même si le contenu
de ce corpus sonore est loin de notre objectif, le dialogue, nous nous devions de trouver un point de comparaison
pour ne plus évaluer nos modèles de langage uniquement sur des données propriétaires.
Comme précédemment, nous utiliserons une tâche limitée pour faire nos expériences. Cette tâche sera de nouveau la tâche
de réservation touristique de type CSTAR. Dans un premier temps, nous referons nos expériences sur l'influence de la
taille du corpus d'apprentissage comme nous l'avons fait dans la partie précédente. Par la suite, nous étudierons, toujours
dans les mêmes conditions, comment le réglage de l'extraction des blocs minimaux peut faire varier le taux de reconnaissance.
Reprenons les expériences menées dans la première partie de ce chapitre, cette fois-ci dans le cadre de
la reconnaissance de la parole. Nous utiliserons le même découpage, en bloc de 2 millions de mots, du
texte filtré sur WebFr, le vocabulaire de la tâche CSTAR et une taille de blocs minimaux de 3.
Nous mesurons l'évolution du taux de reconnaissance sur le corpus CStar120. Le graphique ci-dessous montre
les résultats obtenus :
D'abord, nous trouvons dans la partie basse de ce graphique deux références représentant les résultats obtenus en apprenant
nos modèles de langage sur les corpus réservations touristiques et Grace. Nous voyons que notre hypothèse
sur l'inadéquation de Grace se vérifie car nous obtenons seulement 40,35% de taux de reconnaissance.
Ce qui est surprenant, c'est que le corpus réservations touristiques
est moins bon, même si la différence n'est pas significative. Pourtant, on aurait naturellement
penser que l'apprentissage d'un modèle de langage sur ce corpus
aurait permis de très bien modéliser les énoncés de CStar120, qui rappelons-le sont extraits du même corpus.
Mais il faut reconnaître que les efforts menés pour obtenir ce corpus
dans l'espoir de sa représentativité de la tâche n'ont pas porté leurs fruits. Le problème dans ce cas, reste la taille
très réduite de ce corpus, certainement insuffisante pour le calcul des probabilités de notre modèle de langage.
A contrario, Grace, de par sa plus grande taille représente mieux certaines structures du français, mais il reste
lui aussi autour de 60% d'erreurs, car il ne présente pas les formes dont nous avons besoin pour le langage oral.
Ces deux corpus
se révèlent être de très mauvais représentants de la tâche de dialogue pour la réservation touristique.
Si nous nous intéressons maintenant aux modèles de langage trigrammes appris sur des documents de la Toile, nous pouvons constater
que dans le pire des cas, le taux de reconnaissance est de 15% supérieur aux deux corpus de références (pour 4 millions de mots en apprentissage).
De plus, la progression, même si elle est irrégulière, présente une tendance linéaire très nette. À la fin, pour un corpus de
46 millions de mots, nous obtenons un taux de reconnaissance de 74% ce qui représente une réduction du taux d'erreur
de 56%. Si l'on prend maintenant la totalité du corpus textuel extrait de WebFr, c'est-à-dire environ 145 millions de
mots, le taux de reconnaissance obtenu par le système est de 78%.
Nous pouvons comparer ces résultats avec ceux de perplexité obtenus précédemment. En effet, il est aisé de constater que malgré
sa faible variation après le passage à un apprentissage sur plus de 28 millions de mots,
le taux de reconnaissance ne cesse d'augmenter. De plus, si nous calculons la perplexité uniquement sur les phrases à reconnaître
(1127 mots), nous obtenons quasiment la même courbe de perplexité que sur tout le corpus réservations touristiques. Nos
conclusions restent, dans ce cas, les mêmes que dans [Vaufreydaz et al. 99c].
La perplexité n'est donc pas une bonne mesure pour juger de la pertinence d'un modèle de langage pour la reconnaissance de
la parole.
À ce stade, nous pouvons nous demander comment améliorer encore les résultats.
Nous avons supposé qu'on peut y arriver en "choisissant mieux" les blocs minimaux. Il nous faut
donc étudier en détails les paramètres régissant la production du corpus d'apprentissage par la méthode
des blocs minimaux. Le premier est la taille minimale des blocs que nous gardons. Le second, booléen, indique
si l'on ne souhaite garder que les
phrases complètes. Dans le précédent chapitre, nous avons déjà détaillé l'effet de ce changement sur la quantité
de corpus que nous générions.
La taille des blocs minimaux influe non seulement sur la taille des corpus d'apprentissage, mais
aussi sur la structure des données obtenues. En effet, si l'on regarde quels sont les événements,
à savoir unigrammes, bigrammes et trigrammes, qu'il est possible de recenser en considérant les différentes
tailles de blocs minimaux, on remarque des différences. Or, nous avons déjà
indiqué que, pour ne pas avoir à employer des méthodes de repli ou de recombinaison, il fallait maximiser
la couverture en trigrammes du modèle.
Nous allons donc maintenant étudier l'apprentissage possible en fonction de la taille des blocs. Nous
rappelons, comme nous l'avons dit dans le chapitre précédent, que lors du passage d'une longueur L
à une longueur L+1, la taille du corpus se réduit d'environ 50%. Cela signifie que, en moyenne,
la moitié d'un corpus généré avec une taille de bloc L est constituée de blocs de taille
L. Les remarques que nous allons faire sur des corpus avec des tailles de blocs fixées sont alors
valables sur 50% de la masse d'apprentissage disponible. Il est alors clair que cette
partie de l'apprentissage a une très grosse influence sur le modèle final. L'autre moitié du corpus
d'apprentissage est alors concernée par les remarques sur les corpus extraits avec L+1 comme paramètre.
La première évidence en fonction de nos objectifs, c'est-à-dire des modèles trigrammes, est que la valeur
inférieure de taille minimale des blocs est 3. Avec une valeur plus faible, nous calculerions des probabilités
d'apparition de bigrammes et d'unigrammes qui ne seraient pas directement en relation avec
la tâche considérée, puisqu'ils ne feraient pas forcement parti de contextes trigrammes basés sur le vocabulaire. Nous
risquerions d'apprendre des contextes qui sont hors de la tâche visée.
Nous allons maintenant détailler quels sont les événements que nous allons trouver dans notre corpus d'apprentissage
sur des blocs de taille 3, 4 et 5 :
- cas de L=3
Sur WebFr, le corpus d'apprentissage sur
la tâche de réservation touristique comporte 145 millions de mots. La figure VI.5
présente les événements que l'on dénombre dans un bloc de taille 3. Nous trouvons en trait plein les unigrammes,
en tirets courts les bigrammes et en tirets longs les trigrammes.
Sur un tel bloc, nous voyons qu'il est possible de compter 3 unigrammes, 2 bigrammes et 1 trigramme seulement.
En fait, sans méthode de repli, nous avons seulement appris comment prédire mot3 en sachant
mot1 et mot2. Si l'on considère qu'il est statistiquement tout à fait possible de ne trouver mot3
qu'en dernière position dans des blocs de taille 3, alors nous ne possédons aucune information
sur la capacité de mot3 à prédire ses successeurs.
Dans cet exemple, l'information contextuelle d'un bloc minimal de taille 3 pour un modèle trigramme est
IC3(bloc) = 0. Nous n'avons appris aucune information contextuelle complète pour aucun mot.
Dans l'éventualité d'employer un modèle bigramme, cette valeur serait IC2(bloc) = 1. Pourtant,
cela ne représente en fait que 1/3 de la masse d'apprentissage, ce qui est assez peu.
- cas de L=4
Dans cette configuration, nous trouvons 2 trigrammes, 3 bigrammes et 4 unigrammes. Comme précédemment,
l'information contextuelle dans ce bloc minimal, en contexte trigramme est nulle. Elle devient, pour un
contexte bigramme, IC2(bloc) = 2 ce qui nous donne 50% d'information
critique dans ce bloc.
- cas de L=5
D'après la figure VI.7, un bloc de taille 5 contient
5 unigrammes, 4 bigrammes et 3 trigrammes. L'information contextuelle IC3(bloc) vaut 1 et est non nulle
pour la première fois. Avec un bloc minimal de taille 5, nous nous trouvons pour la première fois dans
la position où un mot a fourni une information contextuelle complète. D'après notre métrique, nous pouvons
penser que la taille inférieure des blocs que nous devions générer, pour apprendre des modèles trigrammes,
est de 5. Cela revient en fait à dire qu'avec ce bloc, nous avons modélisé complètement le mot3.
La validation du résultat précédent, en reconnaissance de la parole cette fois, se retrouve dans le tableau
VI.4.
Ces taux de reconnaissance valident nos hypothèses et notre mesure, l'information contextuelle, pour la reconnaissance
de la parole. En effet, on voit bien que lorsque la valeur d'information contextuelle, augmente au niveau bigramme, le taux de reconnaissance
augmente également. De plus, lorsque cette valeur, pour une valeur de contexte de 3, passe à une valeur non nulle,
le taux de reconnaissance atteint sa valeur maximale. En effet, 88% est le maximum expérimental qu'il est possible
d'obtenir sans rajouter les mots hors vocabulaire présents dans les signaux à reconnaître. C'est pour cette
raison que nous n'avons pas poussé notre expérimentation en prenant des blocs de taille minimale égale à 6.
Au vu de la taille des corpus obtenus lorsque nous réglons notre filtre sur des phrases complètes (quelques dizaines de
milliers de mots), nous ne pouvons pas espérer avoir de bons résultats. Si l'on prend, comme nous l'avons vu dans la section
précédente, une taille de blocs minimaux égale à 5, nous obtenons un corpus de phrases complètes de 46500 mots. Le tableau ci-après récapitule
les résultats obtenus avec différentes sources de corpus de taille similaire.
Même si l'avantage de posséder des phrases complètes pour l'apprentissage de nos modèles peut se révéler un atout,
il est évident qu'une fois encore, dans ce cas, la taille plus que réduite du corpus d'apprentissage ne nous apporte
pas assez d'information pour nos modèles de langage. Même en utilisant WebFr4, sur une tâche aussi limitée
que la réservation touristique, nous obtenons un petit corpus d'environ 123000 mots qui reste insuffisant pour
nos apprentissages.
L'utilisation de ce paramètre ne peut porter ses fruits que dans l'éventualité de posséder un nombre plus conséquent
de mots différents pour maximiser l'obtention de phrases complètes. De plus, la méthode des blocs minimaux ayant été
optimisée pour le calcul de modèles de langage, et ces derniers fonctionnant à partir de contextes courts, il n'est alors
pas critique de posséder des phrases complètes. De plus, cette option réduit fortement la taille des corpus,
ceux-ci retrouvant une taille de l'ordre des corpus que nous possédions déjà. Elle ne sera donc pas utile pour l'apprentissage
de modèles de langage. Nous verrons que cette option est cependant précieuse pour d'autres
utilisations de nos outils comme pour la constitution de corpus de phrases pour l'enregistrement de signaux de parole
[Vaufreydaz et al. 00]. Cela fera l'objet d'un prochain chapitre.
Au vu des résultats que nous venons d'exposer, nous pouvons dire que plusieurs paramètres doivent êtres
choisis avec soin. Premièrement, la taille des blocs minimaux n'influe pas seulement sur la taille du corpus.
Même en produisant un corpus contenant 100 millions de mots de moins, en augmentant la taille
minimale des blocs de 3 à 5, le gain en taux de reconnaissance est de 10%, ce qui représente une
réduction du taux d'erreur de 54%. Ensuite, l'utilisation de phrases complètes n'apporte pas de très bons résultats,
même si, à taille de corpus équivalente entre celui obtenu à partir de WebFr et Nespole!,
le premier donne un résultat significativement supérieur au second. Encore une fois, Internet est une source
de texte, même avec ce paramétrage extrême, de qualité supérieure à des collectes de données
même en conditions réelles.
Le modèle de langage utilisé pour la reconnaissance de ce corpus est basé sur un vocabulaire de 20524 mots.
Il a été obtenu entièrement automatiquement en utilisant la chaîne complète de construction de corpus présentée dans
le chapitre précédent et dans [Vaufreydaz et al. 01a].
Premièrement, le vocabulaire de base de l'application visée, la réservation touristique étendue
du projet Nespole!, a été défini en utilisant les lexèmes présents dans les corpus réservations touristiques et
Nespole!. De plus, les quelques mots ajoutés empiriquement pendant la préparation du démonstrateur du projet CSTAR
ont enrichi ce vocabulaire pour atteindre un peu plus de 2500 mots. La seconde phase a consisté à compléter ce vocabulaire
par des vocables plus généraux pour réduire la probabilité d'apparition de mots hors vocabulaire lors de la phase de reconnaissance.
Cela a été réalisé en augmentant le vocabulaire avec les graphèmes français les plus présents dans WebFr4. À ce
stade, le vocabulaire fait exactement 20000 mots, une valeur raisonnable que nous avons fixée.
Nous avons ensuite ajouté les mots composés, formés de mots courts du vocabulaire les plus présents sur WebFr4, et atteint finalement les 20524 mots.
Le dictionnaire phonétique final de RAPHAEL comporte 27117 entrées.
Le modèle de langage a été appris sur WebFr4 filtré par la méthode des blocs minimaux avec une taille de bloc égale à 5.
Le corpus d'apprentissage comporte 1587142200 mots, ce qui confirme notre hypothèse sur la quantité d'information qu'il est possible
d'extraire de WebFr4, comme nous l'avons vu dans l'étude d'Internet.
Le modèle de langage comporte finalement 1960813 bigrammes et 6413376 trigrammes.
Le taux de reconnaissance que nous obtenons sur ce corpus est de 79,1%. De par la complexité des énoncés contenus dans les signaux
à reconnaître et l'aspect très général du vocabulaire, la définition du vocabulaire de base n'ayant d'utilité que de garantir
la présence de ces mots dans le système, ce résultat est satisfaisant. Si l'on considère qu'aucune adaptation particulière
n'a été réalisée pour augmenter ce résultat, obtenu de façon entièrement automatique, et que, de plus, ce taux de reconnaissance
nous permet de réaliser la phase suivante dans le système Nespole!, à savoir la traduction, nous considérerons ce résultat
comme répondant à nos objectifs initiaux [Vaufreydaz et al. 01a]. Nous travaillons cependant à son amélioration au moment de la rédaction de ce manuscrit.
Pour permettre l'évaluation comparative des systèmes de reconnaissance, il est nécessaire de fournir à tous la même
base de travail. Les participants ont donc pu profiter de ressources communes, sous forme de corpus sonores et textuels,
pour la mise au point de leurs outils. Cette catégorie d'évaluation avec des données imposées se nomme P0. Le lecteur
trouvera toutes les informations sur l'ARC B1 de l'Aupelf sur le site [Web 13].
Les corpus sonores fournis étaient BREF-80 et BREF-TOTAL [Lamel et al. 01]
avec toutes les transcriptions correspondantes. Pour l'apprentissage des modèles de langage, les textes
du journal « Le Monde » des années 1987 et 1988. Enfin, le vocabulaire des systèmes
était lui aussi donné sous la forme d'une liste de 20000 mots. Cette liste correspond aux mots les plus fréquents
dans les années 1987 et 1988 du journal.
Le corpus de test comprend 299 phrases correspondant à des extraits
lus de « Le Monde » qui ne se retrouvent pas dans les données d'apprentissage des modèles
de langage. Elles ont été choisies pour minimiser le taux
de mots hors vocabulaire par rapport à la liste de 20000 mots fournis.
Les équipes de recherche ayant participé à cette évaluation sont l'INRS-Télécommunication et le CRIM de Montréal, le
LIMSI à Orsay et le LORIA à Nancy. Les résultats ainsi que les divers paramètres des systèmes sont résumés
dans le tableau suivant :
Ces résultats sont ceux présentés dans [Savariaux et al. 97],
[Lazaridès et al. 98] et [Zitouni 00]. Comme nous pouvons
le voir, le meilleur résultat est de 89% de reconnaissance. Pourtant, comme le souligne [Zitouni 00] page 140,
le système ayant obtenu ce résultat a été entraîné sur 270 millions de mots (contre 40 pour les autres) et réalise de plus
une adaptation acoustique aux phrases à reconnaître. De plus, le vocabulaire du système est supérieur aux 20000 mots fournis,
ce qui diminue les problèmes dus aux mots hors vocabulaire. Les autres systèmes ont tous des taux d'erreur supérieurs à 30%.
Le meilleur système de ce second lot est celui du LORIA. Viennent ensuite les systèmes du CRIM et de l'INRS. Il est à noter
que des résultats meilleurs ont été publiés par ces équipes de recherche en utilisant diverses techniques d'adaptations
de leur système. Ceci n'est toutefois pas le propos de notre comparaison puisque nous n'utilisons aucune de ces techniques.
Nous allons maintenant voir quels sont les résultats que nous pouvons obtenir en utilisant Internet comme source
de texte pour cette tâche. Le calcul de notre modèle de langage est entièrement automatique. La seule modification
que nous ayons apportée à notre méthode concerne les mots composés. Nous n'avons en effet pas ajouté de mot
composé au vocabulaire de base pour respecter le vocabulaire défini pour l'évaluation.
Les blocs minimaux utilisés, conformément à ce que nous avons vu au début de ce chapitre
sont de longueur minimale égale à 5. Le corpus d'apprentissage obtenu sur WebFr4 fait 1292328777 mots. Le modèle
de langage résultant comprend 2305645 bigrammes et 7478136 trigrammes. Le modèle acoustique est, quant à lui, entraîné
sur BREF-80, ce qui représente environ 10 heures de parole. Les autres participants ont eux entraîné leurs
systèmes sur BREF-TOTAL qui représente plus d'une centaine d'heures de signal.
Le taux de reconnaissance que nous obtenons pour cette tâche, avec un treillis de mots et sans aucune modification manuelle
des hypothèses produites par RAPHAEL pour traiter les homophones
par exemple, est de 63%, soit 37% d'erreurs [Vaufreydaz et al. 01b]. Nous voyons que ce résultat totalement automatique est du même
ordre que la plupart des systèmes ayant participé à l'évaluation. De plus, dans ce cas, Internet se montre aussi satisfaisant
comme source de texte que le texte fourni pour l'évaluation, sachant que les journaux nationaux en ligne n'autorisent pas les
robots à collecter leurs documents.
Les phrases à reconnaître étant des énoncés tirés du journal « Le Monde » ainsi que le corpus
d'apprentissage donné aux participants, ce sont donc des textes jumeaux. L'intérêt d'Internet pour la modélisation du langage,
même de type journalistique, est validé par ces résultats.
Nous sommes actuellement en train de travailler sur les modèles acoustiques de RAPHAEL. Nous allons bientôt disposer d'un modèle
entraîné lui aussi sur BREF-TOTAL, ce qui devrait nous permettre d'être dans des conditions plus proches
de celles des participants à l'évaluation. Nous devrions avoir un gain non négligeable
en augmentant la taille du corpus d'apprentissage acoustique. Nous menons en parallèle, en collaboration avec le laboratoire LIA
d'Avignon, une étude permettant de déterminer la contribution relative de l'acoustique et du modèle de langage
dans le taux d'erreur que nous obtenons. Pour cela, nous sommes en train de réaliser des tests croisés entre
les systèmes acoustiques et les modèles de langage. En comparant les taux d'erreur de notre modèle de langage avec
le système acoustique du LIA et le modèle de langage du LIA avec notre système acoustique, nous pourrons déterminer
quels sont le ou les points à améliorer. Nous menons ces tests parallèlement à la rédaction de ce manuscrit.
Les signaux de la campagne d'évaluation AUPELF représentant la tâche la plus difficile pour Raphaël, nous avons
décidé d'étudier la différence entre un apprentissage sur WebFr et WebFr4 pour nos modèles de langage.
Les paramètres sont dans les deux cas les mêmes que précédemment. La seule différence réside dans le fait
que, lors de l'emploi de WebFr, le module de correction orthographique est activé.
En utilisant WebFr, le taux de reconnaissance que nous obtenons est de 51% (49% d'erreurs). Si nous le comparons
avec les 37,2% d'erreurs pour WebFr4, nous voyons une réduction de 30% du taux d'erreur. Cela valide nos
postulats sur l'intérêt grandissant d'Internet pour la modélisation du langage. Un premier facteur intervenant dans ce gain est l'accroissement incessant du nombre de documents que l'on peut
trouver sur la Toile. Le second concerne
l'hétérogénité de ces documents et l'augmentation du nombre de vocables qu'ils contiennent. Ces deux
facteurs concourent simultanément à l'amélioration de la qualité de nos modèles de langage. Ce résultat confirme
ce que nous avions déjà énoncé dans le chapitre « Étude d'Internet », où nous nous étions fondé
uniquement sur la représentation des pronoms personnels, sur le nombre de mots différents et aussi sur la taille
croissante des corpus.
Les résultats présentés dans ce chapitre montrent bien l'intérêt, du point de vue de la reconnaissance de la parole,
de la méthode des blocs minimaux. L'étude statistique de la représentation de l'information au sein
d'un corpus extrait de la Toile a montré une répartition uniforme de celle-ci, très certainement due à la méthode
de collecte aléatoire de notre robot Clips-Index. Pourtant, chaque sous-partie apporte une nouvelle variété
de construction qui semble intéressante. Nous pouvons maintenant affirmer qu'il est assez rapide de trouver toutes les
constructions de base du langage, même oral, sur Internet. L'ajout de quantité ne fait qu'accroître la variété
et affiner les probabilités du modèle de langage. Cette remarque fait écho à celle de
[Antoine et al. 01], que nous avons déjà citée dans le chapitre I selon laquelle,
pour les dialogues, il y aurait
un noyau minimal constant, augmenté par des constructions spécifiques à la tâche visée.
Nous avons aussi montré, comme d'autres, que la perplexité, même si elle présente des propriétés intéressantes,
est assez mal corrélée avec le taux de reconnaissance final.
En ce qui concerne la tâche de reconnaissance, les modèles obtenus par la méthode des blocs minimaux apportent de bons résultats
en terme de taux de reconnaissance. Cette méthode, employée sur des corpus issus de la Toile, pallie le manque de données pour l'apprentissage
de modèles statistiques. De plus, en rajoutant des filtres avant le calcul final du modèle de langage, il est tout à fait envisageable
de construire d'autres types de modèles comme des modèles n-classes. Notre démarche semble donc ouvrir une voie nouvelle
et efficace pour l'obtention
de corpus intéressants dans le cadre de la modélisation statistique du langage.
Nous arrivons ainsi à la fin de la seconde partie de cette thèse qui présentait Internet et son utilisation dans la modélisation du langage
pour la reconnaissance de la parole spontanée. Nous allons maintenant aborder d'autres utilisations que nous
pouvons faire d'Internet dans le cadre d'applications liées à la reconnaissance de la parole.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||