Étiquetage ou génération de séquences pour la compréhension automatique du langage en contexte d’interaction? (Sequence tagging or sequence generation for Natural Language Understanding ?) (2022)

Abstract: La tâche de compréhension automatique du langage en contexte d’interaction (NLU pour Natural Language Understanding) est souvent réduite à la détection d’intentions et de concepts sur des corpus mono-domaines annotés avec une seule intention par énoncé. Afin de dépasser ce paradigme, nous cherchons à aborder des référentiels plus complexes en visant des représentations sémantiques structurées au-delà du simple modèle intention/concept. Nous nous intéressons au corpus MultiWOZ, couramment utilisé pour le suivi de l’état du dialogue. Nous questionnons la projection de ces annotations sémantiques complexes pour le NLU, en comparant plusieurs approches d’étiquetage de séquence, puis en proposant un nouveau formalisme inspiré des méthodes de génération de graphe pour la modélisation sémantique AMR. Nous discutons enfin le potentiel des approches génératives.

## introduction la compréhension automatique de la parole (ou slu/nlu pour spoken / natural language understanding) est une tâche traditionnellement étudiée dans le contexte des systèmes de dialogue humain-machine où chaque tour de parole correspond à une requête ou une réponse de l'utilisateur face à une question du système. les limites inhérentes à ce type de systèmes ont permis de simplifier les modèles sémantiques utilisés pour représenter le sens de chaque énoncé en exploitant le fait que chaque requête ne devait contenir qu'un seul but et ne faisait pas intervenir le contexte du dialogue pour en expliciter le sens. c'est ainsi que les modèles sémantiques à plat du type domaine, intention, concept+valeur (domain, intent, slot-values) ont été exploités dans des corpus de référence tels que atis, snips, m2m ou encore media. pour pouvoir prédire de telles représentations, les modèles d'étiquetage de séquences se sont imposés comme étant la solution la plus performante, depuis les hmm, crf, lstm @xcite jusqu'aux modèles de réseaux de neurones (deep neural network, dnn ) à base d'attention @xcite , ces derniers modèles atteignant des performances proches de la perfection dans des conditions d'utilisation benchmark. cependant les limites de ces modèles sont doubles : d'une part les modèles d'étiquetage de séquences sont des modèles de classification, ils nécessitent donc de disposer d'un corpus d'apprentissage suffisant pour chaque classe à prédire, tout changement de domaine ou d'ontologie verra les performances du modèles s'écrouler, ne permettant pas de mutualiser les corpus d'applications ou de schémas d'annotation différents ; d'autre part les représentations sémantiques à plat représentent difficilement des structures sémantiques plus complexes dans lesquelles des énoncés peuvent contenir plusieurs intentions et intégrer du contexte, comme par exemple dans le corpus multiwoz. afin de s'attaquer à ces deux limitations, cet article propose deux contributions. la première est une comparaison, sur le corpus multiwoz, de deux paradigmes de nlu/slu pour la prédiction de structures sémantiques : l'étiquetage de séquences et la prédiction directe d'un graphe sémantique par une approche générative de type séquence-à-séquence. la deuxième contribution concerne une approche originale de type séquence-à-séquence, en proposant un schéma d'encodage de graphes sémantiques de nlu/slu inspiré du formalisme de penman @xcite utilisé pour les représentations sémantiques amr (absract meaning representation) @xcite ) qui permet de s'abstraire d'un modèle d'annotation développé pour un domaine particulier, ouvrant la porte à une plus grande généricité des modèles nlu/slu. ## le corpus multiwoz multiwoz est un jeu de données multi-domaines à grande échelle, en langue anglaise, fréquemment utilisé dans le suivi de l'état du dialogue (dialog state tracking), la politique de dialogue et les tâches de génération de dialogue. il a été collecté suivant l'approche magicien d'oz par crowd-sourcing. la première version de multiwoz a été publiée en 2018 @xcite pour encourager les progrès dans la construction de systèmes de dialogue en utilisant une approche supervisée. il est constitué d'un ensemble de dialogues pour lesquels chaque énoncé (système et utilisateur) est annoté par une séquence d'actes de dialogue dont la définition a pu varier avec le temps. la première version de ce corpus était très bruitée avec par exemple certaines valeurs annotées plusieurs fois par le même acte de dialogue, des actes de dialogue manquants, des valeurs attribuées à de faux concepts, etc. de ce fait, plusieurs versions du corpus ont été produites la valeur yes n'a pas de correspondance exacte dans le texte, alors que l'empan est fourni pour la deuxième valeur (7,7). deux intentions différentes sont présentes dans le deuxième exemple, ainsi que dans le troisième où ils concernent de surcroît deux domaines différents et avec des supports identiques. enfin le quatrième exemple illustre le fait que les annotations sont intrinsèquement contextuelles. en effet, l'association entre "the postcode for that" et le domaine attraction ne peut pas être résolue en ne tenant compte que de l'énoncé courant. nous ne tiendrons pas compte du contexte dans cette étude mais l'aborderons dans de futurs travaux. le corpus multiwoz 2.3 contient 8 domaines applicatifs couvrant train, taxi, hotel, énoncés annotation en acte de dialogues ⋄ i need to make sure it's cheap and i need parking "hotel-inform": restaurant, attraction, hospital, bus et police auxquels s'ajoute le domaine general pour les actes de dialogue génériques de l'interaction comme bye, greet, thank et welcome. les valeurs normalisées sans empan associé, aussi appelées categorical slots dans la littérature, sont yes, no, dontcare et ? (le dernier correspondant aux questions posées par l'utilisateur et qui est associé souvent à l'acte request) ainsi que cheap, expensive, free et moderate qui peuvent être soit associées à un empan si le terme est explicitement prononcé, soit non quand elles sont exprimées par une périphrase (e.g « i don't want to pay for wi-fi » pour la valeur free). les chiffres peuvent également représenter des quantités implicites (par exemple « for myself » pour 1 personne). enfin, la valeur none, peut être associée au concept none lorsque l'intention n'est pas instancié par un concept ("general-thank": ["none", "none"]) ou bien à un concept sans valeur associée. au total le corpus est constitué de 10438 dialogues pour 71521 énoncés utilisateur. il est annoté avec 27 concepts différents auxquels s'ajoute le concept none, 32 intentions de type domain-act et la combinatoire domain-act+concept conduit à 131 éléments. ## projection sémantique pour l'étiquetage de séquence l'approche la plus répandue ces dernières années pour effectuer la tâche de nlu s'appuie sur le paradigme de l'étiquetage de séquence et consiste à projeter les annotations sémantiques dans le formalisme bio. les approches jointes visant à prédire simultanément l'intention et les concepts sont abordées, depuis l'avènement des modèles transformers de type bert, en associant l'intention au token [cls] de classification globale et en détectant les concepts sur chaque token concerné avec une étiquette b ou i le cas échéant. notre objectif principal dans cette section est de projeter l'annotation d'origine du jeu de données multiwoz2.3 vers une annotation à plat pour l'étiquetage de séquence. la difficulté ici est de gérer les cas où un énoncé peut avoir plusieurs intentions, où certains concepts ont des valeurs sans pour autant être associés à un empan qui se transposerait en b ou i, où un même token peut faire partie d'une valeur pour différents actes de dialogues. la tâche d'étiquetage de séquence sera donc multi-label et la projection peut être effectuée de plusieurs façons. dans le cadre de la plateforme convlab (lee et al., 2019), une projection a été proposée et évaluée avec le modèle milu (multi-intent language understanding), une extension du modèle multi-tâche onenet (kim et al., 2017) pour traiter les actes de dialogue multi-intentions. convlab-2 (zhu et al., 2020) a proposé un autre modèle multi-tâche, bertnlu qui ajoute deux couches mlp (multilayer perceptron) au-dessus de bert pour prédire respectivement les labels attribués au token [cls] et les labels bio attribués aux tokens. néanmoins, les deux articles ne fournissent pas les détails sur la projection des annotations en actes de dialogue pour constituer ces labels. une étude du code nous a permis d'en faire une description plus précise. nous proposons une projection similaire avec cependant quelques différences qui sont illustrées dans le tableau 2. nous proposons de prédire systématiquement au niveau du token [cls] l'ensemble des intentions de l'énoncé. les concepts qui ont un empan associé sont identifiés au niveau des tokens alors que les autres, qui constituent un ensemble fermé, sont entièrement prédits au niveau du @xcite . ainsi le premier exemple du tableau 1 est projeté dans le tableau 2 avec deux labels sur le token [cls], l'un qui porte uniquement l'intention (hotel-inform) et l'autre qui est une concaténation de l'intention avec le concept et la valeur (hotel-inform+parking * yes). le concept associé au premier est directement attribué comme label au token cheap (b-hotel-inform+price). la projection de convlab diffère de la nôtre à deux niveaux : (i) ils n'attribuent au token [cls] que les intentions associées à des concepts sans empan, (ii) si plusieurs concepts sont annotés sur les mêmes token, comme pour parkside police station, ils n'en projettent qu'un seul. ainsi la projection convlab n'est multi-label qu'au niveau de la classification globale mais pas au niveau des valeurs en bio ou l'étiquette choisie est la première du fichier d'annotation.