论文阅读笔记:Deep Conversational Recommender System: A New Frontier for Goal-Oriented Dialogue Systems

论文:Deep Conversational Recommender System: A New Frontier for Goal-Oriented Dialogue System / 深度对话推荐系统:任务型对话系统的新前沿
作者:Dai Hoang Tran,Quan Z. Sheng,Wei Emma Zhang,Salma Abdalla Hamad,Munazza Zaib,Nguyen H. Tran,Lina Yao,Nguyen Lu Dang Khoa
发表刊物:arXiv
发表年度:2020
下载地址https://arxiv.org/pdf/2004.13245.pdf

Abstract

  近年来,基于自然语言处理技术的推荐系统取得了广泛关注,其中一个应用就是对话推荐系统CRS。与传统的基于内容的或基于协同过滤的推荐方法不同,CRS通过交互式对话学习和建模用户的偏好。在本研究中,作者总结了最近CRS的发展——将深度学习方法应用到CRS中。作者首先分析了深度对话推荐系统开发的研究问题和当前的主要挑战,然后介绍了该领域的最新研究现状,包括最常见的用于DCRS的深度学习模型,最后,讨论了这一领域未来的发展方向。

1 Introduction

  许多在线电子商务服务到需要能够为用户提供好的建议的对话系统,这就是CRS诞生的背景。CRS可以看作是对话系统的一种自然扩展。

2 Deep Conversational Recommender Systems

2.1 Backgrounds

  人类最自然的交互行为是通过对话与他人进行交流,我们可以通过简单的对话表达自己的偏好并从他人那里获得推荐。从在线商务的视角来看,由于通过对话进行直接交流的自然和个性化的特定,大量的现代服务提供呼叫和聊天系统来处理客户支持。但是,人力资源是昂贵且有限的,因此,需要开发智能代理与用户进行沟通,并提供令人满意的推荐。从用户的视角来看,能够自由地表达自己的偏好并从代理中检索定制推荐的推荐会让用户对自己所做的选择有强烈的满足感和信心。这一类能为用户提供定制化的推荐并能与用户进行智能对话的对话系统,称为CRS。图1为一个电子商务领域的对话推荐系统示例。

图1 电商领域的对话推荐系统示例

   典型的对话推荐系统一般包括三个模块:用户意图理解模块UIU、推荐模块REC和选择模块SWMUIU模块用于从用户输入和系统响应中挖掘用户偏好,确定当前的对话状态,这里的用户输入可能是多模态的,如文本、图片等。由 SWM模块根据当前的对话状态决定是继续问用户问题以获得明确的用户偏好还是根据当前获得的用户偏好进行推荐,在一些场景中,SWM要同时根据UIU模块和 REC模块的信号进行决策。此外,有研究通过引入改进模块IM处理基于用户反馈的推荐。作者将这几个模块中至少有一个模块应用深度学习方法的对话推荐系统称为深度对话推荐系统DCRS。图2为DCRS结构示意图。
图2 DCRS结构示意图

2.2 Definitions and Formalization

  DCRS主要是一个目标导向的对话系统,同时结合了闲聊系统和问答系统功能。用户和系统之家的自然交互模式为DCRS的设计造成了极大挑战。DCRS通过对用户查询进行分析获取用户对于产品某些方面属性的要求,然后代理决定是继续问新问题以确定用户偏好还是直接推荐产品。多轮DCRS被定义为代理可以通过之前轮次学习到的用户偏好改进当前轮次的推荐结果的DCRS。
  在每一轮对话中将对话句子集合输入UIU模块获得对话状态嵌入向量,然后SWM模块根据对话状态向量决定是继续问更多的问题还是进行推荐。如果是继续问问题,则由UIU模块生成问用户关于产品属性相关问题的代理响应,如果是进行推荐,则REC模块根据对话状态向量查询产品数据库找出合适的产品并将其返回给UIU模块,UIU模块生成带有推荐结果的回复,这也标志着一轮对话的结束。在某些特定的场景中,为了提供高精度的响应,在每一轮,UIU模块和REC模块都会根据对话句子集合生成相应的向量,然后由SWM模块将这两个向量进行融合以绝对对话行为。

3 DCRS Research Problems and Challenges

  开发DCRS是一项困难的任务,因为它将两个不同的任务融合到了一个系统中,即理解用户的意图和给出相关的推荐。系统要能够通过用户的自然语言和反馈信息理解用户的意图和偏好,还需要知道如何根据用户输入查询数据库,以找到相关的个性化产品。图3是一些有代表性的DCRS系统以及其特点。

图3 一些有代表性的DCRS系统及其特点

3.1 Understanding User’s Intention

  在DCRS的对话会话中,用户通过自然语言表达自己的意图,自然语言的内容可以是发起对话的问候、解释自己对产品的偏好或向代理提供的反馈。然而,文本理解是深度学习领域中一项正在进行的复杂研究,了解用户的意图是开发过程中的关键挑战。目前关于用户意图理解的研究分为两类,第一类是从用户查询中提取用户对于产品的属性的要求,第二类是使用基于RNN的模型将对话句子编码为一个对话状态向量

3.2 Providing Personalized Recommendations

  DCRS并不总是能够提供个性化的推荐。DCRS的首要任务是提供与用户偏好相匹配的推荐,然而,某些DCRS系统更像是搜索过滤引擎,它们只考虑当前对话会话中的用户偏好,两个有相同偏好的人可能会接收到相同的推荐。为了解决这一问题,DCRS应该能够基于用户的特征、用户的反馈以及用户过去的偏好生成个性化的推荐结果

3.3 Developing Suitable Switching Mechnism

  对于DCRS而言,知道什么时候问用户关于他们偏好的问题、什么时候产生推荐是很重要的,如果这个机制出现问题,就会导致长时间的对话或不恰当的推荐,从而导致用户的不满,因此需要开发一个精确的开关机制。目前基于开关机制的研究主要分为三类:基于规则的SWM、基于pointer softmax probability的SWM和基于reinforcement policy score的SWM基于规则的SWM没有特定的方法论,可以是一个简单的约束如每轮都提供一个推荐或一个设计好的方案如根据阈值选择top-k个推荐产品;基于pointer softmax probability的SWM采用GRU单元解码当前对话上下文的隐状态,根据一个softmax概率得分决定继续问问题还是推荐,使用这种方法生成的响应往往比较自然和流畅;基于reinforcement policy score的SWM在对话会话的每一轮根据来自UIU模块和REC模块的信号生成一个行为向量,然后将该行为向量输入到强化策略网络中,根据输出的softmax分值决定采取何种行动,策略网络根据训练集中的标签以最大化行为收益的思路进行训练。

3.4 Handing of Multimodal Inputs/Outputs

  当前的对话系统不仅运行用户输入文本,用户还可以输入图片和音频文件,因此DCRS不仅要能够处理多模态的输入,还要能够生成多模态的输出。UIU模块要能从一些文本和非文本输入中确定当前对话状态,面对不同类型的输入,往往需要特定的方法提取其中的语义信息,这可能需要我们训练一些子模型。目前关于这方面的研究较少。

3.5 Training Multi-Task Models

  DCRS包含处理不同任务的多个模块,尽管其整体目标是根据用户查询和代理的响应提供相关的推荐,它也包含一些子目标如代理句子生成和基于用户查询生成top-k推荐。因此在开发DCRS的时候,怎么融合多个任务的目标函数并以一种端到端的方式对其进行训练是一项具有挑战性的任务。当前研究主要是优化SWM模块,其他模块一般单独优化。

3.6 Training on Limited Fluent Dialogue Datasets

  深度学习模型训练往往需要大量的高质量数据,经过研究发现,DCRS缺乏对话数据集,对话数据集中应该要包含流畅的人-人对话。目前研究一般采用合成数据集,但这类数据集一般是有偏的,且回答不流畅。研究发现,基于流畅的对话数据集的研究往往能够在多轮设定下生成自然的响应,其中代理的响应可以包含0个或多个推荐的产品,用户可以以一种自然的方式进行对话;基于合成数据集进行的研究往往会生成机械但相关的问题,如果用户的回答与模板不匹配,代理可能会无法理解并再次提出相同问题。

4 DCRS Deep Learning Models

  作者对DCRS中每个模块常用的深度学习方法进行了概括。图4位DCRS每个模块常用的一些深度学习模型。

图4 DCRS每个模块常用的一些深度学习模型

4.1 UIU Deep Learning Models

  RNN-based Models:HERD、Memory Networks + Attention Mechanism、GRU等,基本思路是将用户当前对话会话中的查询编码为一个对话状态向量,然后将该向量交由DCRS中的其他模块处理。
  CNN-based Models:一般用于处理多模态输入中图片的特征。

4.2 REC Deep Learning Models

  REC模块常用的方法是矩阵分解方法,因为该方法能够处理所有的用户和产品属性信息。
  Autoencoder-based Models:用于解决推荐中的冷启动问题。
  GCN-based Models:GCN能够基于节点本身的属性和其邻接节点的属性生成更好的节点表示。

4.3 Switching Mechanism Deep Learning Models

  基于Deep Policy Network或Pointer Softmax Probability。

5 Open Research Directions

  深度学习推进了自然语言处理和推荐系统的蓬勃发展,从而使得DCRS得到了促进,但是DCRS领域有一些问题仍没有被解决。

5.1 Synthetic Fluent Dialogue Datasets

  考虑到创建真实的人-人对话数据集的高成本和复杂性,创建高质量的合成对话数据集更加可行。随着语言生成、文本阅读理解和问答等自然语言任务的推进,研究人员可以使用深度学习技术为DCRS生成更好的综合训练数据集。

5.2 Incorporating External Domain Knowledge

  由于DCRS缺乏好的训练数据,在DCRS领域引入外部知识能够帮助提升系统的性能,因为要研究如何更有效地将外部知识融入DCRS中。

5.3 Improvement from User’s Feedback

  当前关于DCRS中用户反馈的研究较少,未来研究可以开发在线方法,直接根据用户反馈改进DCRS,以获得更好的系统性能。

5.4 Unified Evaluation Metrics

  以前的研究在DCRS的评价指标方面存在差异,这是由于DCRS内在的多任务本质造成的。研究人员一般基于任务型对话系统的评估指标和推荐系统的评估指标对DCRS进行评价,作者希望看到更统一的DCRS评估指标。

6 Conclusion

  CRS是现代在线服务的一个实际应用领域,而DCRS将会是CRS的下一个发展方向。作者从不同角度详细了解了DCRS领域的现状,总结了其特点、问题和挑战,并提出了未来的研究方向。作者希望这篇综述能提供有用的信息,能够激发更多的研究人员为这个充满活力的领域做出贡献。

©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页