目录
- 1. Introduction
- 2. Related Work
- 2.1 基于GNN的推荐
- 2.2 逆倾向评分IPS
- 3. 模型
- 3.1 Navip
- 4. 实验结果
本文是亚马逊在CIKM 2022的一篇工作
论文地址:https://arxiv.org/pdf/2208.08847.pdf
问题
图形神经网络(GNN)对于曝光偏差的脆弱性导致模型偏差,产生次优推荐效果。
之前工作的不足
只在损失函数中应用IPS,但对GNN的邻域聚合关注较少,GNN 在相邻聚合过程中也可能产生偏差
解决方法
通过 GNN 的逆倾向 (Navip) 进行邻居聚合。首先导出图中每个用户-项目交互的倾向得分。然后利用拉普拉斯归一化的倾向得分反演方法去除暴露偏差对邻域聚集的影响(对不流行的邻居赋予更大的权重,以平衡有偏局部结构)。
效果
通过在两个公共数据集和 Amazon Alexa 数据集上进行的实验,验证了该方法的有效性,其性能提高了14.2%
补充资料
【论文笔记】ICML2016 & Cornell | (IPS-MF) Recommendations as treatments: Debiasing learning and evaluation_的博客-CSDN博客
1. Introduction
协同过滤忽略了节点之间的连接(提供了关于user和item之间相似性的丰富信息)。结合GNN通过聚集相邻节点之间的信息来补充嵌入。
如图1(a)所示,真实世界的数据采集会有偏差,导致出现biased edge,注意这里不是关注的误点击等噪声问题,文章关注的是曝光偏差(Exposure Bias),系统只向用户公开部分item,导致user-item交互的产生收到系统推荐策略的影响,进而GNN会导致user偏好的偏见,这种偏见是与用户真正的策略不一致的。
减轻暴露偏差的常见方法是逆向倾向评分 (Inverse Propensity Scoring, IPS)
具体来说,IPS 乘以目标函数中用户-项目交互的逆倾向性,从而加重了对暴露较少的项目的学习。然而,由于 IPS 处理的是 GNN 编码用户和项目嵌入后的偏差问题,系统仍然容易受到未调整的邻居聚合过程所引起的偏差的影响。
2. Related Work
推荐系统基于收集的用户-商品交互数据{(u,i,Yu,i)}∈Dπ0\left\{\left(u, i, Y_{u, i}\right)\right\} \in \mathcal{D}_{\pi_{0}}{(u,i,Yu,i)}∈Dπ0,找到相似的用户和商品,进行个性化推荐,这被称为协同过滤。
给定一个推荐模型ϕ(⋅)\phi(\cdot)ϕ(⋅),基于user和item的embedding,最小化隐式反馈 的经验风险,公式如下:
R(π0)=∑(u,i,Yu,i)∈Dπ0L(ϕ(hu,hi),Yu,i)R\left(\pi_{0}\right)=\sum_{\left(u, i, Y_{u, i}\right) \in \mathcal{D}_{\pi_{0}}} \mathcal{L}\left(\phi\left(h_{u}, h_{i}\right), Y_{u, i}\right) R(π0)=(u,i,Yu,i)∈Dπ0∑L(ϕ(hu,hi),Yu,i)其中,L\mathcal{L}L是损失函数比如BPR,Yu,iY_{u,i}Yu,i如果user和item有交互为1,否则为0.
2.1 基于GNN的推荐
与传统 CF 方法的最大区别在于,GNN在目标节点表征的训练过程中显式地利用了目标节点的邻居。用户uuu在第lll层的embedding计算公式:
hul=TRANSFORM(hul−1,aul)aul=AGGREGATE(hil−1,i∈N(u))\begin{array}{l} h_{u}^{l}=\operatorname{TRANSFORM}\left(h_{u}^{l-1}, a_{u}^{l}\right) \\ a_{u}^{l}=\operatorname{AGGREGATE}\left(h_{i}^{l-1}, i \in \mathcal{N}(u)\right) \end{array} hul=TRANSFORM(hul−1,aul)aul=AGGREGATE(hil−1,i∈N(u))
代表性模型LightGCN的聚合传播方式:
hul=aul=∑i∈N(u)hil−1∣N(u)∣∣N(i)∣h_{u}^{l}=a_{u}^{l}=\sum_{i \in \mathcal{N}(u)} \frac{h_{i}^{l-1}}{\sqrt{|\mathcal{N}(u)||\mathcal{N}(i)|}} hul=aul=i∈N(u)∑∣N(u)∣∣N(i)∣hil−1
2.2 逆倾向评分IPS
参考:【论文笔记】ICML2016 | (IPS-MF) Recommendations as treatments: Debiasing learning and evaluation_的博客-CSDN博客
Exposure Bias,曝光偏差
发生原因是用户只接触到特定项目的一部分,未观察到的交互并不总是代表消极偏好。通过推荐模型ϕ(⋅)\phi(\cdot)ϕ(⋅)后继续存在偏差,为此,用IPS方法,用倾向评分加权Dπ0\mathcal{D}_{\pi_{0}}Dπ0,获得无偏的估计R(π)R(\pi)R(π):
R^(π;Dπ0)=1∣Dπ0∣∑(u,i,Yu,i)∈Dπ0L(ϕ(hu,hi),Yu,i)p(Yu,i=1∣π0)\hat{R}\left(\pi ; \mathcal{D}_{\pi_{0}}\right)=\frac{1}{\left|\mathcal{D}_{\pi_{0}}\right|} \sum_{\left(u, i, Y_{u, i}\right) \in \mathcal{D}_{\pi_{0}}} \frac{\mathcal{L}\left(\phi\left(h_{u}, h_{i}\right), Y_{u, i}\right)}{p\left(Y_{u, i}=1 \mid \pi_{0}\right)} R^(π;Dπ0)=∣Dπ0∣1(u,i,Yu,i)∈Dπ0∑p(Yu,i=1∣π0)L(ϕ(hu,hi),Yu,i)
(注:IPS-MF这篇文章针对的是选择偏差 Selection Bias,本文说的是Exposure Bias,二者应该是两种不同的Bias,之后再思考)
本文作者注意到,以往只在损失函数中应用IPS,但对GNN的邻域聚合关注较少。更糟糕的是,由于GNN的叠加,偏差数据还会传播到user没有偏差的交互。
3. 模型
3.1 Navip
Navip,neighbor aggregation via inverse propensity,通过逆倾向的邻居聚合
Navip的基本思想是:在聚合过程中,对低倾向的交互赋予更大的权重,而对具有高倾向的交互赋予更小的权重。
之所以这么做是基于以下的考虑:
- 具有较低交互倾向的邻居更多地揭示了用户的兴趣,因为带有偏见的推荐策略可能导致了低交互
- 具有高倾向性的交互,通常作为对带有偏见的推荐策略的响应而发生,可能不是真正的用户交互
用户uuu在系统策略π\piπ下的邻域聚合:
aul(π)≈1∣Nπ(u)∣∑i∈Nπ(u)hil−1(π)=aul(π∣Dπ)a_{u}^{l}(\pi) \approx \frac{1}{\left|\mathcal{N}_{\pi}(u)\right|} \sum_{i \in \mathcal{N}_{\pi}(u)} h_{i}^{l-1}(\pi)=a_{u}^{l}\left(\pi \mid \mathcal{D}_{\pi}\right) aul(π)≈∣Nπ(u)∣1i∈Nπ(u)∑hil−1(π)=aul(π∣Dπ)
结合倾向性分数,可以得到Navip对aul(π)a_{u}^{l}(\pi)aul(π)的估计:
aul(π)≈1∣Nπ0(u)∣∑i∈Nπ0(u)hil−1(π)p(Yu,i=1∣π0)=aul(π∣Dπ0)a_{u}^{l}(\pi) \approx \frac{1}{\left|\mathcal{N}_{\pi_{0}}(u)\right|} \sum_{i \in \mathcal{N}_{\pi_{0}}(u)} \frac{h_{i}^{l-1}(\pi)}{p\left(Y_{u, i}=1 \mid \pi_{0}\right)}= a_{u}^{l}\left(\pi \mid \mathcal{D}_{\pi_{0}}\right) aul(π)≈∣Nπ0(u)∣1i∈Nπ0(u)∑p(Yu,i=1∣π0)hil−1(π)=aul(π∣Dπ0)
但是因为权重大小未归一化,使用逆倾向会导致数值不稳定问题。为了避免这个问题,通过替换1∣Nπ0(u)∣\frac{1}{\left|\mathcal{N}_{\pi_{0}}(u)\right|}∣Nπ0(u)∣1进一步归一化邻居聚合:
1Zπ(u)∑i∈Nπ0(u)hil−1(π)p(Yu,i=1∣π0)=aul(π∣Dπ0)Zπ0(u)=∑i∈Nπ0(u)1p(Yu,i=1∣π0)\frac{1}{Z_{\pi}(u)} \sum_{i \in \mathcal{N}_{\pi_{0}}(u)} \frac{h_{i}^{l-1}(\pi)}{p\left(Y_{u, i}=1 \mid \pi_{0}\right)}=a_{u}^{l}\left(\pi \mid \mathcal{D}_{\pi_{0}}\right) \\ Z_{\pi_{0}}(u) = \sum_{i \in \mathcal{N}_{\pi_{0}}(u)} \frac{1}{p\left(Y_{u, i}=1 \mid \pi_{0}\right)} Zπ(u)1i∈Nπ0(u)∑p(Yu,i=1∣π0)hil−1(π)=aul(π∣Dπ0)Zπ0(u)=i∈Nπ0(u)∑p(Yu,i=1∣π0)1
连接到拉普拉斯算子,Navip的邻域聚合以矩阵形式表示:
Πu,i={1P(Yu,i=1∣π0)if Yu,i=10else ,Λ=[0ΠΠ⊤0.]\begin{aligned} \Pi_{u, i} &=\left\{\begin{array}{ll} \frac{1}{P\left(Y_{u, i}=1 \mid \pi_{0}\right)} & \text { if } \quad Y_{u, i}=1 \\ 0 & \text { else }, \end{array}\right.\\ \Lambda &=\left[\begin{array}{cc} 0 & \Pi \\ \Pi^{\top} & 0 . \end{array}\right] \end{aligned} Πu,iΛ={P(Yu,i=1∣π0)10 if Yu,i=1 else ,=[0Π⊤Π0.]加权随机游走拉普拉斯算子可以表示为:
Al(π0∣Dπ)=D−1ΛHl(π0)A^{l}\left(\pi_{0} \mid \mathcal{D}_{\pi}\right)=D^{-1} \Lambda H^{l}\left(\pi_{0}\right) Al(π0∣Dπ)=D−1ΛHl(π0)其中,AlA^lAl和HlH^lHl分别是邻居和节点的embedding,Λ\LambdaΛ表示邻接矩阵,DDD为度矩阵
4. 实验结果
通过在两个公共数据集和 Amazon Alexa 数据集上进行的大量实验,论文验证了该方法的有效性,其性能提高了14.2%