对话式推荐综述阅读(Conversational Recommender System):(1)

前言

  • 本文简要记录阅读何向南老师关于CRS的综述文章:Advances and Challenges in Conversational Recommender Systems: A Survey
  • SIGIR2020-CRS-turorial

背景

推荐系统利用交互历史来建模用户的兴趣,已被广泛应用。但由于静态模型建模用户偏好没有明确的指令和用户的正向反馈,因此静态推荐模型(static)很难很好地回答两个重要问题:
(a)用户到底喜欢什么?

  1. 静态模型的学习过程通常是在历史数据上进行的,可能是稀疏且嘈杂的。
  2. 静态模型的基本假设是所有历史交互都代表用户偏好。 首先,用户可能不喜欢他们选择的项目,因为他们可能做出错误的决定。 其次,用户的偏好可能会随着时间而变化,这意味着用户对商品的态度可能会发生变化,并且从过去的数据中捕获漂移的偏好会变得更加困难。
  3. 对于冷用户,很难根据数据对他们的偏好进行建模。 简而言之,静态模型几乎无法捕获用户的精确偏好。
    (b)用户为什么喜欢某个物品?
  4. 许多因素会影响用户在现实生活中的决定。 例如,用户可能由于好奇心或其他人的影响而购买产品, 也可能是自由考虑的结果。
  5. 不同的用户购买相同的产品,但出于不同的动机。 因此,同等对待不同用户或同等对待同一个用户的不同交互不适用于推荐模型。 实际上,静态模型很难解释用户消费行为背后的各种原因。

作者认为关键的困难来自于内在的机制:交互建模的静态模式从根本上限制了表达用户意图的方式,从而导致用户与系统之间的信息不对称 (asymmetric information)。

对话式推荐系统(CRS)的近期兴起从根本上改变了这种情况。在CRS中,用户和系统可以通过自然语言交互实现动态交互,这提供了前所未有的机会来获得用户的准确偏好。

CRS定义

A recommendation system that can elicit the dynamic preferences of users and take actions based on their current needs through real-time multi-turn interactions using natural language.
可以利用自然语言进行实时多轮交互,从而激发用户的动态偏好并根据其当前需求采取行动。
CRS示例如下:

一种替代解决方案是利用商品的属性信息,这对于理解用户的意图是不言而喻的,并且可以迅速缩小候选商品的范围。 基于批判的推荐系统(critiquing-based)是一种解决方案,旨在引起用户对某些属性(而非物品)的反馈,是CRS的早期的一种形式。

批评就像推销员一样,通过主动询问商品属性来收集用户偏好。例如,当寻找手机时,用户可以遵循系统的提示并提供诸如“更便宜”或“更长的电池寿命”之类的反馈。根据这些反馈,系统将建议更合适的项目; 该过程重复几次,直到用户找到满意的物品或放弃为止。该机制使系统具有更好的推断用户偏好的能力,并有助于快速缩小(narrow down)推荐候选者的范围。

现有的交互式和批注方法尽管有效,但受其表示能力的限制,用户只能通过一些预定义的选项与系统进行交互。 对话模块在CRS中的集成可以进行更灵活的交互,例如以标签,模板话语等自然语言的形式。 毫无疑问,通过对话形式可以更自然地表达和理解用户的意图。

相关研究工作情况:近年来比较多,目前共有148篇相关论文

尽管已经对CRS进行了许多研究,但是还没有统一的任务表述。 之前2020年的一篇综述中(A Survey on Conversational Recommender Systems.)根据使用知识来源或交互方式进行分类,例如基于格式(forms)或自然语言的方法,或由系统或用户驱动的方法。
现在的一些研究关注CRS的对话能力,尝试基于端对端对话系统或深度语言模型来构建模型。 但是,这些模型旨在学习人类会话语料库中的模式,并且通常是不透明的且难以解释。端到端方法在推荐和响应方面人工评估效果不佳。 因此,一个明确的对话策略是必要的,并且需要大量的研究工作。

CRS框架

本文提出了一个统一的框架来定义CRS任务,由三个独立的部件构成。具体地说,由用户界面,对话策略模块和推荐引擎组成。

  • user Interface 用户界面充当用户与机器之间的翻译器; 通常,它从用户的原始话语中提取信息,并将信息转换为机器可理解的表示,并根据会话策略为用户生成有意义的响应。
  • Conversation Strategy 对话策略模块是核心,负责协调其他两个组件,决定了CRS的核心逻辑,例如引起用户兴趣,保持多轮对话和引导新主题。
  • Recommendation Engine 推荐引擎负责对实体之间的关系进行建模(例如,用户-物品交互或物品-物品链接),学习和记录用户对物品和物品属性的偏好,并检索所需的信息。

具体的研究问题包括4个方面:

  1. Question-based User Preference Elicitation. 问题导向的用户偏好启发

CRS提供了通过询问属性问题的方面来显式地引出用户偏好。具体存在有两个重要的问题:
(1)要问什么
(2)如何根据用户反应调整建议
前者着重于构建问题以引出尽可能多的信息
后者利用用户反馈的信息来提出更适当的推荐

  1. Multi-turn Conversational Recommendation Strategies 多轮对话策略

CRS需要与用户反复互动,并多次动态地适应用户的响应。 一个有效的策略涉及何时提出问题以及何时推荐
即让模型在(1)继续提出问题以进一步减少偏好不确定性和(2)根据当前对用户偏好的建模生成推荐之间进行选择。
通常应以最少的对话次数为目标,以成功推荐为目标,因为用户在转数过多后将失去耐心。

  1. Natural Language Understanding and Generation 自然语言理解与生成

像人类一样进行交流仍然是CRS中最艰巨的挑战之一。 为了理解用户的兴趣和意图,一些CRS方法将模型输入定义为捕获语义信息和用户偏好的预定义标签。 一些方法通过slot填充技术从用户的原始话语中提取语义信息。 为了产生人类可理解的响应,CRS使用许多策略,例如直接提供推荐列表,将推荐物品纳入基于规则的自然语言模板。 此外,一些研究人员提出了端到端框架,以使CRS能够从原始自然语言中准确理解用户的情感和意图,并生成可读,流畅,一致且有意义的自然语言响应。(readable, fluent, consistent, and meaningful )

  1. Trade-offs between Exploration and Exploitation (E&E) 探索和利用问题

Exploitation:根据当前信息,由训练的模型做出最佳的决策。
Exploration:探索未知的领域,比如在某个state执行之前在这个state没有执行的action。
所以做exploitation和exploration的目的就是获得一种长期收益最高的策略,这个过程可能对short-term reward有损失。如果exploitation太多,那么模型比较容易陷入局部最优,但是exploration太多,模型收敛速度太慢。这就是exploitation-exploration困境。

推荐系统的一个问题是,每个用户只能与整个数据集中的一些项目进行交互。用户可能会看不见用户可能感兴趣的大量物品。对于冷启动用户(刚加入系统并且交互次数为零或很少),问题特别严重。由于具有交互性,CRS可以积极探索看不见的项目,以更好地捕获用户的偏好。这样,用户可以受益于有机会表达自己的意图并获得个性化的推荐。
但是,探索的过程是有代价的。由于用户只有有限的时间和精力与系统进行交互,因此失败的探索将浪费时间,并且失去进行准确推荐的机会。因此,寻求E&E权衡是CRS中的关键问题。

  1. Evaluation and User Simulation

与针对离线数据进行优化的静态推荐器模型不同,CRS强调动态交互过程中的用户体验。因此,我们不仅应考虑对推荐和响应生成进行轮次级别的评估,还应注意对话级别评估。
评估CRS还需要大量的在线用户交互,而这种交互获得昂贵的资源。 因此,必须使用模拟用户。 开发可靠的用户模拟器具有挑战性,并且仍然是一个悬而未决的问题

小结

本篇记录了CRS的关键定义和主要任务,下一篇将介绍CRS的任务细节。

END

本人所有文章均为原创,欢迎转载,请注明文章出处 。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问本人主页查看最新信息https://www.jianshu.com/u/40d14973d97c

你可能感兴趣的:(对话式推荐综述阅读(Conversational Recommender System):(1))