对话系统综述 *Advances and Challenges in Conversational Recommender Systems: A Survey*
对话系统综述 Advances and Challenges in Conversational Recommender Systems: A Survey
对话推荐相比于传统推荐的两大好处:
- 用户的真实偏好是什么?
- 为什么用户喜欢这个item?
从五个方面总结对话推荐系统发展面临的主要挑战:
- 基于问题的用户偏好诱导
- 多回合会话推荐策略
- 对话理解与生成
- Exploitation-exploration权衡(爱好和新颖)
- 评估和用户仿真
问题:
1. 基于全items的交互效率太低,一种方法是根据属性(或者其他)筛选候选items(基于评论的推荐系统)
与任务型对话系统的不同:
- 对话系统的输入一般是文本,而对话推荐的输入还可以是表单字段,按钮,甚至是手势
本文将对话推荐系统分为用户界面、会话策略模块和推荐引擎三个部分
- 基于问题的用户偏好诱导
- 问什么?
- 如何根据用户的回复(反应)来调整推荐内容
- 多轮对话推荐策略
- 问问题还是推荐items
- 一般以最少回合数为指标
- 一个主动的对话回复会更有意思
- 自然语言理解与生成
- 如何理解用户utterance:
- pre-defined tags(???)
- 槽值对填充
- 如何回复用户:
- 直接回复推荐列表
- items+模板
- 端到端的自然语言生成
- 如何理解用户utterance:
- Exploitation-exploration权衡(爱好和新颖)(对话推荐系统独有)
面对庞大的items集合,用户交互的items是少之又少的,如何发掘用户的新偏好,和减少用户精力,this is a question - 评估和用户仿真
- 不仅要考虑turn-level(推荐和回复的evaluation),也要考虑conversation-level
- 评价对话推荐的好坏非常昂贵,目前实用的解决方案有:
- 利用非策略评估,即使用行为策略下的日志数据来评估目标策略(???)
- 直接引入用户模拟器代替真实用户进行评估
用户都很清晰的知道自己想要哪些属性的商品,但现实往往不是这样的
比如用户说我想要一个便宜的item,便宜是相对的,如何定义便宜?
2 基于问题的用户偏好诱导
2.1 问items
2.1.1 基于选择的方法:
- 在两个选项中选择一个item
- 从一个item集合中选择一个item
- 从两个列表中选择一个item集合
2.1.2 贝叶斯偏好引出(???)
2.1.3 交互推荐(基于强化学习)
- multi-armed bandi(MAB算法)
- 视为元学习问题
- Meta learning methods and MAB-based methods have the capability of balancing exploration and exploitation
直接问item有一个问题,item集合太大了,问attribute更合理
2.2 问Attributes
2.2.1 历史互动拟合 模式
GRU(LSTM)embedding --> 推荐/问attributes触发器
2.2.2 减少不确定性
- 基于评价:可解释神经协同过滤模型
- 基于强化学习的方法(这里没怎么提)
- 用图来限制候选集合
3 多轮对话推荐策略
3.1 确定何时询问,何时推荐
- 基于规则的:k轮一问;随机;基于模型策略
- 强化学习
- Estimation-Action Reflection (EAR)框架(模型只在以下时候做推荐)
- item候选集足够小;
- 询问问题的信息增益少;
- 推荐模块在前k个item的置信度足够高。
- RL模型4个考虑的因素:
- 每个attribute的信息熵,每轮选信息熵最大的
- 每个attribute的用户偏好
- 用户历史反馈。如果系统询问了用户批准的许多属性,那么现在可能是推荐的好时机
- 剩下的候选数量
3.2 从一个更远的视角来看对话策略
- 缺乏智能,虽然对话推荐可以通过询问来直接获取用户偏好,但它们都是基于一个这样的前提:用户知道他们喜欢什么类型的
- 基于上述问题,要会引导*(有相关论文)
3.2.1 多话题对话学习
- 从非推荐对话引导到推荐对话(先开始闲聊,再在合适的时候推荐)
3.2.2 特殊功能:建议,谈判,和说服
4 对话理解与生成
自然语言处理(NLP)技术如何帮助CRSs理解用户意图和情感,并产生有意义的响应
4.1 对话理解
4.1.1 槽填充
4.1.2 意图和情感学习(端到端)
目前还不清楚深层语言模型如何帮助CRSs理解用户需求
4.2 对话生成
CRS基于自然语言的响应至少应该满足两个级别的标准。较低层次的标准要求生成的语言要恰当、正确;更高级别的标准要求响应包含关于推荐结果的有意义和有用的信息
4.2.1 生成合适的对话
- 基于摘要(检索)的方法:其基本思想是从大量响应候选集合中检索适当的响应
- 基于生成的方法:与基于检索的方法不同,基于生成的方法从模板响应数据库中选择现有的响应,直接从模型中生成完整的句子,但存在一些挑战
- 首先,生成的答案不能保证是形式良好的自然语言表达
- 其次,即使生成的反应可能在语法上是正确的,我们仍然可以区分机器生成的话语和人类生成的话语,因为机器的反应缺乏基本常识,个性,情感,以及感知用户画像的能力
- 更糟糕的是,生成模型倾向于生成一个安全的答案,比如“OK”、“我不明白您在说什么”,这几乎适用于所有会话上下文,但只会损害用户体验
4.2.3 结合推荐的信息
- 使用端到端框架作为用户界面的crs有一个主要的限制:只有在训练语料库中提到的项目才有机会被推荐,因为端到端模型并没有对从未提到的项目进行建模。因此,该方法的性能在很大程度上受到了训练数据中人类推荐的质量的限制。
- 此外,一些研究者还试图提高CRSs中生成反应的多样性或可解释性
5 Exploration-Exploitation权衡(TODO)
6 评价与用户仿真
6.1 数据集与工具集
如前所述,很多关于CRS的研究都集中在交互策略和推荐策略上,而不是语言的理解和生成。因此,所有这些研究需要的是多回合会话中被标记的实体(包括用户、项目、属性等)。这些研究主要是从传统推荐数据集,如MovieLens、LastFM、Yelp6和Amazon dataset的历史记录中模拟和构建用户交互。
尽管crs中似乎有很多数据集,但这些数据集并不足以开发出能够在工业应用中工作的crs。原因有二:首先,这些数据集的规模不足以涵盖现实世界的实体和概念;其次,会话要么是由非会话数据构造的,要么是在一定的严格约束下生成的,因此很难概括为复杂多样的现实会话。因此,需要更多的工作来开发大规模的、可推广的、自然的crs数据集。
工具包
CRSLab:用于构建和评价CRSs。他们将现有crs中的任务统一为三个子任务:推荐、会话和策略,分别对应于图3中的三个组件:推荐引擎、用户界面和会话策略模块。
6.2 基于轮的评价
6.2.1 评价生成的回复(目前的评价指标存在争议)
然而,基于端到端对话框架或深度语言模型的crs在实践中可能存在可用性方面的局限性。最近,Jannach和Manzoor对两种最先进的端到端框架进行了评估,表明两种模型都面临三个关键问题:
- 对于每个系统,大约三分之一的系统话语在给定的上下文中是没有意义的,可能会导致人类评价中的对话中断。
- 不到三分之二的建议被认为在人类评估中是有意义的。
- 两个系统都没有生成话语,因为几乎所有的系统响应都已经出现在训练数据中。Jannach和Manzoor的分析表明,评估CRS模型需要人的评估和专家的分析,因为没有完美的度量标准来评估一个CRS的所有方面。CRS模型及其评估还有很长的路要走。
6.2.2 推荐评价
- 基于评价的指标:比如1~5分打分,计算预测与用户真实评分的距离(MSE)
- 基于排名的指标:基于排名的指标要求预测项目的相对顺序应该与测试集中项目的顺序一致(precision, recall, F1等)
这些评估方法的最大问题是,现实世界的用户交互非常稀疏,大量item永远没有机会被用户消费。然而,这并不意味着用户不喜欢其中任何一个。
6.3 基于对话级别的评价
6.3.1 在线用户测试(真实用户)
- 平均轮次作为指标
- 推荐成功率
在线用户评价虽然有效,但存在关键问题:
- 人与CRSs之间的在线交互很慢,通常需要数周的时间才能收集到足够的数据,使评价具有统计学意义
- 收集用户反馈在工程和逻辑方面是昂贵的,并且可能会损害用户体验,因为推荐可能不满足他们。
6.3.2 Off-Policy 评测
又称反事实推理或反事实评估,是为回答反事实问题而设计的
6.3.3 用户模拟器
模拟用户的策略通常有四种类型
- 使用用户的直接交互历史记录
优点:简单;缺点:大量用户没有看到的项目被视为不喜欢的项目 - 估计用户对所有项目的偏好(为了解决上述缺点)
- 从用户评论中提取:
商品的评论数据通常明确提到属性,这可以反映用户对该商品的个性化意见(但是要区分正面评价和负面评价) - 模仿人类会话语料库
尽管最近人们对开发可靠的用户模拟器很感兴趣,但我们认为这一领域的研究还处于起步阶段,需要大量的改进
7 未来发展方向和机遇
7.1 联合优化三个任务(推荐,自然语言理解和生成,对话策略)
7.2 偏差和解决偏差
- 流行偏差:推荐给用户流行元素,用户是否真正喜欢(可以解决,通过对话询问的方式)
- 暴露偏差:很多item用户没接触过
- 选择偏差(比如正样本过多,负样本不确定):用户往往更加倾向于选择自己已知的喜欢的item(2和3涉及的就是exploration-exploitation平衡问题)
7.3 构建复杂的多轮对话策略
- 基于规则的太机械,基于端到端对话系统或深度神经语言模型的研究更糟糕,它们甚至没有明确的策略来控制多回合会话。此外,在处理用户的负面反馈方面,有些策略可能存在问题。
- 简单地将被拒绝的项目作为负样本会影响模型对被查询属性的判断。例如,用户拒绝娱乐视频可能是因为他们之前看过,但这并不意味着他们不喜欢娱乐视频。如何识别可靠的负样本这是一个重点
- 很多工作使用RL来构建对话策略。然而,在RL的状态、行为和奖励设计方面还有很大的改进空间
(逆RL、Meta-RL)
7.4 知识增强
知识图谱、多模态、各种属性(如用户的情感等)
7.5 更好的评估和用户模拟
CRSs在不同的数据集上工作,它们有不同的假设和设置。因此,开发综合评价指标和程序来评价crs的性能仍然是一个有待解决的问题
8 总结
推荐系统在信息检索中发挥着越来越重要的作用。尽管已经研究了几十年,传统的推荐系统只能通过静态方式估计用户偏好,比如通过历史用户行为和档案。它没有提供与用户沟通他们喜好的机会。这不可避免地会遭遇一个基本的信息不对称问题:系统永远不会准确地知道用户喜欢什么(特别是当他/她的偏好经常变化时)以及用户为什么喜欢某件物品。会话推荐系统(CRSs)的设想为这些问题带来了一个有希望的解决方案。借助人机交互能力和基于自然语言的用户界面,crs可以利用自然语言动态地获得明确的用户反馈,同时提高用户参与度,改善用户体验。这一大胆的设想为推荐系统的未来提供了巨大的潜力,从而积极地促进了下一代信息检索技术的发展。
本文初步给出了CRS的定义,并介绍了一个由用户界面、会话策略模块和推荐引擎三部分组成的CRS总体框架。在此基础上,提炼出五个现有的研究方向:(1)基于问题的用户偏好诱导;(2)多回合会话推荐策略;(3)对话理解与生成;(4)冷用户的开发-探索权衡;(5)评价和用户模拟。对于每个方向,在一个章节中回顾了现有的工作和它们的局限性。尽管上述五个方向都取得了一定的进展,但CRSs领域仍存在一些值得关注的问题,如(1)三分量联合优化;(2) CRSs的偏倚和去偏方法;(3)多回合会话推荐策略;(4)多模式知识丰富;(5)评价和用户模拟
对话系统综述 *Advances and Challenges in Conversational Recommender Systems: A Survey*相关推荐
- [论文阅读] 对话式推荐系统的进展与挑战:综述(Advances and Challenges in Conversational Recommender Systems: ASurvey)-06
0. 序言 本文介绍CRS的最后一个主要挑战:Evaluation and User Simulation 评估和用户模拟 1. Evaluation 常见数据集如下,大部分研究采用基于对通用数据 ...
- 论文阅读笔记:Recent Advances and Challenges in Task-oriented Dialog Systems
提示:阅读论文时进行相关思想.结构.优缺点,内容进行提炼和记录,论文和相关引用会标明出处. 文章目录 前言 Abstract Introduction Modules and Approaches E ...
- 【文章翻译+笔记】Towards the Next Generation of Recommender Systems:A Survey of the State-of-the-Art and Pos
Towards the Next Generation of Recommender Systems:A Survey of the State-of-the-Art and Possible Ext ...
- Graph Neural Networks in Recommender Systems: A Survey
Graph Neural Networks in Recommender Systems: A Survey 在推荐系统中主要的挑战是从用户的交互和可以得到的辅助信息中学到有效的用户/物品的表示:很多 ...
- 多任务学习综述Multi-Task Deep Recommender Systems
Multi-Task Deep Recommender Systems: A Survey 最近看到一篇多任务学习的综述,觉得总结的不错,记录一下. 1. 简介 推荐系统天然具有多任务学习的需求,以视 ...
- 【推荐系统->论文阅读】Towards the Next Generation of Recommender Systems(推荐系统综述,下一代推荐系统: 最新技术和可能扩展)
Towards the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Ex ...
- #Reading Paper# 【序列推荐综述】IJCAI‘19:Sequential Recommender Systems: Challenges, Progress and Prospects
#论文题目:[序列推荐]Sequential Recommender Systems: Challenges, Progress and Prospects(序列推荐系统:挑战.进程和前景) #论文地 ...
- 【综述阅读】Graph Neural Networks for Recommender Systems: Challenges, Methods, and Directions
学习总结 文章目录 学习总结 一.Inroduction 二.Background 2.1 Recommender Systems 2.2 Graph Neural Networks 三.Challe ...
- Improving Conversational Recommender System by Pretraining Billion-scale Knowledge Graph论文笔记
原文章:Improving Conversational Recommender System by Pretraining Billion-scale Knowledge Graph (ICDE ' ...
- 序列化推荐系统总结:Sequential Recommender Systems: Challenges, Progress and Prospect
作者:一元, 公众号:炼丹笔记, 特约审稿:杰少 背景 序列推荐系统(SRS)不同于传统推荐系统(RSs)包括协同过滤和基于内容的过滤,SRSs试图理解和建模用户的连续行为.用户与物品之间的交互作用以 ...
最新文章
- 公共关系计算机操作题,2012年计算机二级Access考前模拟题及答案(8)
- iOS应用软件沙盒sandbox相关知识(整理)
- poj 2777 Count Color 基础线段树,带给的初学者噩梦!!!
- Atitit 企业常见100个职能 组织职能 社会职能 政府职能 家庭职能 团队职能
- pytorch——MINST数据集
- 打造最强浏览器之浏览器选择刨析及搜索引擎利用
- 房价必然上涨的N个原因
- 石油大学计算机课程,2018年石油高校计算机类课程MOOC共建研讨会在我校召开
- 专访AWR市场副总裁Sherry Hess:全面发力 深耕中国市场
- php phpunit_framework_testcase,开始使用PHPUnit
- 让机房温度可视化:物联网下的数据中心环境运维新方式
- APNS部署教程2(证书配置)
- LoadRunner9.1下载与破解
- g++编译命令使用以及参数详解
- 红米 刷机 android7.1,红米Note5A高配稳定版固件刷机包:V11.0.1.0 安卓7.1
- 从程序员辞职到知乎上市,你还以为周源的成功是偶然吗?
- 电脑已连接无Internet访问解决记录
- TRIZ创新方法——功能搜索导向
- [译] 设计师的决策树:当遇到猪队友时,你需要一个系统来控制每个人
- Path Aggregation Network for Instance Segmentation
热门文章
- 【情感分析:挖掘观点、情感和情绪】读书笔记-02
- 小红帽 oracle,Linux+5+红帽子企业版安装Oracle9
- 360漏洞修复卡在正在安装的解决方法
- 三星s8html查看器,【三星GALAXYS8评测】屏幕:全视屏显示素质经得起数据检验_三星 GALAXY S8_手机评测-中关村在线...
- 幸福家庭杂志幸福家庭杂志社幸福家庭教育部2022年第1期目录
- (一)八卦起点作家转会纵横-------- 比较全(包括JJ,起点ceo.邪月MM的发言的发言)...
- 怎样看股市K线图指标之市场盈亏指标CYS
- CTF-网络信息安全攻防学习平台(脚本关)
- 微信公众号模板如何使用?公众号模板教程!
- (附源码)基于spring boot 青少年公共卫生教育平台的设计与实现 毕业设计 643214