Améliorer un agent conversationnel : prendre en compte à la volée des retours utilisateurs (Improve a conversational agent : considering on the fly user feedback) (2021)

Abstract: Nous présentons une approche améliorant la pertinence des réponses d’un système conversationnel de question-réponse en profitant de l’expérience passée du système. Un agent conversationnel déployé au contact d’utilisateurs peut en effet profiter de retours afin d’améliorer la validité de ces futures réponses. Les systèmes de question-réponse fonctionnent généralement autour d’un modèle rapprochant sémantiquement une question à une ou plusieurs réponses potentielles. Ici, nous prenons en compte le cas où le modèle de correspondance rapproche une question à une liste de réponses associées à un score de pertinence. Une approche classique pour prendre en compte les retours d’utilisateurs, est de les utiliser pour augmenter le nombre de données de réentrainement du modèle de rapprochement sémantique. Nous proposons une approche différente, impactant le score des réponses potentielles, où nous prenons en compte « à la volée » les retours utilisateurs : entre le moment où l’utilisateur pose une nouvelle question et celui où le système lui répond.

## introduction les systèmes conversationnels de question-réponse permettent, au fil d'une conversation, suite à une question formulée sous la forme d'une requête en langage naturel, de retourner une réponse issue d'une base de connaissances @xcite . de telles réponses peuvent être générées à partir d'informations ou bien, comme dans le cas nous concernant, extraites d'un corpus de document @xcite . ces agents mêlent à la fois des techniques issues de la discipline du traitement automatique des langues (tal) et de celle de la recherche d'information (ri) @xcite . en étudiant le fonctionnement de ces systèmes d'un point de vue chronologique, la compréhension de la requête utilisateur @xcite est plus précisément une tâche de compréhension du langage naturel (sous-branche du tal), tandis que l'identification du document contenant la réponse et son extraction @xcite appartiennent plus au domaine de la ri. certains agents évoluent sur des domaines très ouverts et grand public @xcite tandis que d'autres se focalisent sur des domaines restreints et techniques @xcite . la démocratisation de ces systèmes au sein des entreprises, en tant qu'outil de support de la relation client ou bien à des fins internes de gestion de ressources informatives @xcite , rend l'adaptation de l'agent au domaine de l'entreprise souvent nécessaire. cette spécialisation, nécessaire pour élaborer des systèmes conversationnels @xcite portant sur des sujets précis et à haute technicité, nécessite des données d'entraînement @xcite . ces données d'entraînement sont souvent des données annotées manuellement par des experts (par exemple par l'annotation d'une réponse correcte pour une certaine réponse). or, le recours à des experts, particulièrement sur des domaines spécialisés et techniques, est onéreuse. un véritable enjeu existe donc pour limiter le recours à ces experts afin de réduire les ressources nécessaires à l'adaptation de ces systèmes. une façon de répondre à cet enjeu est de déployer un système conversationnel partiellement spécialisé, de le faire interagir avec des utilisateurs puis de prendre en compte leurs retours pour améliorer la performance de l'agent @xcite . les retours utilisateurs peuvent évaluer chaque tour de la conversation individuellement ou donner une appréciation globale de la conversation. nous utilisons le cas où l'utilisateur évalue des tours de conversation, plus précisément, évalue binairement (positivement ou négativement) la réponse du système à sa question. puisque ici le système conversationnel repose sur une interaction avec des agents humains @xcite pour son entraînement, il est important que les mécanismes d'apprentissage du système prennent en compte certaines particularités de ce cas d'utilisation réelle. tout d'abord, les requêtes d'utilisateurs humains, bien que véhiculant parfois le même questionnement, sont souvent formulées de manières différentes et peuvent contenir des fautes @xcite . ensuite, les retours des utilisateurs étant par définition subjectifs, des désaccords peuvent naître autour de la perception de la qualité d'une réponse apportée par le système. de plus, les utilisateurs peuvent volontairement ou involontairement donner des retours négatifs sur une réponse qu'un expert jugerait correcte. enfin, le niveau d'amélioration du système est dépendant du nombre, de la qualité et de la portée des retours utilisateurs. une approche classique pour améliorer un système conversationnel à partir de retours utilisateurs, est de se servir de ces retours comme données supplémentaires lors d'un réentrainement du modèle rapprochant une question à des réponses @xcite . cette approche nécessite tout d'abord que le module de rapprochement sémantique question-réponse soit réentrainable et qu'une boucle de réentrainement/redéploiement du module soit implémentée @xcite . nous présentons ici une approche différente permettant de s'affranchir de ces deux conditions. on suppose que le module de rapprochement sémantique retourne une liste de réponses ayant chacune un score de pertinence. tout d'abord, au moment où l'utilisateur pose sa question, nous récupérons grâce à un modèle d'équivalence entre questions le plus grand nombre de retours utilisateurs liés à des réponses apportées par le système pour des questions équivalentes @xcite . nous formons alors des quadrets comprenant chacun une question équivalente à la question source, une réponse apportée par le système et les retours utilisateurs binaires sur ce couple question-réponse. grâce à une fonction prenant en entrée : le score originel des réponses envisagées pour la question et les retours d'utilisateurs évaluant ces réponses par rapport à des variantes passées de sa question, l'algorithme que nous présentons calcule un nouveau score pour chacune des réponses potentielles. enfin, le système retourne à l'utilisateur la réponse ayant le meilleur score de pertinence, après ajustement du score de pertinence au moyen de la prise en compte de ses expériences passées. ## approche proposée dans cette section nous allons détailler l'approche que nous proposons dans cet article. nous commencerons par expliciter l'ensemble du processus d'un point de vue général. ensuite, nous aborderons en détail notre choix de modèle d'équivalence et son fonctionnement. enfin, nous discuterons de la fonction modifiant le score des réponses en fonction des retours utilisateurs. ## évaluation étant donné que l'approche proposée dans cet article s'inscrit dans une démarche scientifique et est aussi déployée dans des conditions d'utilisation réelles, nous avons dû évaluer certains aspects de la méthode. dans un premier temps, nous avons dû vérifier le fait que l'expérience de l'utilisateur n'était pas dégradée. ensuite, nous avons dû entraîner et sélectionner le classifieur de questions équivalentes le plus performant possible. enfin, nous avons évalué les gains de cette approche.