Lifelong learning et systèmes de dialogue : définition et perspectives (Lifelong learning and dialogue system : definition and discussion ) (2019)

Abstract: Le but de cet article est de définir comment le Lifelong Learning (LL) pourrait être appliqué aux systèmes de dialogue orientés tâche. Un système de dialogue devrait être en mesure d’apprendre de nouvelles connaissances, après avoir été déployé, et ceci de manière continue grâce à ses interactions avec l’utilisateur. Nous identifions ainsi deux aspects s’appliquant à un tel système : l’amélioration de ses capacités conversationnelles, et l’enrichissement de sa base de connaissances. Nous appliquons ces idées à un chatbot développé dans le cadre du projet LIHLITH. Nous montrons ainsi qu’un tel système doit être capable (1) de détecter la présence d’une situation inconnue (2) de décider quand et comment interagir avec l’utilisateur afin d’extraire de nouvelles connaissances et (3) de s’adapter à ces nouvelles connaissances, tout en considérant la fiabilité de celles-ci.

## introduction un système de dialogue permet à un utilisateur d'interagir en langage naturel. deux familles de systèmes de dialogue existent : les systèmes conversationnels et les systèmes orientés tâche. un système conversationnel a pour but de générer la réaction la plus appropriée étant donné un énoncé utilisateur et le contexte courant, sans restriction concernant le domaine. quant à eux, les systèmes orientés tâche ont pour but d'aider l'utilisateur à réaliser des tâches définies, ou bien de l'aider à accéder à des informations. un système de dialogue consiste généralement en trois modules : la compréhension du langage naturel (en anglais, natural language understanding ou nlu), la gestion du dialogue, et la génération de langage naturel (en anglais, natural language generation ou nlg). dans cet article, nous nous focaliserons sur les systèmes orientés tâche, et plus précisément sur les systèmes modulaires et non sur les end-to-end. récemment certains chercheurs se sont intéressés à la création de systèmes de dialogue réalisant de l'apprentissage continu (lifelong learning ou ll). le ll est un sujet qui a mené à de nombreux travaux dans des domaines variés, tels que l'apprentissage automatique (machine learning), l'apprentissage profond (deep learning) 1 , l'intelligence artificielle et la robotique @xcite @xcite . le ll est communément considéré comme la capacité à apprendre de manière continue de nouvelles connaissances, tout en conservant les données acquises lors d'expériences passées @xcite . réaliser du ll dans chacun des domaines diffère selon la nature de la connaissance à apprendre, et de la façon dont cet apprentissage peut être réalisé. dans le cadre des systèmes de dialogue, l'application du ll pourrait mener à des systèmes capable d'apprendre de façon continue grâce à leurs interactions avec l'utilisateur, à l'image des humains. par exemple, un humain peut apprendre de nouvelles connaissances en posant des questions à ses interlocuteurs lorsqu'il fait face à une situation inconnue, ou simplement en déduisant de nouvelles connaissances à partir de l'ensemble des échanges qu'il a pu avoir au cours de sa vie. un humain est aussi capable d'utiliser directement, ou dans de futures conversations, les connaissances qu'il a acquises. ces connaissances peuvent correspondre, par exemple, à du vocabulaire, à des informations, ou même à un comportement approprié à avoir dans des conditions spécifiques. un système de dialogue réalisant du ll devrait donc, à l'image d'un humain, être en mesure d'améliorer ses capacités conversationnelles et, dans le cas de systèmes orientés tâches, d'apprendre de nouvelles connaissances spécifiques à son domaine d'application. nous cherchons donc à définir jusqu'où un système de dialogue est en mesure d'imiter l'homme et sa capacité à apprendre de manière continue. pour cela, nous cherchons à déterminer de façon précise ce qu'un système de dialogue peut apprendre, les limites de son apprentissage, ainsi que les méthodes qui devront être développées pour atteindre cet objectif. dans cet article nous proposons une définition du ll adapté aux systèmes de dialogue orientés tâche et montrons comment celle-ci peut s'appliquer dans un cas pratique. dans la suite de ce document, nous commençons par présenter en section 2 des travaux qui ont été menés sur le ll, sur l'apprentissage par renforcement et sur les systèmes de dialogue apprenant. dans la section 3, nous cherchons à définir ce que peut être un système de dialogue réalisant du ll ainsi que les méthodes et techniques qui pourront ou devront être utilisées. enfin, en section 4, nous appliquons cette définition ainsi que les méthodes présentées précédemment à un chatbot dédié à la cuisine. il ne s'agit ici que de propositions et de discussions et aucun travail expérimental n'est présenté. ## état de l'art le lifelong learning (ll) est d'intérêt croissant depuis plusieurs années, ce qui a mené à de nombreux travaux et écrits @xcite @xcite . dans leur livre @xcite , chen et liu définissent trois caractéristiques représentatives d'un système réalisant du ll : (1) l'apprentissage continu, (2) l'accumulation et la maintenance des connaissances dans une base de connaissances (en anglais, knowledge base ou kb) et (3) la capacité à utiliser les connaissances acquises pour de futurs apprentissages. de plus, ils considèrent qu'un système réalisant du ll doit être capable de détecter lorsqu'une nouvelle situation se présente dans l'usage, et d'adapter son comportement à ces nouvelles situations, en apprenant à réaliser de nouvelles tâches de manière pro-active. les connaissances acquises et accumulées doivent de plus permettre au système d'apprendre de nouvelles tâches sans nécessiter de gros volumes de données supplémentaires et sans devoir déployer de moyens trop importants. cependant, le concept de nouvelle tâche reste flou et semble couvrir un large spectre de situations, pouvant aller d'une nouvelle instance (par exemple, un nouveau concept pour un modèle) à un domaine complètement différent @xcite . dans les mêmes temps, des avancés ont été faites dans le domaine de l'apprentissage par renforcement (en anglais, reinforcement learning ou rl). un système ayant recourt à des méthodes de rl apprend à partir d'expériences passées à estimer le processus de décision le plus approprié à la situation courante, en maximisant une fonction de récompense prédéfinie. le rl appliqué aux systèmes de dialogues pour l'apprentissage de politique de dialogue a été largement étudié @xcite , permettant la considération de scénarios online @xcite et le développement de techniques d'inverse reinforcement learning (irl) @xcite . le irl agit à l'inverse du rl en extrayant la fonction de récompense à partir de l'observation du comportement de l'agent considéré, c'est à dire de l'utilisateur dans le cas des systèmes de dialogue. plus récemment, li et ses collègues @xcite ont appliqué les méthodes de rl à leur système de dialogue, dont le but est de répondre à des questions dans le domaine du cinéma. le rl permet au système de décider quand poser des questions à l'utilisateur et quelles questions poser, dans le but de permettre au système d'améliorer ses performances. li et ses collègues ont identifié trois situations durant lesquelles leur système peut être amené à poser des questions : certains chercheurs ont aussi montré leur intérêt dans la construction de systèmes de dialogue capables d'apprendre, après avoir été déployés, et ceci de manière continue, grâce à ses interactions avec l'utilisateur. en particulier, mazumder et ses collègues @xcite ont développé des méthodes et des techniques, permettant à un chatbot d'apprendre de nouvelles connaissances au cours de son utilisation. pour cela, ils se sont focalisés sur la résolution du problème de complétion d'une base de connaissances, en domaine ouvert, grâce à l'apprentissage par l'interaction avec un utilisateur et grâce au processus d'inférence. ils ont ainsi mis en place un système stockage pour les connaissances acquises, ainsi qu'un mécanisme permettant d'acquérir des connaissances même si l'utilisateur n'est pas en mesure de fournir les informations requises par le système. dans le seconde édition de leur livre (chen et al., 2018), chen et liu ont dédié le 8ème chapitre à l'apprentissage continu de connaissances dans le cadre des chatbots. dans ce chapitre, ils s'intéressent principalement à l'article présenté précédemment @xcite et déclarent que le principe de ll est reflété par le fait que les faits acquis au cours des interactions sont stockés directement dans la base de connaissances, et utilisés pour réaliser de l'inférence pour de futures requêtes. il déclarent, de plus, que les connaissances accumulées, ainsi que la nouvelle base de connaissances, permettent de guider les interactions et l'apprentissage futurs. de leur côté, hancock et ses collègues @xcite se sont focalisés sur la réalisation d'un système purement conversationnel, capable d'extraire de nouveaux exemples à partir des conversations auxquelles il participe. ces nouveaux exemples lui permettent par la suite de ré-entraîner son modèle afin de s'améliorer au fur et à mesure de son utilisation. ce système se base en particulier sur les retours de l'utilisateur : si au cours de la conversation l'utilisateur semble satisfait de la réponse du chabot, celle-ci sera considérée comme un nouvel exemple ; s'il ne semble au contraire pas satisfait, le chabot demandera à l'utilisateur une réponse plus appropriée à la situation, et cette réponse sera considérée comme un nouvel exemple. l'estimation de la satisfaction de l'utilisateur via un classifieur permet au système de s'apercevoir lorsqu'une erreur a été commise. hancock et ses collègues ont d'ailleurs prouvé que cette approche surpassait celle basée sur l'estimation de l'incertitude du système sur la réponse à donner à l'utilisateur. cependant, les deux travaux précédents ne donnent que des exemples spécifiques de systèmes de dialogue réalisant du ll. nous donnons ainsi dans la section 3 une définition plus globale d'un tel système. nous nous focalisons à présent sur les systèmes de dialogue orientés tâche. ce type de système a pour but d'aider l'utilisateur à réaliser une tâche, ou bien de l'aider à accéder à des informations. pour cela, le système cherche d'abord à comprendre ce que l'utilisateur lui demande en faisant appel au module de compréhension (nlu) qui réalise alors sur l'énoncé utilisateur une opération de détection des concepts (en anglais, slot-filling) et une autre de détection de l'intention (en anglais, intent detection). ensuite, le gestionnaire de dialogue cherche à lier les concepts et l'intention détectés avec les données auxquelles il a accès. enfin, le système retourne le résultat en générant du langage naturel. à partir de la précédente définition et des distinctions réalisées dans @xcite , nous pouvons remarquer qu'un système de dialogue peut apprendre à différents niveaux : ainsi, nous considérons qu'un système de dialogue réalisant du ll doit être capable (1) de détecter une nouvelle situation (2) de décider quand et comment agir en réponse à une nouvelle situation afin d'en extraire de nouvelles connaissances (3) de s'adapter à ces nouvelles connaissances. ces trois points sont détaillés en section 3.2 et sont illustrés dans la section 4. ## conclusion et discussion dans cet article, nous avons défini ce que pourrait être un système de dialogue orienté-tâche réalisant du ll. celui-ci doit être en mesure d'apprendre de nouvelles connaissances, après avoir été déployé, et ceci de manière continue grâce à ses interactions avec l'utilisateur. ensuite, nous avons appliqué cette définition à un un chatbot dédié à la cuisine et montré que celui-ci peut apprendre de deux manières différentes : en améliorant sa compréhension des énoncés utilisateur, et en enrichissant sa base de connaissances. ces deux axes d'apprentissage pourront de plus être facilement adaptés à d'autres domaines d'applications. nous avons ainsi montré que réaliser du ll sur un système de dialogue orienté tâche implique que le système ait la capacité de : il faut aussi noter que nous n'avons considéré que des aspects relativement simples du ll appliqué aux systèmes de dialogue orientés tâche, et que nous avons laissé de côté des aspects comme l'amélioration de la qualité du dialogue. un tel aspect serait par exemple intéressant dans le cas de systèmes uniquement conversationnels.