基于机器学习的推荐系统逐渐成为帮助人们自动过滤信息、发掘兴趣的主要方式。现有模型通常使用 embedding 来表示推荐系统中丰富的信息,比如物品、用户和上下文信息。从因果分析的角度来看,这些向量和用户最终的反馈(比如点击、点赞、转发等)之间的关系是由因果关系和非因果关系混杂在一起组成的。
因果关系是反应物品被用户偏好的原因,非因果关系仅仅反应用户和物品之间的统计依赖关系,比如曝光模式、公众观念、展示位置等。然而现有推荐算法大部分都忽略了因果关系和非因果关系之间的不同之处。
在这篇文章中,快手和人大的研究者提出了一个模型无关的因果学习框架,该框架被称作 IV4Rec,用来有效地分离出这两种关系,从而加强推荐模型的效果。更确切地说,研究者联合考虑了搜索场景和推荐场景下的用户行为。通过借鉴因果推断中的概念,他们将用户的搜索行为作为工具变量(Instrumental variables, IVs),来帮助分解原本推荐中 embedding,即 treatments。然后使用深度神经网络将分离的两个部分结合起来,用结合后的结果来完成推荐任务。
论文链接:https://arxiv.org/abs/2202.04514
IV4Rec 是一个模型无关的框架,它可以应用到众多推荐模型中,比如 NRHUB 和 DIN。在公开数据集 MIND 和快手短视频数据集上的实验结果表明,IV4Rec 可以有效地提升推荐模型的效果,该技术已经申请中国发明专利。
一、背景和动机
现实生活中,搜索和推荐已经成为帮助用户在互联网上获取信息的两种主要方式。传统的情况下,推荐模型和搜索模型会被部署成为两个不同的系统,服务于不同用户的不同信息需求。
但近些年来,许多线上内容平台在同一个平台上同时提供搜索和推荐服务。当有了多种用户行为后,这两种服务可以通过它们共同的用户和物品子集联系起来。这种现象给我们提供了一个机会:用一种服务的数据去提升另一种服务的效果。
图表 1:同一个平台中的搜索和推荐服务
现有的工作已经意识到搜索和推荐可以联合进行优化。Garcia-Molina 等人指出搜索和推荐是一个硬币的不同两面(two sides of the same coin)。这两种服务有许多相似和联系。近来有一些工作致力于同时优化搜索和推荐模型从而同时提升它们的准确度,比如联合建模和优化搜索与推荐(JSR)。一个叫做 USER 的算法联合探索和利用搜索和推荐行为,并同时发掘用户在这两种场景下的兴趣。
除此之外还有不少工作在使用一种服务的数据来辅助另一种服务的模型,比如 ZSL-TE 是一个使用 zero-shot 的将推荐系统中知识迁移到搜索模型中的迁移学习框架。然而,现有的搜索推荐联合框架,都没有考虑到用户的搜索行为和推荐场景下的浏览行为之间的因果关系。
现有的推荐系统模型通常是使用用户和系统的历史交互数据进行训练,并且假定每一条日志数据 (u, i, c) 都能够无偏地反应出 user u 对于 item i 的的偏好。但在现实世界中,用户与系统的交互数据通常是被需要混淆因素(confounder)影响,比如 position bias、selection bias 和 popularity bias 等等。从因果推断的角度来说,我们将 user 和 item 的 embedding 当作 treatment(简称 T),将用户的反馈(比如:click)看作 outcome(简称 Y)。因为 confounder 的存在,treatment 到 outcome 之间的关系既有因果的部分也有非因果的部分。
图表 2:因果视角下的推荐场景
因为 confounder(B)的存在,T 到 Y 之间有两条路径,红色的线表示受到 confounder 影响的非因果关系,蓝色的表示用户和物品之间匹配程度的因果关系。因果和非因果的部分反应的是 user-item pair(T)和用户反馈(Y)之间的不同关系。由于 confounder 的种类是多种多样的,很多时候它们也是一起发生的,仅仅通过推荐模型里的训练数据是很难有效识别出非因果关系的。
因此,研究者认为:
-
现有搜索推荐联合的模型与方法并没有从深层次发掘和利用搜索行为与推荐模型之间的因果关系;
-
现有推荐模型普遍没有考虑到训练过程中产生的各种 bias,多种 bias 组成的 confounder 会影响模型的训练。
因此,他们提出了一个因果学习框架,使用工具变量(instrumental variable)方法利用搜索数据辅助推荐模型。首先 T 被分解为 causal 和 non-causal 的部分,再将这两个部分重构成为新的 T,作为推荐模型的输入。
二、方法介绍
针对这些挑战,研究者提出了一种基于因果推断中工具变量方法、使用搜索数据辅助推荐模型的框架 – IV4REC(Instrumental Variables for Recommendation)。该方法使用用户的搜索 query 作为工具变量(IVs),来分解和重构推荐系统中的 embedding。
具体来说,该方法主要分为三个部分:A. 构造 treatment (T)和 Instrumental Variables (IVs),B. 重构 treatment,C. 将重构的 treatment 应用到推荐模型
初步知识:工具变量
工具变量是一种用来估计因果关系的方法,在经济学、流行病学等领域得到了广泛的应用,是 2021 年诺贝尔经济学奖得主的主要贡献之一。
下图为工具变量的应用场景,图 3 为所有变量之间的因果关系。研究者想探究 T 和 Y 之间的因果关系,但是其受到 confounder U 的影响,而工具变量 Z 是一个和 U 无关,但和 T 有关,并仅通过 T 影响 Y 的变量。
图表 3:所有变量间的因果关系
图表 4:工具变量干预后的因果关系
A. 构造 treatment
对于推荐场景来说,研究者认为交互数据中的 use-item pair 是 treatment。对于序列推荐来说,user embedding 是通过 user 的浏览历史的到的,所以 user 可以看作是浏览历史中所有 item embedding 的集合。所以 use-item pair 可以看作一个 item embedding 的集合,其中元素为候选物品以及用户浏览历史中的所有物品。
对于搜索引擎的日志数据来说,一般存储的是 user-query-item-click 这种四元组。对于每一个需要的 item,通过搜索日志数据召回点击过它的 query。每一个 item 召回 n 个点击过它的 query 作为其工具变量,具体方法为:通过 BERT 等预训练模型将 query 的文本信息转化为向量,将 n 个 query 的 embedding 堆叠起来成为一个矩阵,该矩阵即是对应 item embedding 的工具变量(IVs)。对于每一个 user 的浏览历史中的 item 构造 IVs,这些矩阵构成了 user 的 IVs。
B. Treatment 重构
但是,研究者关心的更多是提升推荐模型的预测准确性,所以在下一步仍然利用残差来提升推荐性能。
图表 5:treatment 重构
C. 将重构的 treatment 应用到推荐模型
图表 6:IV4Rec 的架构
许多序列推荐模型(DIN、DIEN、NRHUB、BST 等等)都共享上图左边的结构,我们将其称之为 underlying model。Underlying model 将 item 用向量表示,利用用户的历史行为来学习用户的表示,并基于学到的用户和物品的表示来预测用户对于物品的偏好分数。
研究者提出的 IV4Rec 框架可以应用在所有符合 underlying model 结构的模型上,只需要简单地在 item embedding layer 后加入 treatment reconstruction module。重构的用户表示是通过其浏览历史中的物品的重构向量得到的,再利用重构出的用户和候选物品向量,便可以得到更加精确的预测值。
三、实验结果
为了证明提出的 IV4Rec 框架的有效性,研究者在新闻推荐公开数据集 MIND 和快手短视频数据集上进行了实验。采用准确性指标 AUC,以及两个排名指标 MRR 和 NDCG 进行评估,MRR 和 NDCG 的位置分别设置为 5 和 10。
研究者将 IV4Rec 框架应用在了两个推荐模型 DIN 和 NRHUB 上(记为 IV4Rec-DIN, IV4Rec-NRHUB),并且和一个联合优化搜索和推荐的框架 JSR 进行了比较(记为 JSR-DIN,JSR-NRHUB)。
从下表 1 可以看出,与不加入 IV4Rec 的 underlying model 比较,在所有指标上,本文提出的 IV4Rec 框架具有不俗的性能提升。另外,IV4Rec 对于 underlying model 的性能提升远超过 JSR 这个联合优化搜索和推荐的框架。这些结果都验证了 IV4Rec 的有效性。
在快手短视频数据集上,NRHUB 本身就利用了搜索行为作为用户特征,研究者对于 DIN 也额外加入了一个用户行为的塔来利用搜索行为特征,因此在该数据集的实验中,IV4Rec 的确是从因果推断的角度提升了模型的效果,而不是因为加入搜索特征得到的提升。
表 1. 整体实验结果
为了进一步探究所提出的方法利用残差的效果,研究者在快手短视频数据集上尝试了不同版本的 IV4Rec 框架,结果如下图 2 所示。
图 2:不同的 treatment reconstruction 方式的影响。