Pourquoi modéliser la conversation orale spontanée reste un défi de taille
⏱ 8 min[vc_row][vc_column][vc_column_text]
Julie Hunter, ingénieur de recherche à Linagora, jhunter@linagora.com
Jean-Pierre Lorré, directeur R&D de Linagora, jplorre@linagora.com
Manque de données, difficultés d’annotation, de modélisation des relations sémantiques entre énoncés… Développer un assistant de transcription et de compte rendu de conversation de groupe capable d’identifier les points importants reste un défi. Explications.
Dans bon nombre de situations professionnelles, notamment de réunions, il est important d’avoir une transcription des échanges ainsi qu’un compte rendu des points les plus importants de la conversation. Quels ont été les sujets abordés, les décisions prises ? Quels arguments ont été avancés, qui s’est engagé à obtenir quels résultats ? On affecte en général ce travail à l’un des participants. Serait-il possible d’automatiser cette tâche de transcription en la confiant à des assistants de conversation, capables de produire automatiquement des comptes rendus ou de faire des suggestions pertinentes en temps réel telles que « Dois-je ajouter cela au calendrier ? », « Voudriez-vous que je projette le compte rendu de la dernière réunion où nous avions discuté de ce sujet ? » ?
À Linagora, éditeur de logiciels libres depuis 2000, nous créons des solutions de contrôle vocal pour les entreprises. Cela va de l’utilisation de commandes simples (comme allumer la lumière ou ouvrir un logiciel) à des interactions conversationnelles avec notre plateforme open source de contrôle vocal, LinTO (1). Aujourd’hui, nous focalisons une grande partie de nos recherches sur le développement de systèmes robustes de transcription (2) et de compréhension du langage naturel (3), capables de gérer des conversations orales spontanées telles que celles des réunions professionnelles.
En quoi consisterait un assistant de transcription et compte rendu de conversation ?
La création d’un tel assistant nécessite non seulement de solides capacités de reconnaissance vocale, mais aussi l’appréhension des relations sémantiques entre les énoncés et les différents fils de discussion de la conversation : une réponse doit être reconnue comme une réponse à une question particulière ; un argument, comme un argument pour ou contre une proposition en cours de discussion ; un désaccord, comme l’expression d’un point de vue mis en contraste avec une autre idée déjà exprimée. Il faut également être capable de distinguer les principaux fils de la conversation des blagues et autres apartés.
Si la reconnaissance de la parole, tout comme la structure et l’interprétation du discours sont désormais des domaines d’études linguistiques bien établis, la conversation spontanée présente encore, quant à elle, des défis importants. Quels sont les problèmes à résoudre pour la modélisation automatique du dialogue ? Mettons de côté le fait que les interlocuteurs partagent souvent un environnement visuel et une grande quantité d’informations, ce qui introduit d’emblée dans le discours des connaissances très difficiles à modéliser. Quels sont les obstacles à la reconnaissance vocale et à la modélisation des tours de parole explicites ?
Première caractéristique spécifique de la communication spontanée : contrairement à la communication écrite, son rythme laisse peu de temps aux locuteurs pour planifier leurs propos, ce qui se traduit par un niveau important de « disfluences » de la parole. Les disfluences sont toutes ces interruptions en milieu de phrase, remplies de « euh », de « hum », ces répétitions de mots ou de phrases (« le le le cahier »), ces hésitations (« Et du couuuup… ») qui permettent au locuteur de gagner du temps sans ajouter à l’information globale. On peut s’arrêter soudainement pour corriger un choix de mot ou pour commencer une nouvelle phrase ; ce qui se fait quand, par exemple, un locuteur se rend compte à mi-chemin qu’il faut d’abord fournir des informations manquantes à son destinataire avant d’exprimer la phrase qu’il avait entamée. Pour aggraver les choses, les interlocuteurs s’interrompent régulièrement et n’hésitent pas à parler en même temps entraînant des paroles superposées.
[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_cta h2= » »]B : Donc du coup, j’ai fait, euh… on on est passé par euh… par euh… Ben euh Benghazi c’est ça, ça s’appelle la petite ville ? Non, euh…
[D] : Benghazi c’est, Benghazi c’est la Libye.
[B] : Non, Benzart ? Benghazi. Benghazi ?
H : Benghazi, c’est la Libye.
B : Non, non, une ville, là où il y a… là où ça a commencé c’est Ben euh…
D : Il y a Benzart.
B : Benzart.
D : Voilà.
B : C’est au c’est à côté de Be Beja, c’est ça, c’est pas loin de Beja. Voilà, c’est ça. On est passé, en fait, on a vu, on n’était pas loin de cette ville, on est passé par Be Beja et après on est rentré au à Tunis, et on a fait… du coup, moi, je connais un petit peu euh… Hammamet, Sousse, Nabeul, et on est allé jusqu’à euh…
D : Vous vous êtes arrêtés avant Sfax.
B : Oui, en fait on s’est on s’est arrêté.
D : [rires]
B : Oui, en fait on s’est arrêté à Sousse, parce qu’on est allé uniquement une semaine donc euh… on n’a pas eu le temps de tout voir. Donc le peu qu’on avait vu, on est allé vraiment dans les les endroits très touristiques on va dire de de de de la Tunisie, mais c’était très sympa, en fait.
Voici un exemple typique de discours oral disfluent. Le locuteur B parle de son voyage en Tunisie en 2013. Les crochets indiquent les tours de parole superposés[/vc_cta][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]
La reconnaissance vocale au défi du discours hésitant
Rappelons comment fonctionnent les modèles classiques de reconnaissance vocale : ce sont des enchaînements de modèles acoustiques, phonétiques et linguistiques. Ils s’appuient sur des faits contextuels aux niveaux phonétique et lexical pour prédire les mots sur la base d’un signal audio. D’une part, ils exploitent le fait que la façon dont un phonème est prononcé peut dépendre des phonèmes qui l’entourent. D’autre part, la probabilité qu’un mot donné soit la transcription correcte d’un certain segment audio est affectée par les mots qui l’ont précédé. Or, les disfluences, tout comme la parole superposée, compliquent considérablement la modélisation. Elles interrompent, perturbent les séquences fluides de phonèmes ou de mots sur lesquels ces modèles reposent et peuvent modifier les fréquences relatives avec lesquelles les mots coexistent.
Par ailleurs, quels que soit les modèles de reconnaissance vocale, classiques ou à base de réseaux de neurones profonds, leur entraînement requiert de grands ensembles de données sur la langue parlée. Ces données, qui sont librement disponibles pour les corpus de parole préparée ou lue (tels que LibriVox, Bref, et Common Voice), sont bien plus difficiles à réunir pour la conversation disfluente. Elles sont également bien plus difficiles à transcrire avec précision pour entraîner les modèles d’apprentissage.
Il existe bien des méthodes « d’augmentation des données », qui se sont révélées utiles pour élargir les ensembles de données sur certains aspects. Mais il n’est pas faisable de créer artificiellement un corpus de parole disfluente en ajoutant des disfluences à un corpus de la parole lue ou préparée. Cela modifierait le timing et la fluidité de l’enregistrement. De plus, de nombreuses disfluences ne prennent pas la forme de simples mots ajoutés, mais d’énoncés abandonnés et de changements d’intonation qui reflètent des changements abrupts dans la planification de la conversation. Recueillir et rendre accessibles pour la modélisation des ensembles de données appropriés est donc une gageure.
La modélisation des relations sémantiques entre énoncés
Autre caractéristique complexe à modéliser : les relations sémantiques entre énoncés. Il existe désormais un grand nombre de travaux en linguistique théorique et computationnelle sur la modélisation des relations sémantiques qui permettent de relier le contenu de nos énoncés, y compris les relations explicatives, les relations temporelles, les relations structurelles (telles que le contraste avec un « mais » ou « cependant », par exemple), les relations question/réponse, etc. Nous sommes néanmoins loin de la possibilité de créer un analyseur automatique de conversation orale et disfluente. D’abord, comme évoqué plus haut, nous manquons cruellement d’ensembles de données pour étudier ce type de discours. L’autre problème majeur est lié à la nature des défis conceptuels et pratiques posés par l’analyse du discours.
Même pour un humain, lire la transcription d’une discussion spontanée pleine de disfluences, et trier de ce qu’il faut en retirer, peut être une tâche laborieuse. En plus, il ne suffit pas de supprimer quelques « euh » ou « le » pour s’affranchir des caractéristiques propres au discours parlé. Dès lors, rien d’étonnant à ce que l’analyse automatique de ces mêmes textes demeure très difficile.
De nombreux défis conceptuels
La conversation spontanée et orale introduit un ensemble de défis inédits : les interlocuteurs peuvent orienter le discours dans des directions différentes et concurrentes, rendant le développement global du sujet moins ordonné et cohérent que dans un texte préparé. Les contributions individuelles peuvent être non seulement disfluentes, mais aussi longues et sinueuses, répétitives, voire fragmentaires, ce qui entraîne des incohérences que l’on ne trouve pas dans les genres écrits. Même les discussions de messageries instantanées, qui manifestent une partie du désordre de la conversation spontanée, ne présentent pas ces caractéristiques difficiles.
Ainsi, même dans l’hypothèse où l’on arrive à acquérir des ensembles de données de qualité, la construction d’un bon analyseur de discours est encore une bataille difficile, car elle nécessite d’utiliser le sens de nos paroles pour déterminer comment elles se rapportent les unes aux autres. On parle de « règles d’attachement » et de « dépendance longue distance » des mots entre eux. Cette tâche est également compliquée par le fait qu’il y a souvent un décalage entre l’ordre séquentiel dans lequel les phrases sont prononcées et l’ordre conceptuel que nous déduisons dans le raisonnement sur la façon dont elles se rapportent les unes aux autres.
Prenons l’exemple suivant d’un dialogue entre Alice et Bertrand :
(a) Alice : Quel est le nom de famille de Marie ?
(b) Bertrand : Vous voulez dire la Marie de notre groupe de lecture ?
(c) Alice : Oui.
(d) Bertrand : C’est Dupont.
On comprend que la réponse de Bertrand « C’est Dupont » répond à la question posée par Alice dans (a) plutôt qu’à l’énoncé immédiatement précédent au point (c). Cette dépendance entre mots, dite de « longue distance », se manifeste de façon diverse mais fréquente dans les conversations orales. Dans l’exemple d’une conversation disfluente ci-dessus, par exemple, il y a au moins 10 segments entre la première occurrence de « on est passé » et la deuxième, où le locuteur B reprend enfin son histoire. Ce phénomène est connu dans l’analyse de la syntaxe (pour étudier la relation entre les mots d’une même phrase) mais il est beaucoup plus difficile à résoudre dans l’analyse du discours. Car celle-ci nécessite d’analyser le discours en entier, autrement dit les relations entre les phrases ou fragments de phrases, là où l’analyse syntaxique s’arrête au niveau de chaque phrase. Par conséquent, il faut absolument comprendre le sens des phrases pour comprendre les liens discursifs entre phrases alors qu’il suffit de vérifier que les règles syntaxiques sont respectées dans la phrase pour faire une analyse syntaxique, même si cette phrase n’a pas de sens.
Le problème de l’annotation
Quels sont les défis « pratiques » liés à la conversation spontanée orale ? Ils sont principalement liés à l’annotation. Car, compte tenu des méthodes d’apprentissage actuelles, construire un analyseur de discours robuste nécessiterait bien plus de données annotées que nous n’en obtiendrons jamais. L’annotation d’une structure latente impliquant des dépendances potentiellement longues distances, comme celle de l’exemple ci-dessus, demande non seulement beaucoup de temps, mais également une expertise linguistique. Ce n’est pas une tâche que l’on peut confier aux techniques de crowdsourcing, comme c’est le cas pour la reconnaissance d’images, lorsqu’on demande à des humains de reconnaître un chat, un cheval ou une voiture pour certifier qu’on n’a pas à faire à un robot. Par ailleurs nul ne sait comment utiliser l’apprentissage non supervisé pour apprendre de telles structures.
À Linagora, nous nous attachons donc à mettre au point de nouvelles méthodes intelligentes pour exploiter les données que nous recueillons. Étant donné que le problème posé est celui de la compréhension et de l’inférence, la voie à suivre consistera sans doute à trouver comment utiliser l’expertise linguistique humaine en conjonction avec les nouvelles techniques d’apprentissage automatique et de réseaux de neurones. Mais la manière de réunir ces approches pour résoudre le problème reste une question ouverte.
Nous concentrons une partie importante de notre effort sur la collecte et l’utilisation d’enregistrements de réunions, et en particulier de réunions en français, car il y a un manque important de données francophones dans les travaux sur la compréhension du langage naturel, de manière générale. Parallèlement, nous essayons de trouver des moyens de faire face aux problèmes inévitables liés à la trop faible quantité de données par rapport aux besoins des algorithmes d’apprentissage automatique notamment d’apprentissage profond. Nous menons ce travail avec des linguistes théoriques et computationnels spécialisés dans la structure du discours pour trouver des moyens malins d’injecter l’expertise linguistique dans nos algorithmes, y compris la définition d’heuristiques linguistiques pour étiqueter automatiquement de grands ensembles de données avec un besoin minimal d’annotation manuelle (4,5). C’est un travail de longue haleine.
(1) J.-P. Lorré, I. Ferrané, F. Madrigal, M. Vazirgiannis, C. Bourguignat. « LinTO : Assistant vocal open-source respectueux des données personnelles pour les réunions d’entreprise ». APIA 2019 : Conférence nationale sur les applications pratiques de l’intelligence artificielle. Association française pour l’intelligence artificielle, pp 63–66.
(2) I. Rebai, K. Thompson, S. Benhamiche, Z. Sellami, D. Laine, J.-P. Lorré. » LinTO Platform: A Smart Open Voice Assistant for Business Environments ». The 1stInternational Workshop on Language Technology Platforms (IWLTP 2020), en cours de publication, 2020.
(3) G. Shang, W. Ding, Z. Zhang, A. Tixier, P. Meladianos, M. Vazirgiannis, J.-P. Lorré. « Unsupervised Abstractive Meeting Summarization with Multi-Sentence Compression and Budgeted Submodular Maximization ». Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). Association for Computational Linguistics, 664-674, 2018.
(4) S. Badene, K. Thompson, J.-P. Lorré, N. Asher. « Data Programming for Learning Discourse Structure.Dans Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics ». Association for Computational Linguistics, 640-645, 2019.
(5) S. Kate Thompson, J.-P. Lorré, N. Asher. « Weak Supervision for Learning Discourse Structure ». Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP). Association for Computational Linguistics, 2296-2305, 2019.
[/vc_column_text][/vc_column][/vc_row]