没有合适的资源?快使用搜索试试~ 我知道了~
对话推荐算法研究综述(发表自软件学报)
需积分: 17 3 下载量 187 浏览量
2021-11-26
20:40:10
上传
评论
收藏 1012KB PDF 举报
温馨提示
试读
30页
推荐系统是一种通过理解用户的兴趣和偏好帮助用户过滤大量无效信息并获取感兴趣的信息或者物品的信息过滤系统.目前主流的推荐系统主要基于离线的、历史的用户数据,不断训练和优化线下模型,继而为在线的用户推荐物品,这类训练方式主要存在三个问题:基于稀疏且具有噪声的历史数据估计用户偏好的不可靠估计、对影响用户行为的在线上下文环境因素的忽略和默认用户清楚自身偏好的不可靠假设.
资源推荐
资源详情
资源评论
软件学报 ISSN 1000-9825, CODEN RUXUEW E-mail: jos@iscas.ac.cn
Journal of Software, [doi: 10.13328/j.cnki.jos.006521] http://www.jos.org.cn
©中国科学院软件研究所版权所有. Tel: +86-10-62562563
对话推荐算法研究综述
赵梦媛
1,2,3
,
黄晓雯
1,2,3
,
桑基韬
1,2,3
,
于
剑
1,2,3
1
(北京交通大学 计算机与信息技术学院,北京 100044)
2
(北京交通大学 人工智能研究院,北京 100044)
3
(交通数据分析与挖掘北京市重点实验室(北京交通大学),北京 100044)
通讯作者: 黄晓雯, E-mail: xwhuang@bjtu.edu.cn
摘 要: 推荐系统是一种通过理解用户的兴趣和偏好帮助用户过滤大量无效信息并获取感兴趣的信息或者物品
的信息过滤系统.目前主流的推荐系统主要基于离线的、历史的用户数据,不断训练和优化线下模型,继而为在线的
用户推荐物品,这类训练方式主要存在三个问题:基于稀疏且具有噪声的历史数据估计用户偏好的不可靠估计、对
影响用户行为的在线上下文环境因素的忽略和默认用户清楚自身偏好的不可靠假设.由于对话系统关注于用户的
实时反馈数据,获取用户当前交互的意图,因此“对话推荐”通过结合对话形式与推荐任务成为解决传统推荐问题
的有效手段.对话推荐将对话系统实时交互的数据获取方式应用到推荐系统中,采用了与传统推荐系统不同的推荐
思路,通过利用在线交互信息,引导和捕捉用户当前的偏好兴趣,并及时进行反馈和更新.在过去的几年里,越来越多
的研究者开始关注对话推荐系统,这一方面归功于自然语言处理领域中语音助手以及聊天机器人技术的广泛使用,
另一方面受益于强化学习、知识图谱等技术在推荐策略中的成熟应用.本文将对话推荐系统的整体框架进行梳理,
将对话推荐算法研究所使用的数据集进行分类,同时对评价对话推荐效果的相关指标进行讨论,重点关注于对话推
荐系统中的后台对话策略与推荐逻辑,对近年来的对话推荐算法进行综述,最后对对话推荐领域的未来发展方向进
行展望.
关键词: 对话推荐系统;用户建模;人机交互;推荐系统
中图法分类号: TP311
Survey of Conversational Recommendation Algorithms
ZHAO Meng-Yuan
1,2,3
, HUANG Xiao-Wen
1,2,3
, SANG Ji-Tao
1,2,3
, YU Jian
1,2,3
1
(School of Computer and Information Technology, Beijing Jiaotong University, Beijing 100044, China)
2
(Institute of Artificial Intelligence, Beijing Jiaotong University, Beijing 100044, China)
3
(Beijing Key Laboratory of Traffic Data Analysis and Mining (Beijing Jiaotong University), Beijing 100044, China)
Abstract: Recommender system is an information filtering system that helps users filter a large number of invalid information to obtain
information or items by estimating their interests and preferences. The mainstream traditional recommendation system mainly uses offline
and historical user data to continuously train and optimize offline models, and then recommend items for online users. There are three
main problems: the unreliable estimation of user preferences based on sparse and noisy historical data, the ignorance of online contextual
factors that affect user behavior, and the unreliable assumption that users are aware of their preferences by default. Since the dialogue
system focuses on the user's real-time feedback data and obtains the user's current interaction intentions, "conversational recommendation
" combines the interactive form of the dialogue system with the recommendation task, and becomes an effective means to solve the
traditional recommendation problem. Through online interactive methods, conversational recommendation can guide and capture users'
current preferences and interests, and provide timely feedback and updates. Thanks to the widespread use of voice assistants and chatbot
technologies, as well as the mature application of technologies such as reinforcement learning and knowledge graphs in recommendation
基金项目: 国家重点研发计划(2018AAA0100604);中央高校基本科研专项资金(2021RC217);北京市自然科学基金(JQ20023);
国家自然科学基金(61632002, 61832004, 62036012, 61720106006)
收稿时间: 2021-04-22; 修改时间: 2021-06-28, 2021-09-22; 采用时间: 2021-10-25; jos 在线出版时间: 2021-11-24
2
Journal of Software 软件学报
strategies, in the past few years, more and more researchers have paid attention to conversational recommendation systems. This survey
combs the overall framework of the conversational recommendation system, classifies the datasets used in the conversational
recommendation algorithm, and discusses the relevant metrics to evaluate the effect of the conversational recommendation. Focusing on
the background interaction strategy and recommendation logic in conversational recommendation, this survey summarizes the existing
research achievements of the domestic and foreign researchers in recent years. And finally, this survey also summarizes and prospects
future works of conversational recommendation.
Key words: conversational recommendation system; user modeling; human-computer interaction; recommendation system
推荐系统是人工智能的一个重要应用领域,能够帮助用户在没有明确需求或者环境信息过载时,在庞大量
级的数据中找到契合其偏好的信息.一直以来,推荐系统都是工业界和学术界的研究热点,在各类应用场景下被
广泛地讨论和研究.推荐系统力求为用户提供精确且高效的业务信息(包括但不限于如商品、音乐、电影、新
闻、景点等).从用户角度来看,用户要得到推荐系统精确且高效的推荐,就要求推荐系统能够理解用户的兴趣
和偏好,建模完整的用户画像;从开发者角度来看,开发者要通过推荐系统实现业务收益,就要求推荐系统能够
引导用户不断发现新的兴趣点,以实现其用户的长期留存.
目前主流的推荐系统都是基于离线的、历史的用户数据,不断优化线下的表现,训练好模型后再为在线用
户推荐物品.这种离线更新的方式使得推荐系统具有内在的弱点,即难以拟合用户线上的行为,且用户的实时反
馈无法被及时接收,因此系统难以获取用户在使用推荐系统时当前的意图与兴趣点.这样的推荐系统具有两个
特点:一是单向,即系统依靠用户历史数据,评估用户的兴趣点,单向地向用户输出推荐物品;二是静态,即系统
在线上使用时,推荐模型在与用户建立的会话周期中不会及时更新和学习.从这两个特点出发,拓展分析,可总
结出传统单向、静态的推荐系统中存在的三个主要问题:
1) 首先,推荐系统无法可靠地从历史交互数据中估计出用户的偏好
[1,2]
.历史数据通常具有噪声大、稀疏
性等问题,例如,当前用户习惯性好评,历史数据中该用户对所有物品均为五星好评,推荐系统无法估
计出该用户真实兴趣.并且,对于只有少量历史数据的新用户,数据驱动的静态推荐系统更难以建模
其偏好
[3]
.
2) 其次,用户的行为是上下文敏感的,用户的决策受各种上下文因素影响
[4,5]
.当前系统推荐的目标物品,
不仅与用户的历史数据相关,很大程度上还取决于当前推荐的上下文环境信息,例如时间因素:历史
数据显示用户曾经对手机感兴趣,不代表用户会一直对手机感兴趣,随着时间迁移和上下文环境变
化,用户兴趣会随之发生变化
[6]
.
3) 再者,传统推荐系统具有内在假设,假设用户在开始使用系统时就已经清楚自己的偏好,推荐系统只
需要根据用户历史数据猜测用户的兴趣点.但这一假设不完全可靠,用户可能是在决策过程中才产
生自己的偏好
[7]
,即当推荐系统给用户展示了一些他未知的物品选项空间,用户才意识到自己的偏好
[8]
,例如电商场景下,用户看到华为手机出新款,突然产生购买新款华为手机的兴趣.
即使是现在已有的面向实时推荐的在线推荐系统,可基于用户当前的行为数据进行实时更新,其本质上仍
是传统推荐的推荐方式,即系统被动地接受用户侧产生的数据.随着对话系统(dialogue system)的发展,对话技
术( dialogue technology)为解决传统推荐中存在的问题提供了新的解决思路和方法,即对话推荐(conversational
recommendation)方式.“对话推荐”通过丰富的交互行为,打破了静态推荐系统中系统与用户之间信息不对称
的壁垒,允许推荐系统在与用户的交互会话中动态捕捉用户偏好.对话推荐,一方面,探索用户当前的兴趣偏好,
引导用户发现自己新的兴趣点,实现用户的长期留存;另一方面,在交互中实时接受用户的反馈,更新推荐模型
的 策 略 ,实 现 动 态 更 新 与 学 习 .基 于 对 话推 荐 思 想 实 现 的 推 荐 系 统 被 称 为 对 话 推 荐 系统 ( conversational
recommendation system, CRS),CRS 是一种以推荐任务为导向去进行多轮用户交互的推荐系统.近年有大量的
研究者关注 CRS,通过研究对话推荐,致力于提高用户兴趣建模的效率,用以提升在线推荐的满意度和系统中的
用户长期留存率.
CRS 由于起源于对话系统,其与用户的交互形式狭义上为自然语言类型的语音与文字,但跳出 NLP 领域,
赵梦媛 等:对话推荐算法研究综述
3
在更广泛的应用场景(例如电商:淘宝、Amazon、eBay、Airbnb 等;多媒体平台:Movilens、LastFM、Tiktok、
YouTube 等)下考虑,其交互形式可以是用户在推荐系统中的一切行为,如在电商场景下,用户加购、关注物品
等行为;在音乐和视频内容提供商的场景下,用户播放、快进等行为,这些用户行为都可被定义为 CRS 与用户
的交互形式.对话推荐领域的研究工作面向不同的交互形式时,关注点有所不同,总体可分为两个方向,一是关
注于对用户交互形式的理解,包括语音识别、自然语言语义理解等,该方向与自然语言处理领域的经典研究课
题紧密联系;二是关注于对话策略的设计,这方向的研究则涉及了更广泛的机器学习与深度学习研究领域,包
括强化学习、知识图谱、图神经网络等.本文主要侧重于后者,聚焦对话推荐策略方向的相关工作,总结国内外
对话推荐研究工作中对话推荐算法的特点,为未来对话推荐实现更智能的推荐和更高效的交互提供研究思路
与方向.
本文整体组织结构如下:(1)概述对话推荐的发展历史,介绍对话推荐的概念和特点(第 1 章);(2)归
纳梳理对话推荐任务的通用数据集和评估标准(第 2 章);(3)介绍对话推荐系统框架中的三大基本功能模块
(第 3 章);(4)对比分析对话推荐算法的设计思路与实现模型,基于不同实现技术手段对现有工作进行归纳,
并介绍对话推荐算法的训练方式(第 4 章);(5)总结对话推荐算法的研究工作中存在的四大问题与挑战(第
5 章);( 6)最后,对对话推荐的未来研究方向进行展望(第 6 章).
1 概述
用户使用推荐系统的过程,从用户的角度来看,是一个用户进行决策的过程.传统推荐系统从用户离线数据
中估计用户偏好进行推荐的实现机制,并不直接支持用户进行在线决策,且推荐系统处于被动地位.对此,对话
推荐展现了不同于传统推荐的优越性,CRS 以对话交互的形式为用户提供了及时反馈的渠道,通过对话交互去
主动引导用户的决策和捕捉用户的动态偏好.
CRS 的雏形早在 20 世纪 70 年代晚期就已出现,Rich
[9]
实现了一个有交互界面的图书管理系统,该系统通过
询问用户问题给用户阅读建议.后来又有基于接口
[10]
、基于表单
[11,12]
的方式,用户通过勾选目标物品属性项,限
制物品的推荐结果.对话推荐的交互推荐形式,使其天然具有实现用户个性化推荐的优势.但早期的研究受限于
技术水平,没有太多的技术突破与创新.近年以来,一方面,机器学习方法和深度学习方法的技术突破,使得对话
推荐策略不再依靠启发式的人工规则,研究者从使用上下文老虎机到尝试使用简单的机器学习模型,再到设计
端到端的深度学习模型,逐渐实现更智能的 CRS.总之,技术的成熟应用极大地促进了 CRS 的性能提升.另一方
面,自然语言处理技术、语音识别技术以及图像处理技术的日渐成熟,使得对话推荐可以适应各类应用场景下
的各种交互形式,因此,具有灵活交互形式的 CRS 可被广泛应用到各类推荐场景中
[13-15]
,极强的实用性吸引了越
来越多的研究工作关注对话推荐领域的发展与革新.本章从 CRS 的定义出发,介绍对话推荐的特点,为后文对话
推荐算法的梳理奠定基础.
1.1 对话推荐系统的定义
对话推荐系统的交互推荐思路是将传统静态推荐系统与对话系统结合,在与用户的交互中通过询问用户
相关问题动态地更新用户的兴趣偏好,这种方式可以总结为“System Ask User Respond (SAUR)”
[16]
.因此,对话
推荐系统有如下两种定义.
定义一:对话推荐系统是以推荐为目标导向的对话系统.系统通过与用户的在线对话达到捕捉用户兴趣从
而推荐物品的目的
[17]
.
定义二:对话推荐系统是具有多轮交互形式的推荐系统.交互的形式狭义上为自然语言形式或语音形式,
广义上还包括推荐系统中用户的任何行为数据的形式(如:点击、浏览、加购、购买、评论等等).
在诸多相关文献的论述中,CRS 极易与对话系统(dialogue system,DS)及交互推荐系统( interactive
recommender systems,IRS)两个研究名词混淆.DS、IRS 二者与 CRS 的概念对比如表 1 所示.以下两小节将通
过说明 CRS 与其他两个概念(DS,IRS)的区别和联系,进一步明确 CRS 的概念定义和研究内容,并突出 CRS
的特点,明确本文所要综述的对象内容是对话推荐系统,从而避免读者产生概念上的困惑.
4
Journal of Software 软件学报
表 1 DS、IRS 与 CRS 的概念对比
DS
IRS
与 CRS
的联系
(一)都与用户进行交互,获取用户输入;
(二)CRS 可看作有推荐任务导向的 DS.
(一)都提供用户交互接口,获取用户偏好信息;
(二)都面向推荐场景,IRS 可看作早期 CRS 研究的存在形
式.
与 CRS
的区别
(一)交互形式不同:DS 使用自然语言文字、语
音,CRS 还可使用用户行为数据;
(二)应用场景不完全相同:DS 的应用场景更为广
泛,CRS 仅面向推荐任务.
(一)交互对象不完全相同:IRS 仅限于交互推荐的物品,CRS
还将物品相关属性作为交互对象;
(二)优化目标略有区别:IRS 侧重优化序列推荐结果,CRS
侧重用户兴趣建模结果.
1.1.1 对话推荐系统与对话系统
对话系统大致可被分为两类:任务导向型(task-oriented)对话系统和非任务导向型(non-task-oriented)
对话系统,后者也被称为聊天机器人.任务导向的对话系统旨在帮助用户完成具体的任务,例如帮助用户找寻商
品,预订酒店餐厅等,其中一种面向推荐任务的任务导向型对话系统可被看作是以自然语言文字、语音为交互
形式的 CRS,该种系统由于在推荐任务中具有很高的商业应用价值,在近年常被作为单独的研究方向,并被扩展
到更通用的交互形式上. 在 早期的 诸多研究工作
[16,18,19]
中 , 研究者对 推 荐 任 务 导 向 的 对 话 系 统
(recommendation-task-oriented DS)与 CRS 的区分并不明确,二者的研究工作常常互有交融.
1.1.2 对话推荐系统与交互推荐系统
IRS 不同于传统推荐系统将推荐看作一步预测任务(one-step predication task)的思路,而是将推荐看作一
个多步序列决策过程(multi-step decision-making process)
[20-23]
.在交互过程的每一步,IRS 输出给用户一个交
互物品对象,并接收用户对于该物品的反馈,接着继续推荐下一个物品,直到当前用户的序列会话结束.IRS 的目
标在于优化会话结束前的整个推荐序列的结果,而 CRS 的目标有两阶段,第一阶段是探索会话交互中的用户兴
趣,第二阶段是利用学习到的动态兴趣去提高推荐准确率
[24,25]
.
可以看出 CRS 与 IRS 的研究内容非常相似,重点都在于交互过程中向用户推荐用户感兴趣的物品,因此在
很多研究者的研究工作中并不对二者进行明确区分,常常混为一谈.但二者其实并不完全是同一研究问题,相比
较于 DS 与 CRS 的关系,IRS 与 CRS 的关系更为复杂,所以这里将对二者的区别与联系分别进行说明.
IRS 与 CRS 的区别:首先,IRS 的动作空间仅包含物品,其通过物品列表与用户进行交互;而 CRS 的动作
空间有两类,一类是物品空间,用于直接推荐,达到收益的目的,另一类是物品属性空间,用于获取用户信息,达到
探索的目的.可以看出,IRS 的动作空间能够更契合一般的推荐应用,即用户的偏好数据都隐含在交互过的物品
列表上,但推荐系统早期的相关研究已表明,直接使用物品列表来表示用户偏好的效果欠佳,原因有两方面:一
是,询问物品属性的效率更高,因为用户喜欢或不喜欢一个物品属性可以更显著地减少推荐候选集物品;二是,
相较于物品属性,用户对某个物品的正反馈更大程度上是受到当时的环境影响,某一特定环境下产生的交互物
品无法体现用户本身的偏好.所以,CRS 通过物品属性列表来表示用户偏好的方式,能够更好的获取用户的偏好
信息.再者,从系统实现优化目标上来看,二者各有不同的侧重点.IRS 的目标是优化推荐序列的总收益,即优化用
户离开会话前的所有推荐行为效果总和,希望最大化序列推荐的收益并提高用户长期的推荐体验;而 CRS 的
目标是更快地了解用户当前的兴趣偏好,提高推荐的效率,因此在 CRS 的交互常常在成功推荐一个物品时就结
束,希望提高用户实时的推荐体验.
IRS 与 CRS 的联系:如果将 IRS 中交互对象空间由物品泛化到物品属性,CRS 与 IRS 在实现方案与技术
上基本一致,可以认为 CRS 是一种特殊的 IRS.但从近年发表的相关研究工作数量
[26]
来看,CRS 的研究热度要高
于传统的 IRS,原因在于,相比较只将推荐的物品作为交互对象的 IRS,CRS 的交互对象更为灵活,可以适应更多
的应用场景与需求,给研究者更多的创新空间和思路.因此,在很多文献中
[10,11,27-32]
,研究者将 IRS 看作是 CRS 早
期的存在形式,并更多地从 CRS 的角度进行讨论.
赵梦媛 等:对话推荐算法研究综述
5
1.2 对话推荐任务的特点
总的来说,从 CRS 的定义,以及其与 DS、IRS 的对比中,可以看出对话推荐的两大特点:多轮交互、目标导
向.以下两小节将分别说明对话推荐任务的这两大特点的内涵.
1.2.1 多轮交互
传统的推荐系统中,用户在寻找具有特定属性的物品时,可以通过主动搜索来进行,例如,用户可以搜索“春
季的短款夹克”,其中关键短语“春季”和“短款”是“夹克”的属性.在这个场景中,用户自己构造查询,推荐
效果不仅依赖于搜索引擎,更多是在依赖用户在构造查询方面的专业知识.传统推荐系统需要用户根据自己的
先验知识输入可能的属性选项限制
[33-36]
,才能够准确地定位到合适的推荐候选项集合,最终帮助用户找到目标
物品.这种主动搜索方式要求用户熟悉自己想要的每一件物品,然而在大多数实际情况中,用户不具备这样的先
验条件.当用户并不熟悉自己想要物品的属性时,推荐系统被期望能够主动向用户介绍他们可能喜欢的潜在物
品,然而,传统的推荐系统无法做到这一点,它只能使用静态的历史记录作为输入,从而导致了前文中提到的三
个存在于传统单向、静态的推荐系统中的主要问题.
对话推荐的“多轮交互”特点可以弥补传统推荐系统中用户主动搜索的不足.在 CRS 与用户的实时互动
中,CRS 可以通过主动向用户提问的行为方式,向用户展示用户未知的物品属性空间,并利用用户的反馈信息,
直接了解用户对某些属性的需求和态度,构建用户兴趣画像,从而做出正确的推荐.并且,当用户对推荐的项目
不满意时,CRS 也有机会在接下来的交互轮次中调整推荐结果.
总而言之,由于传统推荐系统没有给用户开放提供反馈的渠道,它在实际应用中需要阶段性地下线调整,根
据静态的历史数据被动地重新训练或更新模型,由于庞大的数据量级和复杂的用户行为,这个过程非常耗时耗
力,还要面临数据过时和噪声干扰的风险.而对话推荐方式提供了交互渠道,可以在与用户的交互中时刻微调
(fine-tue)用户兴趣画像,通过持续学习(continual learning)、增量学习(incremental learning)不断契合用户
的动态兴趣偏好,最终实现“成功推荐”的目标.
1.2.2 目标导向
对话推荐的另一个特点是“目标导向”.对话推荐要实现的目标任务就是给用户推荐用户感兴趣的物品,
因此,CRS 以实现“成功推荐”为最终目标,进行获取用户偏好信息的交互.CRS 与传统推荐系统有同样的“推
荐”目标,但是,二者在系统的运作与实现上完全不同:
(1)从系统的推荐方式上来看,传统的推荐系统可以看作是系统单方面向用户输出推荐物品,即单向推荐
(one-direction recommend),它对于用户当前的反馈没有反应,更不会实时地更新系统的推荐策略;CRS 则注
重用户的实时反馈,不断主动地试探用户兴趣点,并更新接下来的推荐策略,即 CRS 使用交互推荐(interaction
recommend)的方式.
(2)从系统的更新方式上来说,传统推荐系统从用户的历史数据中推断用户的兴趣点,即使用离线更新策
略(offline-update strategy); CRS 则是在与用户的交互过程中,将用户每轮对推荐物品的反馈作为模型更新的
重要信息,即使用在线更新策略(online-update strategy).
2 对话推荐任务的数据集与评估
本章将根据目前对话推荐研究工作中使用的数据集的特点,将数据集划分为两大类,然后基于两类不同的
数据集,对对话推荐的评价指标和评估方式进行梳理和介绍.
2.1 常用数据集
正如前文所阐述,对话推荐的交互形式既可以是语音、自然语言语句,也可以是更为一般的用户交互行为
数据(如点击、浏览、购买等).因此在对话推荐的研究工作中,常用的数据集也分为两类,第一类是研究者将
用户交互语音或语句与推荐数据结合,人工构造的数据集;第二类是更为一般的推荐系统通用数据集.
两类数据集最显著的区别在于:交互数据形式和内容不同.第一类构造数据集的数据形式为语音、自然语
剩余29页未读,继续阅读
资源评论
syp_net
- 粉丝: 158
- 资源: 1196
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- IDEA快速搭建一个SpringBoot3项目
- 【NumberOne专业开发】红色新版仿京东商城模板html源码.rar
- [信息办公]电信计费系统完整代码_netctossconformity.rar
- [其他类别]phplib v7.4a_phplib-7.4a.rar
- [上传下载]PHP下载系统 可按拼音生成下载页面的程序_dir.rar
- C语言-扫雷代码,VS2022,多文件形式
- matlab字母识别源程序,能够对26个字母进行识别,并以A为例做识别演示.rar
- 多目标规划优化问题 Matlab中常用于求解多目标达到问题的函数为fgoalattain.zip
- [影音娱乐]522QQ在线电视直播程序 v1.1_idcfree.rar
- 曼波整站系统(Mambors) v5.4.0_mambors5.4.0_CMS程序开发模板(使用说明+源代码+html).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功