推荐算法的三大研究热点
推荐系统领域还存在着很多问题有待研究,这些问题将对推荐系统的应用起到重要影响。
下面介绍三个关键热点问题:基于对话的推荐、因果推荐和常识推荐。
01
基于对话的推荐
传统的推荐算法与用户的交互较为缺乏,难以及时有效地把握用户兴趣。基于对话的推荐系统(Conversational Recommender System,CRS)能够通过与用户深入互动来了解用户兴趣,成了推荐系统领域一个新的研究热点。基于对话的推荐系统的核心是用户与推荐系统的在线交互,即将通过用户与推荐系统的对话交互过程获得用户的反馈,并将用户反馈融入推荐模型中,期望更好地理解用户的兴趣并提升推荐的准确性。
新加坡南洋理工大学的 Lei 等人对基于对话的推荐系统进行了总结,提出了基于对话的推荐系统需要关注的四个研究问题。
1. 冷启动场景下的探索与开发的权衡
对话系统可以方便地收集用户的兴趣信息,因此能够帮助推荐系统解决冷启动的问题。例如,Christakopoulou 等人提出了一个基于对话的餐厅推荐系统,通过不断地问用户问题,快速了解用户兴趣,然后进行推荐。这类方法需要考虑问用户多少问题是合适的。如果问题过多,用户可能会丧失回答问题的兴趣,甚至丧失对推荐系统的信任。如果问题过少,系统可能难以准确地把握用户兴趣,导致推荐的准确率降低。因此,基于对话的推荐系统在解决冷启动问题时存在一个经典的探索与开发的权衡问题。解决这类问题的常用技术是多臂老虎机(multi-armed bandit)算法。例如,Christakopoulou 等利用多臂老虎机算法设计了一个探索与开发的权衡(exploration-exploitationtradeoff),首先将用户的表征向量设置为全部用户的平均值,然后根据多臂老虎机的策略对用户提问,最后根据问题的答案更新用户的表征向量。
2. 以问题为中心的基于对话推荐
在这类场景中,对话由用户主动发起,推荐系统根据用户的问题决定如何推荐物品,以及如何进一步地问更多的问题。例如,在电影推荐场景中,用户可能会要求系统推荐一部最近的热门喜剧电影。此时,对话的目的在于更准确地理解用户的意图,比如用户过去看过哪些喜剧电影,以及对导演、演员、年代和语言等方面的偏好,然后基于用户的回答不断地构建用户的表征向量,直到推荐的电影满足用户的需求。2018 年,Li 等人发布了一个基于对话的电影推荐数据集 ReDial,并提出了一种基于自编码器的推荐算法来实现对话式推荐,能够根据对话和情感分类预测用户对电影的意见,然后将用户偏好输入自编码器中产生推荐。自编码器方法能够训练得到一个重构输入的神经网络,在重构的过程中将未观测到的用户评分估计出来。由于自编码器的网络参数不需要针对新用户重新训练,给定一个用户的评分向量即可完成推荐,因此更适合无法观测到用户历史兴趣的基于对话推荐场景。
3. 以策略为中心的基于对话推荐
很多现实世界的对话都是多轮的,即用户可能在一次对话中回答多个不同类的问题。例如,在为用户推荐餐厅时,不仅需要了解用户的口味偏好,还需要了解用户的位置信息等。这类问题的核心是如何决定需要提问的问题属性,然后基于问题的答案决定下一个问题以及推荐的内容。Sun 等人提 出了一个包含推荐模块、置信度追踪模块和决策模块的基于对话的推荐系统。通过置信度追踪来分析用户在对话过程中的语义,然后利用决策模块判断下一步是应该提问还是推荐。如果决策模块的决定是推荐,系统会调用推荐模块,根据用户在对话中体现的兴趣以及历史兴趣生成推荐结果。
4. 对话理解与生成
对话过程中最基本的问题就是准确地理解用户的输入语句然后生成自然且相关的答案。这一问题也是对话系统研究人员关注的。与通用对话系统不同,推荐系统的对话一般都是基于某个特定领域,如电影、音乐和餐厅等,因此领域相关的知识对对话的理解与生成都非常重要。Chen 等人提出利用知识图谱将物品相关的上下文信息引入推荐的对话过程中,例如电影导演、演员和类型等。这些信息的引入使推荐系统在用户没有提到具体物品的情况下做出推荐,同时这些上下文信息的引入还能够帮助提升推荐系统的准确性。
02
因果推荐
因果学习研究的是如何发现和利用变量之间的因果关系进行预测,而不仅依赖变量之间的关联关系进行预测。因果关系揭示的是事件发生的本质规律,改变事件背后的“因”往往会影响到事件的“果”。而关联关系往往不是事件发生的本质规律,改变其中一个事件可能不会影响另一个关联事件。例如,通过关联关系挖掘,可以发现手指颜色变黄与肺癌之间具有很强的相关性,但是两者之间没有明确的因果关系,即将普通人的手指涂上黄色并不能 提高其得肺癌的概率。实际上,手指变黄与肺癌背后的“因”都是吸烟,即吸烟与肺癌之间存在因果关系。因此,如果让不吸烟的人吸烟,会显著提升他们得肺癌的概率。在推荐系统中,如果缺乏对因果性的分析,可能会导致推荐效 果的下降或模型的偏见。
首先,因果性会影响推荐系统模型的训练。推荐系统一般假设用户会浏览所有物品,然后从中选择自己喜欢的物品,但是实际上这种假设是不成立的。Wang 等人认为电影并不是随机暴露给用户的,而是用户通过一个有偏的分布来选择电影,然后在选择的电影范围内进行评价。针对这一问题,他们设计了一个能够去除混淆因子的推荐算法。首先,根据用户的评分数据建模电影对用户的暴露模型,并基于模型估计系统中未观测到的混淆因子。然后,推荐模型在考虑混淆因子的情况下拟合观测到的评分。基于这样的设计,推荐系统可以分析不同暴露的电影与用户评分之间的关系。实验分析表明,去除混淆因子后,推荐算法具有更强的泛化能力,尤其是针对新用户,能够提供更准确的推荐。
另外,因果性也会影响推荐系统的评估。在衡量推荐系统的准确性时,离线的评估往往不能准确地衡量推荐效果,背后的原因就是在离线的评估中无法对用户进行干预,因此难以计算在推荐其他物品时用户的反馈是什么。例如,在历史数据中观测到用户 u 购买了商品 a,而实际上如果用户看到了商品 b,那么用户更可能会购买 b。在这种情况下,如果推荐系统推荐了商品 b 给用户 u,就会被离线评估判断为无效。如果将离线评估改为在线评估,就可以解决这类问题。但是在线评估的代价很高,一般难以广泛使用。一种更简单的策略是采用反事实推理(Counterfactual Reasoning)的方法,例如利用重要性采样(Importance Sampling)修正观测样本中存在的偏差,实现无偏的估计。
03
常识推荐
与人工智能的其他领域一样,推荐系统也面临着数据完整性的问题,即观测到的数据只涵盖一部分现实世界的情况。因此,即使推荐结果在观测数据的范围内是合理的,这些结果在人看来可能是不合理的,即可能不符合常识。这些不符合常识的推荐内容会导致推荐准确率的降低,甚至影响用户对推荐系统的信任。例如,当前的很多推荐系统都不会考虑用户过去购买的商品与推荐商品之间的冲突,当用户购买了电视机之后,很多电商的推荐系统会继续将电视机推荐给用户,这种做法显然是缺乏常识的。但是由于推荐系统观测到的数据并不存在常识知识,所以系统难以解决这类问题。
常识库是一种解决上述问题的关键技术。Tsai 等人针对搜索引擎中的关键字推荐问题,提出结合 ConceptNet 和 Wikipedia 将相关语义的关键字与用户查询关键字进行关联,然后将所有相关关键字进行排序。该方法利用到了常识库 ConceptNet 的知识,因此推荐的内容能够保证较高的合理性。然而,这种方法难以扩展到更广泛的推荐场景中,例如无法针对电商中电视机被反复推荐的问题。除 ConcetpNet 之外,常用的常识知识库还有 Tuple KB、QuasimodoKB、WebChild 和 True Knowledge 等。如何利用这些知识库更好地指导推荐列表的生成是有待探索的重要研究领域。目前,结合常识提升推荐质量的研究工作比较少见,这一领域可能会是未来推荐系统研究的一个新方向。
本文节选自《推荐系统:前沿与实践》一书,李东胜 练建勋 张乐 任侃 卢暾 邬涛 谢幸 著
本书的作者们活跃在推荐系统领域的研发前沿,书中以一线研发人员的视角和经验,对推荐系统进行总结,从原理与实践两个角度系统的剖析推荐系统,展示了推荐系统领域的全景,强烈推荐大家阅读学习!
当然也给大家申请到了优惠的折扣,大家可以扫描下方海报二维码或者点击阅读原文进行购买。
评论