Introduction

En IA, l'un des principaux défis est de permettre aux ordinateurs de comprendre la parole humaine grâce par exemple, à un assistant vocal.  Ces systèmes de dialogue oraux sont des interfaces entre les utilisateurs et les services, comme les chatbots ou les assistants vocaux, qui permettent aux utilisateurs de commander des objets, de gérer leur agenda, de trouver leur chemin, de répondre à des questions, de réserver des trains, des vols, un restaurant, etc. Les systèmes de dialogue sont composés de plusieurs modules. Les principaux modules comprennent la reconnaissance automatique de la parole (ASR), la compréhension de la parole (SLU), la gestion du dialogue et la synthèse de parole (figure 1). Ici, nous allons nous concentrer sur la compréhension de la parole, la composante des systèmes de dialogue qui vise à comprendre les besoins humains.

Aujourd'hui, la compréhension de la parole (SLU) fait partie intégrante de nombreuses applications, mais très peu de sociétés, en dehors des GAFAM ou des BATX, fournissent ce service et possèdent une expertise dans un domaine aussi difficile à gérer.

Issue d'une longue histoire de linguistique théorique, la SLU a plusieurs déclinaisons et peut avoir plusieurs aspects. L'un de ces aspects est la possibilité de relier un mot ou une séquence de mot à un sens, ou à un concept. C'est sur ce point que se concentre notre travail.

Figure 1 : Schéma général d’un assistant vocal.

*COLING2020, la 28ème conférence internationale sur la linguistique informatique, est une conférence majeure du Traitement Automatique des Langues

Chez QWANT, nous travaillons sur ces approches depuis plusieurs années maintenant, et nous proposons dans cet article d'approfondir le sujet et la technique de compréhension. Nous expliquerons également comment nous pouvons adapter ce travail à nos besoins industriels et comment nous les comparons, ce qui nous a permis de publier dans l'une des principales conférences sur le Traitement Automatique des Langues Naturelles cette année : COLING 2020.

Compréhension de la parole

L'interprétation sémantique faite par un ordinateur est un processus de conceptualisation du monde utilisant un outil pour créer une structure de représentation du sens, à partir de différents symboles et de leurs caractéristiques présentes dans les mots ou les phrases. La compréhension de la parole, c’est l'interprétation de ces symboles inclus dans le discours.

Figure 2 : compréhension de la parole appliqué une phrase du corpus MEDIA.

Cette représentation vise à traduire le langage naturel humain en une forme interprétable par l’ordinateur, qui lui permet par exemple, d'interroger une base de données. Cette étape est cruciale dans un système d'assistant vocale et de dialogue, est une partie de l'intelligence du système, qui permet d'extraire le sens même d'une phrase.

Plusieurs systèmes et plusieurs approches existent depuis des années et sont continuellement évalués par rapport aux tâches de compréhension classiques. L'une de ces tâches de compréhension est la tâche Tâche MEDIA, décrite dans la partie suivante.

Tâche de compréhension en français : Tâche MEDIA

La Tâche MEDIA française vise à évaluer SLU par le biais d’un système de dialogue parlé dédié à l'informations touristiques et à la réservation d'hôtels. Plus de 1 250 dialogues ont été enregistrés, transcrits et annotés manuellement pour préparer cette évaluation. Créé en 2005 pour une campagne d'évaluation française intitulée TECHNOLANGUE/EVALDA/MEDIA[1], de nombreux systèmes ont été évalués depuis des années, ce qui a permis de devenir une référence incontournable dans le monde de la compréhension de la parole.

La figure 2 présente un exemple de labelisation appliqué à une phrase du corpus MEDIA. Identifié récemment comme l'une des tâches les plus difficiles de compréhension[2], nous étudions et ajustons nos modèles pour obtenir les meilleurs résultats. Nos modèles de compréhension répondront à ce défi.

Modèles de compréhension

Nous avons décidé de relever le défi de la tâche MEDIA, en utilisant les approches de pointe qui existent en Traitement Automatique des Langues. La plupart de ces approches ont été appliquées avec succès à des corpus anglais, mais peu d'entre elles ont été testées sur une langue plus riche sur le plan morphologique comme le français. La plupart de ces modèles sont étudiés et appliqués depuis des années chez Qwant, ces derniers utilisent les récentes avancées des modèles d'Intelligence Artificielle : un Réseau de Neurones. Le premier utilise des séquences ordonnées de mots et de caractères comme entrée pour étiqueter les séquences ordonnées de mots (également connu sous le nom d'approche séquence-à-séquence).

Cette entrée est donnée à un modèle de réseau neuronal spécifique (une couche convolutionnelle), qui extrait les caractéristiques et les donne en entrée à un autre (un Bi-LSTM ), qui les encode et propose sa sortie à un décodeur et une couche de décision (un CRF ). Ce modèle a été proposé à l'origine par Ma et Hovy [3], que nous avons adapté et modifié en fonction de nos besoins.

Figure 3 : Modèle BiLSTM-CNN-CRF utilisé à Qwant.

Le second modèle utilisé est le fameux modèle BERT et plus particulièrement sa version française CamenBERT, proposée par une équipe de recherche française de l'INRIA (ALMAnaCH) [4]. Ce dernier modèle est un modèle pré-entraîné, qui a utilisé plus de 190Go de données d’apprentissage. Ce modèle fut téléchargé et adapté à notre tâche (ou "fine-tuned"). Ces deux modèles seront évalué sur la tâche MEDIA.

[1] BiLSTM pour  Bi-directional Long-Short-Term-Memory model
[1] CRF pour Conditional Random Fields

Évaluation

Pour évaluer nos modèles sur la tâche de compréhension, nous devons utiliser deux mesures, la première est un taux d'erreur conceptuelle (CER), qui indique le taux d'erreur entre une hypothèse et une référence (plus il est faible, mieux c'est). La seconde est la F-mesure, qui est une moyenne entre les mesures de précision et de rappel. La précision indique combien de solutions sélectionnées sont pertinentes, le rappel est le nombre d'éléments pertinents sélectionnés (voir figure 4). Si nous étions en train de pêcher, la précision serait associée à la pêche à la ligne, et le rappel à la pêche au filet. Pour la précision, le rappel et la F-mesure: plus la mesure est élevée, mieux c'est.

Le tableau 1 montre les résultats obtenus sur la tâche MEDIA selon la F-mesure et la CER. SOTA indique l'état actuel des performances dans la littérature scientifique (Etat-de-l’Art), BiLSTM-CNN-CRF se réfère au premier modèle décrit dans la section Modèle. Enfin, la meilleure approche est le Fine-Tuned CamemBERT, qui permet de créer une véritable percée dans cette tâche.

Figure 4 : Mesures de précisions et rappel utilisé pour évaluer notre modèle.
Table 1 : Résultat obtenu sur la tâche MEDIA, utilisant la F-Mesure et le CER.

Alors que le modèle classique de Qwant est un peu en deçà de l'état de l'art, la version française de BERT nous permet d'améliorer de près de 2 points de CER et de plus de 1,4 points de F-Mesure.

Conclusion

De nos jours, même avec des serveurs de dernière génération, le passage à l'échelle des modèles BERT est une tâche complexe. D’autant plus lorsque le temps d'inférence est crucial. En effet, nous avons comme défi de traiter 1 000 requêtes par seconde (1ms pour répondre à la requête). La version en production de notre BiLSTM-CNN-CRF peut atteindre 20 ms par requête, sans aucune optimisation. En parallèle, nous travaillons sur des modèles BERT optimisés pour permettre leur utilisation en production.

Le passage à l’échelle est l'un des principaux défis à l'utilisation de l'intelligence artificielle en entreprise. Ce problème a été abordé par de nombreux chercheurs et ingénieurs, la plupart du temps la solution réside dans la réduction de la complexité du modèle, conjointement avec une opération de quantification. Cette dernière opération vise à réduire la représentation numérique du nombre dans un modèle (de 32 bits à 8 bits, la plupart du temps).

Chez Qwant, nous travaillons sur ces optimisations afin que ces modèles soient à la hauteur de nos défis. Nous pensons qu'ils peuvent améliorer les résultats de nos moteurs de recherche et l'expérience utilisateur.

Ce travail fut co-écrit par Sahar Ghannay, Sophie Rosset (Université Paris-Saclay, CNRS, LIMSI) et Christophe Servan (Qwant). Ce travail fut financé en partie grace au projet LIHLITH (ANR-17-CHR2-0001-03), avec le soutient de l'ERA-Net CHIST-ERA, celui de l'“Agence Nationale pour la Recherche” (ANR, France).

Références

[1] Hélène Bonneau-Maynard, Sophie Rosset, Christelle Ayache, Anne Kuhn et Djamel Mostefa. "Annotation sémantique du corpus de dialogue médiatique français". Dans les Actes de la Conférence européenne sur la communication vocale et la technologie (Eurospeech), Lisbonne, Portugal, 2005.

[2] Frédéric Béchet et Christian Raymond. "Benchmarking benchmarks : introducing new automatic indicators for benchmarking spoken language understanding corpora". Dans Interspeech, Graz, Autriche, 2019

[3] Xuezhe Ma, et Eduard H. Hovy. "Etiquetage de bout en bout des séquences via LSTM-CNNs-CRF bidirectionnel". Dans les Actes de la 54ème réunion annuelle de l'Association for Computational Linguistics, 2016.

[4] Louis Martin, Benjamin Muller, Pedro Javier Ortiz Suárez, Yoann Dupont, Laurent Romary, Éric de la Clergerie, Djamé Seddah, Benoît Sagot. "CamemBERT : un savoureux modèle de langue française". Dans les Actes de la 58e réunion annuelle de l'Association de linguistique informatique, 2020.