阅读笔记:《Causal Inference for Knowledge Graph based Recommendation》

论文

题目:《Causal Inference for Knowledge Graph based Recommendation》
由Yinwei Wei等人于2022年发表在了IEEE知识与数据工程汇刊,作者目前就职于新加坡国立大学计算机学院,这是第一次尝试通过因果关系来分析和优化基于知识图谱的推荐

摘要

以往的研究通常是将知识图谱作为侧信息,用来补充基于协同过滤的推荐模型,尽管这样做的效果很出色,但是没有做到对基于知识图谱中的属性进行用户偏好建模,主要是因为忽略了以下两点

  1. 知识图谱的结构信息可能会阻碍用户偏好的学习
  2. 用户的交互属性会导致相似性得分的偏差问题

作者构建了基于知识图谱中变量之间的因果关系,并且确定了导致上述两点出现的原因。并且基于此开发了基于知识图谱的因果推荐(Knowledge Graph-based Causal Recommendation,KGCR)模型。该模型主要有两个创新点,一是在学习用户偏好的时候使用了反混淆技术,二是采用了反事实推理来消除相似性评分的偏差。
最终在Amazon-book,LastFM, Yelp2018三个数据集上进行了广泛实验,证明了其比其他SOTA效果更好。

背景

知识图谱简介:
在这里插入图片描述

作者认为以往的基于知识图谱的推荐都无法对知识图谱中的属性实体的细粒度用户偏好进行建模。在真实的场景中,人们倾向于选择一些特定属性的物品,例如,有人可能会因为导演而观看电影,或者因为品牌而购买鞋子。如下图1所示,用户对通过电影《异形2》互动的Fiction、Michael Biehn和James Cameron属性的偏好严重影响了《时光骇客》和《泰坦尼克号》的推荐。现有的模型,如KGAT和KGIN,似乎可以从她/他的交互属性(用户通过物品交互的属性的简称)中学习细粒度的用户偏好,并对用户和物品表示之间的相似性进行评分。然而,他们面临着以下两个挑战:

  1. 知识图谱的结构信息阻碍了用户偏好在属性实体上的表示(通俗易懂的来说,就是知识图谱的结构并不能很好地表示用户更加喜欢哪个属性)。这是因为结构信息决定了哪些属性与物品相关联,以及这些属性(例如,小说,迈克尔·比恩和詹姆斯·卡梅隆)如何与物品(例如,异形II)纠缠在一起。仅仅依靠用户与物品的交互,很难区分用户对这些不同属性的偏好,这不可避免地影响了用户对属性的偏好学习。因此,如何利用用户与物品的交互来了解用户对属性的偏好是面临的第一个挑战。
  2. 用户的交互属性会导致相似度得分的偏差问题,可能会在训练阶段提供不准确的监督信号。具体来说,用户交互属性中暴露的属性越多的项目得分越高。在图1所示的同一样本中,迈克尔·比恩(Michael Biehn)饰演的虚构电影《时光骇客》的得分可能高于詹姆斯·卡梅隆(James Cameron)执导的《泰坦尼克号》(Titanic)。因为这些属性为《时光骇客》提供了更多快捷方式(用蓝色曲线表示),从而绕过了用户对James Cameron的偏好(用红色曲线表示)。因此,如何消除相似性分数的偏差是另一个关键挑战。

图1
作者尝试用因果推断的原理来解释这两种挑战产生的原因。构建了一个因果图来模拟相似性评分的因果因素,如下图2所示:

  • K:描述用户观察到的item的结构信息
  • A:用户交互属性
  • U:基于属性的用户偏好
  • S:用户-物品对于基于属性的相似度评分
  • I:以属性为特征的物品表示

在因果图中,K→A说明结构信息决定了用户的交互属性A, K→U反映了用户观察到的属性纠缠。显然,K作为混杂因素,开辟了一条后门路径U←K→A,导致用户偏好与交互属性之间的虚假关系。为了减少其负面影响,作者对因果图进行干预操作,并设计了一个基于知识图的因果推荐(KGCR)模型,该模型实现了反混淆的用户偏好学习,并对用户-物品相似度评分进行建模。(去掉了知识图谱结构的影响,直接考虑用户交互属性对于用户偏好的影响)
对于相似性评分中的偏差问题,作者将其归因于A对S的直接影响。交互属性(A)为预测用户-物品交互提供了一条捷径,绕过了用户对属性U的偏好。因此,我们采用反事实推理来消除A→S造成的偏差。作者估计了事实世界中相似性得分的总效应(total effect, TE)和反事实世界中交互属性对相似性得分的自然直接效应(natural direct effect, NDE)。此后,可以在推理阶段将NDE从TE中移除,以回答以下问题:如果仅根据属性获得用户和项目表示,那么得分S将是多少。(仅考虑基于属性的用户偏好以及物品表示,而不考虑交互属性的情况)

在这里插入图片描述

方法论

关键的定义列出来方便查看:
在这里插入图片描述

问题建模

基于协同过滤的推荐模型: S u i c f = f c f ( u c f , i c f ) (1) S_{ui}^{cf} = f_{cf}({\bf{u}}_{cf},{\bf{i}}_{cf}) \tag{1} Suicf=fcf(ucf,icf)(1)
S u i c f S_{ui}^{cf} Suicf为u与i交互的预测得分,基于协同过滤标志来衡量用户u与物品i交互的可能性,分数函数 f c f f_{cf} fcf可以用内积或神经网络来实现。
知识图谱表示: G k g = { ( h , r , t ) ∣ h , t ∈ ε , r ∈ R } (2) G_{kg} = \{(h,r,t)|h,t \in \varepsilon,r\in R\}\tag{2} Gkg={(h,r,t)h,tε,rR}(2)
ε \varepsilon ε是实体的集合, R R R是关系的集合,每个三元组描述了从头部实体h到尾部实体t之间的关系r。通过将项目映射到知识图谱的实体中,可以将从知识图谱中学到的外部知识注入到用户和项目的表示中。
基于属性计算的相似性得分: S u , i , a = f ( u , i ) , w h e r e u = U ( O u + , G k g ) (3) S_{u,i,a} = f({\bf{u,i}}),where {\bf{u}}=U(O^+_u,G_{kg})\tag{3} Su,i,a=f(u,i),whereu=U(Ou+,Gkg)(3)
S u , i , a S_{u,i,a} Su,i,a是用户与物品的相似度分数, f ( ) , U ( ) f(),U() f(),U()分别是相似度评分函数和用户偏好建模函数。 O u + O^+_u Ou+是用户u与物品的历史交互集合, G k g G_{kg} Gkg是知识图谱。
本文的任务可以描述为:
输入:用户-物品的历史交互集合和知识图谱
输出:由协同过滤模型计算得到的 S u i c f S_{ui}^{cf} Suicf和基于属性的相似性得分 S u , i , a S_{u,i,a} Su,i,a整合得到的用户项目交互预测 y u i y_{ui} yui

具体方法论

backdoor adjustment

在这里插入图片描述
采用了因果推断中常用的反混淆手段,do运算来执行后门调整,来消除K对A的影响,解决挑战1。

  • K:描述用户观察到的item的结构信息
  • A:用户交互属性
  • U:基于属性的用户偏好
  • S:用户-物品对于基于属性的相似度评分
  • I:以属性为特征的物品表示

核心理论公式:
S u , i , a = P ( S ∣ U = u , I = i , d o ( A = a ) ) = ∑ k ∈ K P ( S ∣ U ( a , k ) , i , a ) P ( k ) (4) \begin{align*} S_{u,i,a} &= P(S|U={\bf{u}},I={\bf{i}},do(A={\bf{a}})) \\ &= \sum_{k\in K}{P(S|U({\bf{a,k}}),{\bf{i,a}})P({\bf{k}})} \end{align*}\tag{4} Su,i,a=P(SU=u,I=i,do(A=a))=kKP(SU(a,k),i,a)P(k)(4)
其中 P ( k ) = { P ( k 1 ) , … , P ( k K ′ ) } P({\bf{k}})=\{P({\bf{k_1}}),\ldots,P({\bf{k_{K'}}}) \} P(k)={ P(k1),,P(kK)}反映了用户观察到的物品与其结构信息相关联的可能性, U ( ⋅ ) U(\cdot) U()根据用户的交互属性和项的结构信息输出用户偏好的表示

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值