Alleviating Spurious Correlations in Knowledge-aware Recommendations through Counterfactual Generator

摘要

由于现有的基于统计的机器学习框架的限制,虚假联系很可能会出现在现有的知识感知的推荐方法中。它指的是一个似乎与用户行为产生因果关系的知识事实(由推荐系统推断),但实际上不是事实。为了解决这一问题,作者提出了一个新的方法来从反事实的角度发现并且消除潜在的虚假联系。更详细地来讲,作者的方法由两个反事实生成器以及一个推荐器组成。反事实生成器被设计用来通过强化学习生成反事实交互,推荐器是通过实现两个不同的图神经网络来分别增加知识图谱和用户-项目交互中的信息。反事实生成器和推荐器以一种相互协作的方式被结合起来。通过该方法,推荐器帮助反事实生成器更好地识别潜在的虚假联系,并且生成高质量的反事实交互,同时反事实生成器帮助推荐器弱化潜在虚假联系的影响。

论文代码

简介

知识图谱将实体信息组织成元组的集合,为推荐系统提供了辅助信息,来丰富项目的表示以及捕获在项目属性上的结构化偏好。因此,知识感知的推荐器更加能够提供准确以及可解释的推荐。

为了利用知识图谱的信息,现有的知识感知推荐方法主要集中于如何设计有效的推荐系统神经结构。虽然在一定程度上这种做法很有效,但是这些方法只学习了项目知识以及用户行为之间的表层联系。因此,由于虚假联系导致的潜在效应,模型的合理性以及可靠性在一个更加泛化的设定下可能无法得到保证。在因果理论中,虚假联系指得是两个变量之间看似由于因果产生,但实际上不是的一种联系。在知识感知的推荐中,虚假联系是由并非因果但是常常和用户交互一起出现的项目特征,例如购买或者点击。本质上,现有的方法都主要设置在统计机器学习框架上。由于集中于观测到的共现模式,这些方法很容易被虚假联系误导,并且很难去识别真正的因果联系。

图一展示了一个在电影推荐场景下的虚假联系的例子。在该场景中,Tom观看了很多英语电影,并且因此推荐器倾向于去推断,“语言”是Tom观看这些电影的主要原因,并且持续向其推荐英语电影。然而,Tom观看这些电影是因为他喜欢“科幻”和“冒险”类别的电影,“语言”不是主要的交互原因。

由于知识图谱包含了大量的项目特征,这些知识信息中的虚假联系会潜在地影响知识感知的推荐系统的表现。事实上,虚假联系是在很多领域中的常见问题。为了消除这种虚假联系,研究者在自然语言处理和计算机视觉中提出了使用反事实数据。理论上,反事实是一个哲学概念,涉及到对已经发生的事件产生可能的替代的趋势。通常情况下,这些方法通过操控可能导致虚假联系的特征(例如,文本中的词)来生成反事实数据,然后在原始的以及反事实数据上去训练模型,来减少虚假联系的影响。

受到这些工作的启发,作者提出了通过构建反事实交互,在知识感知的推荐中减弱潜在虚假联系的方法。实际上,反事实方法最近已经被应用到推荐系统中,这些工作[39]、[43]、[45]生成项目级别的反事实数据来消除数据稀疏问题。于现有的推荐方法不同,作者提出了在用户-项目交互层次之下更加深层次地构建反事实交互(即“知识层面”)。对于一个给定的用户和以及他的交互项目,将潜在地造成虚假联系的知识事实替换成另一个相联系的知识事实。再次考虑图一。这里有一个交互记录,训练数据中,相应的事实如下:“Tom观看了这部电影,这部电影的语言是英语。”我们可以通过询问反事实问题“如果电影的语言被替换成德语,Tom还会继续观看吗?”来生成一个反事实交互。如果推荐器回答的是“Yes”,那么由“语言”造成的虚假联系将会被移除。

然而,为了构建正确的反事实交互来帮助消除虚假联系是很困难的。一个主要的原因在于,正确地识别导致虚假联系的知识事实。为了克服该挑战,作者构建了一个推荐器和反事实生成器之间的相互协作。对于反事实生成器,基于信息瓶颈原则[30],作者从推荐器的反馈中设计了一个基于信息的奖励来帮助识别潜在虚假联系。之后,另一个基于预测的奖励被设计来提供更加直接的、信息型的信号。在两种信号的引导下,反事实生成器更加能够生成高质量的反事实交互。对于推荐器,通过最小化事实交互以及生成的反事实交互之间的平均处理效应(ATE)来减弱潜在虚假联系。在这样一个自适应的互动过程中,导致虚假相关性的知识事实逐渐被识别和去除。

最后,作者提出了一个由反事实生成器强化的知识感知推荐方法(Counterfactual Generator enhanced Knowledge-aware Recommendation, CGKR)。提出的方法由两个反事实生成器以及一个推荐器组成。两个反事实生成器被设计用来通过强化学习生成含有虚假的积极和消极项目的反事实交互,而推荐器含有两个图神经网络,来分别汇集知识图谱中的信息以及用户-项目交互。反事实生成器以及推荐器以一个相互协同的方式结合到一起。通过这种方法,推荐器帮助反事实生成器更好地挖掘潜在的虚假联系,同时反事实生成器帮助推荐器弱化潜在虚假联系的影响。

这是第一次从反事实的视角消除图感知推荐中的虚假联系。

准备工作

知识图谱

知识图谱(Knowledge graph, KG)将知识信息组织成一组元组,表示为Gkg={<h,r,t>∣h,t∈ε,r∈R}\mathcal{G}_{kg}=\{<h,r,t>|h,t\in \varepsilon,r \in \mathcal{R}\}Gkg​={<h,r,t>∣h,t∈ε,r∈R},这里的ε\varepsilonε和R\mathcal{R}R分别代表实体集合以及联系集合。一个元组<h,r,t><h,r,t><h,r,t>描述了在头节点hhh和尾节点ttt之间存在联系rrr。延续自[14]、[49],作者建立了一个在用户-项目交互以及知识图谱之间的项目-实体集合。在推荐系统中可以被链接到项目的实体被叫做项目实体εI\varepsilon_IεI​,其他实体被叫做属性实体εA\varepsilon_AεA​。例如,一个元组<AVATAR,DIRECTED_BY,JAMES_CAMERON>表示一个事实,即电影《阿凡达》是由詹姆斯卡梅隆导演的。《阿凡达》是一个项目实体,詹姆斯卡梅隆是一个属性实体,导演表示他们之间的关系。

事实以及反事实交互数据

在推荐系统中,用户-项目的历史交互是可获得的(例如评分或者点击)。使用U\mathcal{U}U代表用户集合,I\mathcal{I}I代表项目集合。这里,认为用户-项目历史交互为事实交互数据,表示为Of={(u,i)∣u∈U,i∈I}\mathcal{O}_f=\{(u,i)|u\in \mathcal{U},i\in \mathcal{I}\}Of​={(u,i)∣u∈U,i∈I}。可以更加深入地将其分成正事实交互数据以及负事实交互数据,表示为Of+={(u,i+)}\mathcal{O}^+_f=\{(u,i^+)\}Of+​={(u,i+)}以及Of−={(u,i−)}\mathcal{O}_f^-=\{(u,i^-)\}Of−​={(u,i−)}。

按照之前的工作[23],作者使用了负采样策略来生成负交互项目。此外,将反事实交互数据表示为Ocf={(u,icf)∣u∈U,i∈Icf}\mathcal{O}_{cf}=\{(u,i_{cf})|u\in \mathcal{U},i\in \mathcal{I}_{cf}\}Ocf​={(u,icf​)∣u∈U,i∈Icf​},这里的Icf\mathcal{I}_{cf}Icf​表示反事实项目的集合。作者修改项目iii的属性信息来生成相应的反事实项目icfi_{cf}icf​,然后用户uuu和反事实项目icfi_{cf}icf​将会形成一个反事实交互。相似的,反事实交互数据可以被分成正交互Ocf+\mathcal{O}^+_{cf}Ocf+​以及负交互Ocf−\mathcal{O}_{cf}^-Ocf−​。

3 方法

图二展示了CGKR的预览。两个反事实生成器通过探索潜在虚假联系,在推荐系统的指引下,生成反事实交互,交互中的正项目和负项目是虚假的。另外,推荐器使用两个反事实生成器生成的反事实交互来减弱潜在虚假联系的影响。这两个过程以相互协作的方式交替执行,以缓解虚假相关性问题。

3.1 反事实生成器

反事实生成器的目的是通过探索推荐系统中的潜在虚假联系生成反事实交互。图三展示了反事实交互的产生流程。对于一个事实交互(u,i)(u,i)(u,i),核心理念是改动项目iii的属性信息来生成反事实项目icfi_{cf}icf​,然后形成一个反事实交互(u,icf)(u,i_{cf})(u,icf​)。为了构建基于知识图谱的改动,首先选择一个可能导致虚假联系的KG元组,然后使用并没有直接从数据中观察到的KG元组来替换它。

然而,给定一个事实交互,要想产生合适的修改是很困难的,因为修改操作的可行空间十分庞大,而且没有直接有效的探索引导。为了解决这一问题,作者提出了将反事实交互的产生过程形式化为一个马尔可夫决策过程(Markov Decision Process,MDP),利用推荐系统的信号作为奖励来引导反事实交互的生成过程。

3.1.1 作为MDP的反事实产生过程

在强化学习中,通常的MDP环境可以被定义为一个元组(S,A,δ,R)(\mathcal{S},\mathcal{A},\mathcal{\delta},R)(S,A,δ,R),这里的S\mathcal{S}S定义为状态空间,A\mathcal{A}A定义为动作空间,δ:S×A→S\delta:\mathcal{S}\times\mathcal{A}\to \mathcal{S}δ:S×A→S指的是转移函数,R:S×A→RR:\mathcal{S}\times \mathcal{A}\to \mathbb{R}R:S×A→R是环境的奖励函数。

在反事实交互的生成中,在步骤ttt,状态st∈Ss_t\in \mathcal{S}st​∈S被定义为一个元组(u,icft)(u,i_{cf}^t)(u,icft​),uuu为当下的用户,icfti_{cf}^ticft​是第t步的反事实项目。通过在反事实项目icft−1i_{cf}^{t-1}icft−1​上施加修改操作,获得了第t步的反事实项目。初始状态s0=(u,i)s_0=(u,i)s0​=(u,i),表示真实观测到的交互。完整的动作空间At\mathcal{A}_tAt​由在项目icfti_{cf}^ticft​上所有可能的修改操作组成。

3.1.2 生成器的修改操作

在状态st=(u,icft)s_t=(u,i_{cf}^t)st​=(u,icft​)时,需要高效地地搜索能够修改反事实项目icfti_{cf}^ticft​信息的动作。将修改分解成两步:

  1. 从项目iii的属性信息中选择一个属性实体eae_aea​(目标实体),
  2. 将eae_aea​替换为另一个属性实体e~a\tilde{e}_ae~a​(修改实体)。

这两步用来识别可能导致虚假联系的属性实体,并进一步更新对于削弱虚假联系有作用的反事实项目。上述过程公式化如下:

为了建模概率P(ea∣st)\mathbb{P}(e_a|s_t)P(ea​∣st​),需要学习状态sts_tst​的表示vstv_{s_t}vst​​。状态sts_tst​由用户以及反事实项目组成。作者首先将用户uuu和反事实项目icfti_{cf}^ticft​分别表示为vu∈Rdv_u\in\mathbb{R}^dvu​∈Rd和vicf∈Rdv_{i_{cf}}\in \mathbb{R}^dvicf​​∈Rd。3.2节将会介绍如何学习两种表示。

将两种表示结合起来获得状态表示vstv_{s_t}vst​​:

vst=W1(vu⊕vicf)+b1,(2)v_{s_t}=\mathbf{W}_1(v_u\oplus v_{i_{cf}})+\mathbf{b}_1,\tag{2}vst​​=W1​(vu​⊕vicf​​)+b1​,(2)

这里的W1∈Rd×2d\mathbf{W}_1\in \mathbb{R}^{d\times 2d}W1​∈Rd×2d,b1∈Rd\mathbf{b}_1\in \mathbb{R}^db1​∈Rd都是可学习的参数,⊕\oplus⊕是表示为连接操作。使用内积来计算属性实体eae_aea​和状态sts_tst​之间的分数:

p(ea,st)=(W2vea+b2)Tvst,(3)p(e_a,s_t)=(\textbf{W}_2 v_{e_a}+\textbf{b}_2)^T v_{s_t},\tag{3}p(ea​,st​)=(W2​vea​​+b2​)Tvst​​,(3)

这里的W2∈Rd×d\textbf{W}_2\in \mathbb{R}^{d\times d}W2​∈Rd×d,b2∈Rd\textbf{b}_2\in \mathbb{R}^db2​∈Rd都是可学习的参数。因此,施加一个softmax函数来归一化不同候选属性实体之间的分数。

这里的εi\varepsilon_iεi​是项目实体iii的邻居实体。

为了建模P(e~a∣st,ea)\mathbb{P}(\tilde{e}_a|s_t,e_a)P(e~a​∣st​,ea​),给定第一步选择的状态sts_tst​以及属性实体eae_aea​,使用如下得分函数来选择一个修改实体e~a\tilde{e}_ae~a​:

这里的W3∈Rd×d\textbf{W}_3\in \mathbb{R}^{d\times d}W3​∈Rd×d,b3∈Rd\textbf{b}_3\in \mathbb{R}^db3​∈Rd都是可学习参数。使用softmax计算最终的选择概率:

这里的εM\varepsilon_MεM​表示所有可能的修改实体的集合,这些实体都与目标实体eae_aea​拥有相同的联系类型,目标实体简写为项目iii。例如,给定元组<AVATAR, DIRECTED_BY, JAMES_CAMERON>,如果考虑到将AVATAR视为项目iii,将JAMES_CAMERON视为eae_aea​,那么我们将仅考虑其他的导演实体来替换JAMES_CAMERON。然而,εM\varepsilon_MεM​的大小常常是极大的,这将带来计算效率的问题。受到采样策略[37]、[46]的启发,作者设计了一个剪枝策略来保留高质量的探索。首先从εM\varepsilon_MεM​中随机采样一个子集,之后设计一个评分函数来选择潜在项目作为新的εM\varepsilon_MεM​,启发式地过滤掉无用的以及不相干的实体。衡量子集中用户嵌入vuv_uvu​和候选项目ve~av_{\tilde{e}_a}ve~a​​之间的相似度,然后正/负反事实生成器分别选择top-n的拥有最大/最小相似度分数的实体。这样,可以为目标用户生成更多的相关反事实交互。

这样可以产生策略π\piπ的修改操作的概率。

3.1.3 基于推荐的生成器奖励

为了有效地探索庞大的修改空间,并且生成高质量的反事实交互,作者对反事实生成器提出了两个要求。首先,生成器应该尽可能精确地发掘可能造成虚假联系的知识实体,而不是推荐结果的真实因果原因。然后,生成的反事实交互应该能给提供尽可能足够的信息来帮助消除虚假联系。考虑到这两方面,作者设计了两种基于推荐器反馈信号的奖励,来指导反事实交互的产生。

基于信息的奖励

第一种奖励是由信息瓶颈原则[30]启发,称为“基于信息的奖励”。信息瓶颈的本质[5]是对输入(x)、输出(y)以及输入的表示(z)之间的关系进行建模。旨在对精确性(I(z;y))以及压缩性(I(z;x))之间进行最优化的权衡。公式化如下:

这里的I(⋅)I(\cdot)I(⋅)表示两种随机变量的互信息,I(z;y)I(z;y)I(z;y)是一个表示精确性的项,I(z;x)I(z;x)I(z;x)是压缩项,β\betaβ是一个拉格朗日乘子。这样的损失函数试图通过尽可能地减少表示zzz中的无用信息来产生精确的预测[5]。

在作者的设定中,设输入特征x=(u,i)x=(u,i)x=(u,i),导出的表示z=(vu,vi)z=(v_u,v_i)z=(vu​,vi​),y∈{0,1}y\in \{0,1\}y∈{0,1}表示用户是否与项目iii进行了交互。当智能体根据等式(4)来选择“目标知识实体”时,可以通过移除这些“目标实体”来获得对应的项目表示viv_ivi​(见3.2.1)。然后,可以利用信息瓶颈,通过鼓励可以获得更好的项目表示的动作来指导修改过程。为了达成这一点,第一项I(z;y)I(z;y)I(z;y)应该被最大化,因为表示viv_ivi​拥有充足的信息来预测(u,i)(u,i)(u,i)交互的结果,第二项I(z;x)I(z;x)I(z;x)应该最小化,应为表示viv_ivi​应该足够精炼,来减少多余的以及不重要的知识图谱实体(这些实体可能造成虚假联系),并且保留真实的因果实体,这对导出信息的以及压缩的表示viv_ivi​是很有用的。最终,将基于信息的奖励更改为如下:

RIB∼I(z;y)−βI(z;x).(8)R_{IB}\sim I(z;y)-\beta I(z;x).\tag{8}RIB​∼I(z;y)−βI(z;x).(8)

因为直接计算I(z;y)I(z;y)I(z;y)和I(z;x)I(z;x)I(z;x)是很困难的,作者使用精确性项I(z;y)I(z;y)I(z;y)的下界以及压缩项I(z;x)I(z;x)I(z;x)的上界作为基于信息的奖励RIBR_{IB}RIB​。对于第一项,使用I(z;y)=Hp(y)−Hp(y∣z)I(z;y)=H_p(y)-H_p(y|z)I(z;y)=Hp​(y)−Hp​(y∣z),这里的H(⋅)H(\cdot)H(⋅)表示p(⋅)p(\cdot)p(⋅)的熵。因为Hp(y)H_p(y)Hp​(y)是一个常数,所以可以先忽略。更加深入地推导下界:

项q(y∣z)q(y|z)q(y∣z)是对p(y∣z)p(y|z)p(y∣z)的一个估计,本质为一个使用参数θ\thetaθ的分类器,参数为权重矩阵或者嵌入参数。因此可以使用交叉熵[

【SIGIR22】使用反事实生成器来消除知识感知推荐中的虚假联系相关推荐

  1. #今日论文推荐#WSDM 2022 | 基于双曲几何无标度图建模的知识感知推荐

    #今日论文推荐#WSDM 2022 | 基于双曲几何无标度图建模的知识感知推荐 为了缓解传统推荐系统中的冷启动与数据稀疏问题,近年来,向推荐系统中引入外部知识构建知识图谱受到了越来越多的关注.此外,由 ...

  2. 学习笔记:Towards Counterfactual Image Manipulation via CLIP 基于CLIP的反事实图像处理研究

    [ACM MM-2022] Towards Counterfactual Image Manipulation via CLIP 基于CLIP的反事实图像处理研究 1.背景 2. 方法 2.1 整体框 ...

  3. 因果推断 - 反事实

    目录 基础知识 案例实战 版权:转载前请联系作者获得授权. 声明:部分内容出自因果关系之梯,已获得原作者授权. 参考书籍:<The Book of Why>--Judea Pearl 基础 ...

  4. 梯度反传_反事实政策梯度解释

    梯度反传 Among many of its challenges, multi-agent reinforcement learning has one obstacle that is overl ...

  5. 反事实VQA论文阅读

    反事实VQA 数据集:VQA-CP,用于评估VQA模型的泛化能力.训练和测试数据分布不同. 弱化语言先验:使用单独的QA模块,在对抗训练或多任务学习中捕获语言先验. 如何在有偏训练下完成无偏的推断 基 ...

  6. 机器学习hierarchical clustering_ICLR 2020 | 反事实因果理论如何帮助深度学习?

    以深度学习为代表的表示机器学习取得了巨大的成功,尤其是在特征提取的能力方面.但是与此同时,一个巨大的问题是深度神经网络的黑箱问题和不稳定性问题.其中的一个根本原因,是基于相关性的统计模型容易学习到数据 ...

  7. 《因果学习周刊》第8期:因果反事实预测

    No.08 智源社区 因果学习组 因 果 学  习 研究 观点 资源 活动 关于周刊 因果学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

  8. 因果推断与反事实预测——盒马KDD2021的一篇论文(二十三)

    文章目录 1 已有研究者的描述 1.1 YuyangZhangFTD 1.1.1 Introduction 1.1.2 Problem Formulation 1.1.3 Counterfactual ...

  9. 快手+何向南团队最新论文Counterfactual Interactive Recommender System ,反事实推理融入离线强化学习,解决filter bubble/信息茧房问题

    论文名:CIRS: Bursting Filter Bubbles by Counterfactual Interactive Recommender System 目录 链接 1. 相关背景 1.1 ...

最新文章

  1. Fckeditor PHP/ASP File Upload Vul
  2. 单链表-逆置单链表(头插法且双指针)
  3. 递归与分治之棋盘覆盖问题
  4. 在WPF程序中使用多线程技术
  5. 从入门到精通:卷积神经网络初学者指南
  6. 为什么买入不了创业版_趋势波段买卖创业板ETF指数基金能轻松保险盈利
  7. 用C#读取数码相片的EXIF信息(一)
  8. potplayer如何添加m3u直播源_拼多多个人直播流量怎么来?直播如何添加个人商品...
  9. python turtle画彩虹简单_Python基础实例——绘制彩虹(turtle库的应用)
  10. 开发者工具——web前端助手
  11. html播放器滚动字幕,HTML 滚动字幕
  12. 山大计算机学院教务处,山东大学本科生院教务系统
  13. 算法题目打卡:Ques20201025
  14. 央行征信爬虫解决方案
  15. 锐捷睿易:acl的制定和应用
  16. JavaSE 实战 中奖判断
  17. PMP项目管理五大过程组
  18. 洛谷P1150 Peter的烟(逻辑建模)
  19. 10本好书读物推荐,职场管理者必读,建议收藏
  20. 【智慧农业】智能灌溉系统应用方案

热门文章

  1. matlab如何读取.mat文件,matlab中读取mat文件
  2. jupyter lab 插件安装及必备插件
  3. foxmail邮箱 邮件地址信息 以及邮件内容信息的导入导出
  4. NOJ1055叙拉古猜想——水题
  5. 阅读软件怎么添加书源_?软件智能化,傻瓜式运营,阅读10万+的影视解说到底是怎么做成的?...
  6. 未来五年最赚钱的不是股市、房地产,而是......
  7. Android NDK 概述(Android NDK Overview)
  8. Queue、Deque、LinkedList学习
  9. 接入GoogleAnalytics 统计
  10. 程序员常秃顶?Python创始人笑了,防脱发还得学这门语言,不然干脆转行得了